Tizen 2.0 Release tizen_2.0 accepted/tizen_2.0/20130215.205241 submit/tizen_2.0/20130215.191634
authorHyungKyu Song <hk76.song@samsung.com>
Fri, 15 Feb 2013 15:09:14 +0000 (00:09 +0900)
committerHyungKyu Song <hk76.song@samsung.com>
Fri, 15 Feb 2013 15:09:14 +0000 (00:09 +0900)
98 files changed:
ChangeLog
INSTALL
Makefile.am
Makefile.in
README
aclocal.m4
config.h.in
config/config.guess
config/config.sub
config/depcomp
config/install-sh
config/missing
configure
configure.ac
doc/Makefile.am
doc/Makefile.in
doc/fuser.1
doc/killall.1
doc/peekfd.1
doc/prtstat.1 [new file with mode: 0644]
doc/pstree.1
icons/Makefile.in
packaging/psmisc.manifest [new file with mode: 0644]
packaging/psmisc.spec
po/LINGUAS
po/POTFILES.in
po/bg.gmo
po/bg.po
po/ca.gmo
po/ca.po
po/cs.gmo [new file with mode: 0644]
po/cs.po [new file with mode: 0644]
po/da.gmo [new file with mode: 0644]
po/da.po [new file with mode: 0644]
po/de.gmo
po/de.po
po/el.gmo [new file with mode: 0644]
po/el.po [new file with mode: 0644]
po/eo.gmo [new file with mode: 0644]
po/eo.po [new file with mode: 0644]
po/eu.gmo
po/eu.po
po/fi.gmo
po/fi.po
po/fr.gmo
po/fr.po
po/hr.gmo [new file with mode: 0644]
po/hr.po [new file with mode: 0644]
po/hu.gmo
po/hu.po
po/id.gmo [new file with mode: 0644]
po/id.po [new file with mode: 0644]
po/it.gmo
po/it.po
po/ja.gmo
po/ja.po
po/nb.gmo
po/nb.po
po/nl.gmo
po/nl.po
po/pl.gmo
po/pl.po
po/psmisc.pot
po/pt.gmo
po/pt.po
po/pt_BR.gmo [new file with mode: 0644]
po/pt_BR.po [new file with mode: 0644]
po/ro.gmo
po/ro.po
po/ru.gmo
po/ru.po
po/sr.gmo [new file with mode: 0644]
po/sr.po [new file with mode: 0644]
po/sv.gmo
po/sv.po
po/uk.gmo [new file with mode: 0644]
po/uk.po [new file with mode: 0644]
po/vi.gmo
po/vi.po
po/zh_CN.gmo
po/zh_CN.po
po/zh_TW.gmo [new file with mode: 0644]
po/zh_TW.po [new file with mode: 0644]
src/Makefile.am
src/Makefile.in
src/comm.h
src/fuser.c
src/fuser.h
src/killall.c
src/lists.h [new file with mode: 0644]
src/peekfd.c
src/prtstat.c [new file with mode: 0644]
src/prtstat.h [new file with mode: 0644]
src/pstree.c
src/timeout.c [new file with mode: 0644]
src/timeout.h [new file with mode: 0644]
testsuite/Makefile.am [new file with mode: 0644]
testsuite/Makefile.in [new file with mode: 0644]

index 26e6b68..befbfa2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,187 @@
-Changes in ??
-=============
+Changes in 22.20
+================
+       * pstree sorts properly on names Debian #682014
+       * fuser -m regresion fixed SF #3559232, thanks to hanpt
+       * pstree finds orphaned processes SF#3537508
+       * fuser finds unix sockets again SF #3502649
+       * pstree finds pid 0 stops looping Debian #687829
+
+Changes in 22.19
+================
+       * killall with no args exits again SF #3536526
+
+Changes in 22.18
+================
+       * Added AC_CANONICAL_TARGET for target_os Debian #673485
+       * sed doesn't have [0-9]+ replace with [0-9][0-9]*
+       * assert in killall triggered for small lifetimes Debian #628617
+       * killall MAX_NAMES off by one Debian #677428
+       * Removed remaining parts of pidof
+
+Changes in 22.17
+================
+       * Make it possible to use --enable-timeout-stat as well as
+         --enable-timeout-stat=static for a static background process which
+         does the final stat system calls
+       * Do not mix HAVE_TIMEOUT_STAT with WITH_TIMEOUT_STAT
+       * Add timeout.c/timeout.h for static background process which is able
+         to read the file name from pipe, does the stat(2) system call, and
+         writes the result back to a pipe.
+       * Really add ASCII null at command string in add_proc() of pstree.c
+       * fuser uses correct timeout_stat define Debian #661723
+       * fuser is not compiled on hurd-i386 Debian #673485
+       * No TEXTRELS in src/lists built as PIE on x86
+       * Fake pstree root for kernels with hidepid turned on
+       * More fixes for Cygwin SF Patch #3511920
+       * pstree can show PGIDs SF Patch #3471056
+
+Changes in 22.16
+================
+       * Use strncpy for COMM_LEN and make it 18 characters to cover brackets
+         in name.
+       * don't change COMM_LEN, it breaks matching long commands
+         Debian #661145
+       * Enable some harden AM_CFLAGS by default, use configure option
+         --disable-harden-flags to not use it.
+
+Changes in 22.15
+================
+       * Really apply patch for SF#31110178 RH#651794, SF#3317431
+       * Conditionally use fork before stat calls SF#3427522
+       * Patch from Corrina Vinschen for compiling on cygwin
+       * Use ENOENT not EBADE for FreeBSD Debian #631566
+       * Fix prstat typos
+       * Stop zombies by using waitpid Ubuntu #876387 by Peter Holik, SF#3429674
+       * Fixed minor older/younger typo in killall.1 thanks to Maikel Linke
+       * Remove doubled content in src/lists.h
+       * Add another 2 for thread brackets in pstree.c
+       * Correct defines for timeout in configure.ac
+
+Changes in 22.14
+================
+       * Fix file descriptor as well as memory leaks in fuser
+       * Strip @ symbol from file names read from /proc/net/unix
+       * Above 2 changes close openSuSE bugs #536209, #529520, and #417841
+         and provided by Werner Fink
+       * Applied patch from Werner Fink to avoid stat(2) on NFS mounts
+       * Zeros process group memory - Patch by jgorig SF#3152925 RH#666213
+       * fuser -m -s flags work - Patch by jgorig SF#31110178 RH#651794
+       * fuser silent if /proc/swaps not available SF#3072134
+       * ppc 64 support for peekfd by jgorig SF#3166444
+       * jiffies now ULL in killall SF#3138538
+       * pstree can show parents of a process. Patch supplied by Curtis
+         Hawthorne SF#3135157
+       * killall creates right size buffer instead of MAX_PATH Debian #623425
+       * check for /proc/$$/stat not /proc/self/stat which is not available
+         on hurd platforms. Same Debian bug as above
+       * fuser understands IPv6 addresses, removed comment in fuser.1 that it
+         doesn't Debian #609904
+       * fuser -k only returns 0 if you kill something.
+       * fuser doesn't complain if /proc/#/fd disappears SF#3310990
+
+Changes in 22.13
+================
+       * configure patch for x86_64 properly applied SF#3029302 by snowman123
+       * patch configure so pt_regs isn't used on SuperH. Fix by
+         Nobuhiro Iwamatsu in Debian #588986
+       * Fixed configure.ac so only mipsel not mips compiles peekfd
+
+Changes in 22.12
+================
+       * In fuser, switched the ipv6 and ipv4 checks around Debian #581604
+       * peekfd configure patch for x86_64 SF#2986027
+       * peekfd works with ARM and MIPS thanks to patch by Arnaud Patard
+       * peekfd off-by-one patch applied SF#1948351
+       * pstree -a doesn't segfault on grsec kernels Debian #588152
+
+Changes in 22.11
+================
+       * Another attempted at killall -SIGNAME Debian #573924
+
+Changes in 22.10
+================
+       * fuser -k -m ... won't kill itself Debian #562767
+       * fuser -NAME fixed SF #2924691, Debian #563388, Gentoo #297423
+       * Added locale.h include for killall on non NLS SF #2922163
+       * Reversed normal file fuser -k check Debian #563387
+
+Changes in 22.9
+===============
+       * short option l returned in fuser Debian #539087
+       * long options terminated with 0s Debian #551833
+       * fuser only kills normal processes, patch thanks to Erik Li SF# 2892724
+       * New fuser -M if you REALLY want mount points, patch thanks to
+         Jeremie LE HEN SF#2899709
+       * Fixed killall options for VTALRM and ILL Debian #559011
+       * pstree -a does not compact threads Debian #525632
+       * new program prtstat which prints contents of /proc/<pid>/stat 
+         Debian #281706
+       * killall restricts by date. Thanks to George Danchev Debian #544657
+       * long options terminated in pstree too to stop segfault
+       * Re-worked fuser getopt again so -KILL options work Gentoo #297423
+       * Fix off-by-one overflow in pstree SF# 2832375
+
+Changes in 22.8
+===============
+       * Added Czech PO file
+       * rc1 update of Italian, Polish, Indonesian, Swedish and Russian PO files
+       * Updated Finnish, Italian and Vietnamese PO files
+       * Applied patch from Kari Hautio for lazy umount'ed filesystems SF#2545632
+       * Applied patch from Anonymous SF submitter to fix killall -l
+         Fixes SF#2002570
+       * fuser will print mounts,nfs exports and swaps with -v Debian #356655
+         and SF#533958
+       * pstree and fuser have long options Debian #517412
+       * Fixed pstree -a off-by-one error in buffer, Debian #536243
+       * Changed configure.ac to not use CXX SF# 2789801
+
+Changes in 22.7
+===============
+2009-05-04 Craig Small
+       * Updated Polish, Russian, Swedish and Indonesian PO files
+
+2009-04-26 Craig Small
+       * Changed fuser.1 so signal is SIGNAL to reduce confusion about wether
+         or not it is a parameter Debian #517413
+       * fuser.1 references pkill(1) Debian #517414
+
+2009-03-27 Craig Small
+       * Added Chinese (traditional) PO file
+
+2009-01-14 Craig Small
+       * Updated Russian PO file
+       * Clarified -m and -c for fuser Debian #467289
+
+2008-12-16 Craig Small
+       * Patch from Arnaud Giersch to fix udp ports in fuser Debian #502208
+       * pstree man page mentions -Z may not be available Debian #478327
+       * pstree handles UTF-8 lengths much better Debian #413503
+       * killall says no process found when process not found Debian #500097
+       * pstree makes a bigger buffer for -al flags Debian #352603
+
+2008-12-05 Craig Small
+       * Dynamically reallocate buffer for fuser patch from Don Armstrong
+
+2008-11-11 Craig Small
+       * Updated Indonesian PO file
+
+2008-08-09 Craig Small
+       * peekfd off by one problem in fds Debian #460530
+
+2007-11-19 Craig Small
+       * Patch from Marcus Watts for better comm handling in pstree
+       * Updated Hungarian po file
+
+2007-11-13 Craig Small
+       * Updated French and German po files
+       * Fuser -m detects more open sockets SF patch #1728412 Thnks marienz
+
+2007-11-07 Craig Small
+       * Updated Italian, Chinese simplified, Dutch, Swedish and Polish po files
+       * Removed old fuser
+
+Changes in 22.6
+===============
 2007-08-09 Craig Small
        * killall.1 mentions you can use -SIGxxx as well as just -XXX for signal
          Debian #431082
diff --git a/INSTALL b/INSTALL
index 56b077d..a1e89e1 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,16 +1,25 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
-Software Foundation, Inc.
+Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
+Inc.
 
-This file is free documentation; the Free Software Foundation gives
-unlimited permission to copy, distribute and modify it.
+   Copying and distribution of this file, with or without modification,
+are permitted in any medium without royalty provided the copyright
+notice and this notice are preserved.  This file is offered as-is,
+without warranty of any kind.
 
 Basic Installation
 ==================
 
-These are generic installation instructions.
+   Briefly, the shell commands `./configure; make; make install' should
+configure, build, and install this package.  The following
+more-detailed instructions are generic; see the `README' file for
+instructions specific to this package.  Some packages provide this
+`INSTALL' file but do not implement all of the features documented
+below.  The lack of an optional feature in a given package is not
+necessarily a bug.  More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
 
    The `configure' shell script attempts to guess correct values for
 various system-dependent variables used during compilation.  It uses
@@ -23,9 +32,9 @@ debugging `configure').
 
    It can also use an optional file (typically called `config.cache'
 and enabled with `--cache-file=config.cache' or simply `-C') that saves
-the results of its tests to speed up reconfiguring.  (Caching is
+the results of its tests to speed up reconfiguring.  Caching is
 disabled by default to prevent problems with accidental use of stale
-cache files.)
+cache files.
 
    If you need to do unusual things to compile the package, please try
 to figure out how `configure' could check whether to do them, and mail
@@ -35,30 +44,37 @@ some point `config.cache' contains results you don't want to keep, you
 may remove or edit it.
 
    The file `configure.ac' (or `configure.in') is used to create
-`configure' by a program called `autoconf'.  You only need
-`configure.ac' if you want to change it or regenerate `configure' using
-a newer version of `autoconf'.
+`configure' by a program called `autoconf'.  You need `configure.ac' if
+you want to change it or regenerate `configure' using a newer version
+of `autoconf'.
 
-The simplest way to compile this package is:
+   The simplest way to compile this package is:
 
   1. `cd' to the directory containing the package's source code and type
-     `./configure' to configure the package for your system.  If you're
-     using `csh' on an old version of System V, you might need to type
-     `sh ./configure' instead to prevent `csh' from trying to execute
-     `configure' itself.
+     `./configure' to configure the package for your system.
 
-     Running `configure' takes awhile.  While running, it prints some
-     messages telling which features it is checking for.
+     Running `configure' might take a while.  While running, it prints
+     some messages telling which features it is checking for.
 
   2. Type `make' to compile the package.
 
   3. Optionally, type `make check' to run any self-tests that come with
-     the package.
+     the package, generally using the just-built uninstalled binaries.
 
   4. Type `make install' to install the programs and any data files and
-     documentation.
-
-  5. You can remove the program binaries and object files from the
+     documentation.  When installing into a prefix owned by root, it is
+     recommended that the package be configured and built as a regular
+     user, and only the `make install' phase executed with root
+     privileges.
+
+  5. Optionally, type `make installcheck' to repeat any self-tests, but
+     this time using the binaries in their final installed location.
+     This target does not install anything.  Running this target as a
+     regular user, particularly if the prior `make install' required
+     root privileges, verifies that the installation completed
+     correctly.
+
+  6. You can remove the program binaries and object files from the
      source code directory by typing `make clean'.  To also remove the
      files that `configure' created (so you can compile the package for
      a different kind of computer), type `make distclean'.  There is
@@ -67,65 +83,120 @@ The simplest way to compile this package is:
      all sorts of other programs in order to regenerate files that came
      with the distribution.
 
+  7. Often, you can also type `make uninstall' to remove the installed
+     files again.  In practice, not all packages have tested that
+     uninstallation works correctly, even though it is required by the
+     GNU Coding Standards.
+
+  8. Some packages, particularly those that use Automake, provide `make
+     distcheck', which can by used by developers to test that all other
+     targets like `make install' and `make uninstall' work correctly.
+     This target is generally not run by end users.
+
 Compilers and Options
 =====================
 
-Some systems require unusual options for compilation or linking that the
-`configure' script does not know about.  Run `./configure --help' for
-details on some of the pertinent environment variables.
+   Some systems require unusual options for compilation or linking that
+the `configure' script does not know about.  Run `./configure --help'
+for details on some of the pertinent environment variables.
 
    You can give `configure' initial values for configuration parameters
 by setting variables in the command line or in the environment.  Here
 is an example:
 
-     ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+     ./configure CC=c99 CFLAGS=-g LIBS=-lposix
 
    *Note Defining Variables::, for more details.
 
 Compiling For Multiple Architectures
 ====================================
 
-You can compile the package for more than one kind of computer at the
+   You can compile the package for more than one kind of computer at the
 same time, by placing the object files for each architecture in their
-own directory.  To do this, you must use a version of `make' that
-supports the `VPATH' variable, such as GNU `make'.  `cd' to the
+own directory.  To do this, you can use GNU `make'.  `cd' to the
 directory where you want the object files and executables to go and run
 the `configure' script.  `configure' automatically checks for the
-source code in the directory that `configure' is in and in `..'.
+source code in the directory that `configure' is in and in `..'.  This
+is known as a "VPATH" build.
+
+   With a non-GNU `make', it is safer to compile the package for one
+architecture at a time in the source code directory.  After you have
+installed the package for one architecture, use `make distclean' before
+reconfiguring for another architecture.
 
-   If you have to use a `make' that does not support the `VPATH'
-variable, you have to compile the package for one architecture at a
-time in the source code directory.  After you have installed the
-package for one architecture, use `make distclean' before reconfiguring
-for another architecture.
+   On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple `-arch' options to the
+compiler but only a single `-arch' option to the preprocessor.  Like
+this:
+
+     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+                 CPP="gcc -E" CXXCPP="g++ -E"
+
+   This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the `lipo' tool if you have problems.
 
 Installation Names
 ==================
 
-By default, `make install' will install the package's files in
-`/usr/local/bin', `/usr/local/man', etc.  You can specify an
-installation prefix other than `/usr/local' by giving `configure' the
-option `--prefix=PREFIX'.
+   By default, `make install' installs the package's commands under
+`/usr/local/bin', include files under `/usr/local/include', etc.  You
+can specify an installation prefix other than `/usr/local' by giving
+`configure' the option `--prefix=PREFIX', where PREFIX must be an
+absolute file name.
 
    You can specify separate installation prefixes for
 architecture-specific files and architecture-independent files.  If you
-give `configure' the option `--exec-prefix=PREFIX', the package will
-use PREFIX as the prefix for installing programs and libraries.
-Documentation and other data files will still use the regular prefix.
+pass the option `--exec-prefix=PREFIX' to `configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
 
    In addition, if you use an unusual directory layout you can give
 options like `--bindir=DIR' to specify different values for particular
 kinds of files.  Run `configure --help' for a list of the directories
-you can set and what kinds of files go in them.
+you can set and what kinds of files go in them.  In general, the
+default for these options is expressed in terms of `${prefix}', so that
+specifying just `--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
+
+   The most portable way to affect installation locations is to pass the
+correct locations to `configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+`make install' command line to change installation locations without
+having to reconfigure or recompile.
+
+   The first method involves providing an override variable for each
+affected directory.  For example, `make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+`${prefix}'.  Any directories that were specified during `configure',
+but not in terms of `${prefix}', must each be overridden at install
+time for the entire installation to be relocated.  The approach of
+makefile variable overrides for each directory variable is required by
+the GNU Coding Standards, and ideally causes no recompilation.
+However, some platforms have known limitations with the semantics of
+shared libraries that end up requiring recompilation when using this
+method, particularly noticeable in packages that use GNU Libtool.
+
+   The second method involves providing the `DESTDIR' variable.  For
+example, `make install DESTDIR=/alternate/directory' will prepend
+`/alternate/directory' before all installation names.  The approach of
+`DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters.  On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of `${prefix}'
+at `configure' time.
+
+Optional Features
+=================
 
    If the package supports it, you can cause programs to be installed
 with an extra prefix or suffix on their names by giving `configure' the
 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
 
-Optional Features
-=================
-
-Some packages pay attention to `--enable-FEATURE' options to
+   Some packages pay attention to `--enable-FEATURE' options to
 `configure', where FEATURE indicates an optional part of the package.
 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
 is something like `gnu-as' or `x' (for the X Window System).  The
@@ -137,14 +208,58 @@ find the X include and library files automatically, but if it doesn't,
 you can use the `configure' options `--x-includes=DIR' and
 `--x-libraries=DIR' to specify their locations.
 
+   Some packages offer the ability to configure how verbose the
+execution of `make' will be.  For these packages, running `./configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with `make V=1'; while running `./configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with `make V=0'.
+
+Particular systems
+==================
+
+   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU
+CC is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+     ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
+
+   HP-UX `make' updates targets which have the same time stamps as
+their prerequisites, which makes it generally unusable when shipped
+generated files such as `configure' are involved.  Use GNU `make'
+instead.
+
+   On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
+a workaround.  If GNU CC is not installed, it is therefore recommended
+to try
+
+     ./configure CC="cc"
+
+and if that doesn't work, try
+
+     ./configure CC="cc -nodtk"
+
+   On Solaris, don't put `/usr/ucb' early in your `PATH'.  This
+directory contains several dysfunctional programs; working variants of
+these programs are available in `/usr/bin'.  So, if you need `/usr/ucb'
+in your `PATH', put it _after_ `/usr/bin'.
+
+   On Haiku, software installed for all users goes in `/boot/common',
+not `/usr/local'.  It is recommended to use the following options:
+
+     ./configure --prefix=/boot/common
+
 Specifying the System Type
 ==========================
 
-There may be some features `configure' cannot figure out automatically,
-but needs to determine by the type of machine the package will run on.
-Usually, assuming the package is built to be run on the _same_
-architectures, `configure' can figure that out, but if it prints a
-message saying it cannot guess the machine type, give it the
+   There may be some features `configure' cannot figure out
+automatically, but needs to determine by the type of machine the package
+will run on.  Usually, assuming the package is built to be run on the
+_same_ architectures, `configure' can figure that out, but if it prints
+message saying it cannot guess the machine type, give it the
 `--build=TYPE' option.  TYPE can either be a short name for the system
 type, such as `sun4', or a canonical name which has the form:
 
@@ -152,14 +267,15 @@ type, such as `sun4', or a canonical name which has the form:
 
 where SYSTEM can have one of these forms:
 
-     OS KERNEL-OS
+     OS
+     KERNEL-OS
 
    See the file `config.sub' for the possible values of each field.  If
 `config.sub' isn't included in this package, then this package doesn't
 need to know the machine type.
 
    If you are _building_ compiler tools for cross-compiling, you should
-use the `--target=TYPE' option to select the type of system they will
+use the option `--target=TYPE' to select the type of system they will
 produce code for.
 
    If you want to _use_ a cross compiler, that generates code for a
@@ -170,9 +286,9 @@ eventually be run) with `--host=TYPE'.
 Sharing Defaults
 ================
 
-If you want to set default values for `configure' scripts to share, you
-can create a site shell script called `config.site' that gives default
-values for variables like `CC', `cache_file', and `prefix'.
+   If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
 `configure' looks for `PREFIX/share/config.site' if it exists, then
 `PREFIX/etc/config.site' if it exists.  Or, you can set the
 `CONFIG_SITE' environment variable to the location of the site script.
@@ -181,7 +297,7 @@ A warning: not all `configure' scripts look for a site script.
 Defining Variables
 ==================
 
-Variables not defined in a site shell script can be set in the
+   Variables not defined in a site shell script can be set in the
 environment passed to `configure'.  However, some packages may run
 configure again during the build, and the customized values of these
 variables may be lost.  In order to avoid this problem, you should set
@@ -190,21 +306,29 @@ them in the `configure' command line, using `VAR=value'.  For example:
      ./configure CC=/usr/local2/bin/gcc
 
 causes the specified `gcc' to be used as the C compiler (unless it is
-overridden in the site shell script).  Here is a another example:
+overridden in the site shell script).
 
-     /bin/bash ./configure CONFIG_SHELL=/bin/bash
+Unfortunately, this technique does not work for `CONFIG_SHELL' due to
+an Autoconf bug.  Until the bug is fixed you can use this workaround:
 
-Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
-configuration-related scripts to be executed by `/bin/bash'.
+     CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
 
 `configure' Invocation
 ======================
 
-`configure' recognizes the following options to control how it operates.
+   `configure' recognizes the following options to control how it
+operates.
 
 `--help'
 `-h'
-     Print a summary of the options to `configure', and exit.
+     Print a summary of all of the options to `configure', and exit.
+
+`--help=short'
+`--help=recursive'
+     Print a summary of the options unique to this package's
+     `configure', and exit.  The `short' variant lists options used
+     only in the top level, while the `recursive' variant lists options
+     also present in any nested packages.
 
 `--version'
 `-V'
@@ -231,6 +355,16 @@ configuration-related scripts to be executed by `/bin/bash'.
      Look for the package's source code in directory DIR.  Usually
      `configure' can determine that directory automatically.
 
+`--prefix=DIR'
+     Use DIR as the installation prefix.  *note Installation Names::
+     for more details, including other options available for fine-tuning
+     the installation locations.
+
+`--no-create'
+`-n'
+     Run the configure checks, but stop before creating any output
+     files.
+
 `configure' also accepts some other, not widely useful, options.  Run
 `configure --help' for more details.
 
index fc53aa9..8196886 100644 (file)
@@ -1,5 +1,5 @@
 
-SUBDIRS = doc src po icons 
+SUBDIRS = doc src po icons testsuite
 
 #EXTRA_DIST = config.rpath ABOUT-NLS mkinstalldirs
 
index 5d6c2e6..7512d4e 100644 (file)
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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.
 
 @SET_MAKE@
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -31,13 +50,14 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+target_triplet = @target@
 subdir = .
 DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
        $(srcdir)/Makefile.in $(srcdir)/config.h.in \
        $(top_srcdir)/configure ABOUT-NLS AUTHORS COPYING ChangeLog \
        INSTALL NEWS config/config.guess config/config.rpath \
        config/config.sub config/depcomp config/install-sh \
-       config/missing config/mkinstalldirs
+       config/missing
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
        $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
@@ -48,9 +68,10 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
  configure.lineno config.status.lineno
-mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
 RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
@@ -60,8 +81,16 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
        install-pdf-recursive install-ps-recursive install-recursive \
        installcheck-recursive installdirs-recursive pdf-recursive \
        ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive        \
   distclean-recursive maintainer-clean-recursive
+AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
+       $(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
+       distdir dist dist-all distcheck
 ETAGS = etags
 CTAGS = ctags
 DIST_SUBDIRS = $(SUBDIRS)
@@ -69,12 +98,41 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
 am__remove_distdir = \
-  { test ! -d $(distdir) \
-    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr $(distdir); }; }
+  if test -d "$(distdir)"; then \
+    find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+      && rm -rf "$(distdir)" \
+      || { sleep 5 && rm -rf "$(distdir)"; }; \
+  else :; fi
+am__relativize = \
+  dir0=`pwd`; \
+  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
+  sed_rest='s,^[^/]*/*,,'; \
+  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
+  sed_butlast='s,/*[^/]*$$,,'; \
+  while test -n "$$dir1"; do \
+    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
+    if test "$$first" != "."; then \
+      if test "$$first" = ".."; then \
+        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
+        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
+      else \
+        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
+        if test "$$first2" = "$$first"; then \
+          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
+        else \
+          dir2="../$$dir2"; \
+        fi; \
+        dir0="$$dir0"/"$$first"; \
+      fi; \
+    fi; \
+    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
+  done; \
+  reldir="$$dir2"
 DIST_ARCHIVES = $(distdir).tar.gz
 GZIP_ENV = --best
 distuninstallcheck_listfiles = find . -type f -print
+am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
+  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
 distcleancheck_listfiles = find . -type f -print
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -87,11 +145,9 @@ CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
+DEJAGNU = @DEJAGNU@
 DEPDIR = @DEPDIR@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -101,6 +157,7 @@ EXEEXT = @EXEEXT@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GREP = @GREP@
+HARDEN_CFLAGS = @HARDEN_CFLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -128,6 +185,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 POSUB = @POSUB@
@@ -140,6 +198,7 @@ USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 WITH_IPV6 = @WITH_IPV6@
 WITH_SELINUX = @WITH_SELINUX@
+WITH_TIMEOUT_STAT = @WITH_TIMEOUT_STAT@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
 abs_builddir = @abs_builddir@
@@ -147,7 +206,6 @@ 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@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
@@ -189,10 +247,15 @@ sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
+target = @target@
 target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-SUBDIRS = doc src po icons 
+SUBDIRS = doc src po icons testsuite
 
 #EXTRA_DIST = config.rpath ABOUT-NLS mkinstalldirs
 ACLOCAL_AMFLAGS = -I m4
@@ -200,21 +263,21 @@ all: config.h
        $(MAKE) $(AM_MAKEFLAGS) all-recursive
 
 .SUFFIXES:
-am--refresh:
+am--refresh: Makefile
        @:
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
-             echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
-             cd $(srcdir) && $(AUTOMAKE) --gnu  \
+             echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
+             $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
                && exit 0; \
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  Makefile'; \
-       cd $(top_srcdir) && \
-         $(AUTOMAKE) --gnu  Makefile
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --gnu Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
@@ -230,21 +293,20 @@ $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENC
        $(SHELL) ./config.status --recheck
 
 $(top_srcdir)/configure:  $(am__configure_deps)
-       cd $(srcdir) && $(AUTOCONF)
+       $(am__cd) $(srcdir) && $(AUTOCONF)
 $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
-       cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+       $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+$(am__aclocal_m4_deps):
 
 config.h: stamp-h1
-       @if test ! -f $@; then \
-         rm -f stamp-h1; \
-         $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
-       else :; fi
+       @if test ! -f $@; then rm -f stamp-h1; else :; fi
+       @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi
 
 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
        @rm -f stamp-h1
        cd $(top_builddir) && $(SHELL) ./config.status config.h
 $(srcdir)/config.h.in:  $(am__configure_deps) 
-       cd $(top_srcdir) && $(AUTOHEADER)
+       ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
        rm -f stamp-h1
        touch $@
 
@@ -258,7 +320,7 @@ distclean-hdr:
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
 $(RECURSIVE_TARGETS):
-       @failcom='exit 1'; \
+       @fail= failcom='exit 1'; \
        for f in x $$MAKEFLAGS; do \
          case $$f in \
            *=* | --[!k]*);; \
@@ -275,7 +337,7 @@ $(RECURSIVE_TARGETS):
          else \
            local_target="$$target"; \
          fi; \
-         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
          || eval $$failcom; \
        done; \
        if test "$$dot_seen" = "no"; then \
@@ -283,7 +345,7 @@ $(RECURSIVE_TARGETS):
        fi; test -z "$$fail"
 
 $(RECURSIVE_CLEAN_TARGETS):
-       @failcom='exit 1'; \
+       @fail= failcom='exit 1'; \
        for f in x $$MAKEFLAGS; do \
          case $$f in \
            *=* | --[!k]*);; \
@@ -309,16 +371,16 @@ $(RECURSIVE_CLEAN_TARGETS):
          else \
            local_target="$$target"; \
          fi; \
-         (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+         ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
          || eval $$failcom; \
        done && test -z "$$fail"
 tags-recursive:
        list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
        done
 ctags-recursive:
        list='$(SUBDIRS)'; for subdir in $$list; do \
-         test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+         test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
        done
 
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
@@ -326,14 +388,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
        unique=`for i in $$list; do \
            if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
          done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
        mkid -fID $$unique
 tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
                $(TAGS_FILES) $(LISP)
-       tags=; \
+       set x; \
        here=`pwd`; \
        if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
          include_option=--etags-include; \
@@ -345,46 +407,50 @@ TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
        list='$(SUBDIRS)'; for subdir in $$list; do \
          if test "$$subdir" = .; then :; else \
            test ! -f $$subdir/TAGS || \
-             tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+             set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
          fi; \
        done; \
        list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
        unique=`for i in $$list; do \
            if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
          done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       shift; \
+       if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
-         $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-           $$tags $$unique; \
+         if test $$# -gt 0; then \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             "$$@" $$unique; \
+         else \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             $$unique; \
+         fi; \
        fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
                $(TAGS_FILES) $(LISP)
-       tags=; \
-       here=`pwd`; \
        list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \
        unique=`for i in $$list; do \
            if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
          done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       test -z "$(CTAGS_ARGS)$$tags$$unique" \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-            $$tags $$unique
+            $$unique
 
 GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
-         && cd $(top_srcdir) \
-         && gtags -i $(GTAGS_ARGS) $$here
+         && $(am__cd) $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
        $(am__remove_distdir)
-       test -d $(distdir) || mkdir $(distdir)
+       test -d "$(distdir)" || mkdir "$(distdir)"
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -400,44 +466,70 @@ distdir: $(DISTFILES)
          if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
          if test -d $$d/$$file; then \
            dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
            if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-             cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
            fi; \
-           cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
          else \
-           test -f $(distdir)/$$file \
-           || cp -p $$d/$$file $(distdir)/$$file \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
            || exit 1; \
          fi; \
        done
-       list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+       @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
          if test "$$subdir" = .; then :; else \
-           test -d "$(distdir)/$$subdir" \
-           || $(MKDIR_P) "$(distdir)/$$subdir" \
-           || exit 1; \
-           distdir=`$(am__cd) $(distdir) && pwd`; \
-           top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
-           (cd $$subdir && \
+           $(am__make_dryrun) \
+             || test -d "$(distdir)/$$subdir" \
+             || $(MKDIR_P) "$(distdir)/$$subdir" \
+             || exit 1; \
+           dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
+           $(am__relativize); \
+           new_distdir=$$reldir; \
+           dir1=$$subdir; dir2="$(top_distdir)"; \
+           $(am__relativize); \
+           new_top_distdir=$$reldir; \
+           echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
+           echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
+           ($(am__cd) $$subdir && \
              $(MAKE) $(AM_MAKEFLAGS) \
-               top_distdir="$$top_distdir" \
-               distdir="$$distdir/$$subdir" \
+               top_distdir="$$new_top_distdir" \
+               distdir="$$new_distdir" \
                am__remove_distdir=: \
                am__skip_length_check=: \
+               am__skip_mode_fix=: \
                distdir) \
              || exit 1; \
          fi; \
        done
-       -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+       -test -n "$(am__skip_mode_fix)" \
+       || find "$(distdir)" -type d ! -perm -755 \
+               -exec chmod u+rwx,go+rx {} \; -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 $(install_sh) -c -m a+r {} {} \; \
-       || chmod -R a+r $(distdir)
+       || chmod -R a+r "$(distdir)"
 dist-gzip: distdir
        tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
        $(am__remove_distdir)
 
 dist-bzip2: distdir
-       tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+       tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
+       $(am__remove_distdir)
+
+dist-lzip: distdir
+       tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
+       $(am__remove_distdir)
+
+dist-lzma: distdir
+       tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
+       $(am__remove_distdir)
+
+dist-xz: distdir
+       tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
        $(am__remove_distdir)
 
 dist-tarZ: distdir
@@ -463,24 +555,33 @@ dist dist-all: distdir
 distcheck: dist
        case '$(DIST_ARCHIVES)' in \
        *.tar.gz*) \
-         GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+         GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
        *.tar.bz2*) \
-         bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+         bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
+       *.tar.lzma*) \
+         lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+       *.tar.lz*) \
+         lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
+       *.tar.xz*) \
+         xz -dc $(distdir).tar.xz | $(am__untar) ;;\
        *.tar.Z*) \
          uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
        *.shar.gz*) \
-         GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+         GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
        *.zip*) \
          unzip $(distdir).zip ;;\
        esac
-       chmod -R a-w $(distdir); chmod a+w $(distdir)
+       chmod -R a-w $(distdir); chmod u+w $(distdir)
        mkdir $(distdir)/_build
        mkdir $(distdir)/_inst
        chmod a-w $(distdir)
+       test -d $(distdir)/_build || exit 0; \
        dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
          && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
-         && cd $(distdir)/_build \
+         && am__cwd=`pwd` \
+         && $(am__cd) $(distdir)/_build \
          && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+           $(AM_DISTCHECK_CONFIGURE_FLAGS) \
            $(DISTCHECK_CONFIGURE_FLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) \
          && $(MAKE) $(AM_MAKEFLAGS) dvi \
@@ -501,14 +602,24 @@ distcheck: dist
          && rm -rf "$$dc_destdir" \
          && $(MAKE) $(AM_MAKEFLAGS) dist \
          && rm -rf $(DIST_ARCHIVES) \
-         && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
+         && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
+         && cd "$$am__cwd" \
+         || exit 1
        $(am__remove_distdir)
        @(echo "$(distdir) archives ready for distribution: "; \
          list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
          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 \
+       @test -n '$(distuninstallcheck_dir)' || { \
+         echo 'ERROR: trying to run $@ with an empty' \
+              '$$(distuninstallcheck_dir)' >&2; \
+         exit 1; \
+       }; \
+       $(am__cd) '$(distuninstallcheck_dir)' || { \
+         echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
+         exit 1; \
+       }; \
+       test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
           || { echo "ERROR: files left after uninstall:" ; \
                if test -n "$(DESTDIR)"; then \
                  echo "  (check DESTDIR support)"; \
@@ -539,16 +650,22 @@ install-am: all-am
 
 installcheck: installcheck-recursive
 install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -568,6 +685,8 @@ dvi-am:
 
 html: html-recursive
 
+html-am:
+
 info: info-recursive
 
 info-am:
@@ -576,18 +695,28 @@ install-data-am:
 
 install-dvi: install-dvi-recursive
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-recursive
 
+install-html-am:
+
 install-info: install-info-recursive
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-recursive
 
+install-pdf-am:
+
 install-ps: install-ps-recursive
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
@@ -610,23 +739,25 @@ ps-am:
 
 uninstall-am:
 
-.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
-       install-strip
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all \
+       ctags-recursive install-am install-strip tags-recursive
 
 .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-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-generic pdf \
-       pdf-am ps ps-am tags tags-recursive uninstall uninstall-am
+       dist-lzip dist-lzma dist-shar dist-tarZ dist-xz 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-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-generic pdf pdf-am ps ps-am tags tags-recursive \
+       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 --git a/README b/README
index 2489b05..e9da6fc 100644 (file)
--- a/README
+++ b/README
@@ -6,7 +6,6 @@ This package contains five little utilities that use the proc FS:
   fuser     identifies processes using files or sockets (similar to Sun's
            or SGI's fuser)
   killall   kills processes by name, e.g. killall -HUP named
-  pidof            like killall, buts lists PIDs instead of killing processes
   pstree    shows the currently running processes as a tree
   peekfd    shows the data travelling over a file descriptor
 
@@ -17,6 +16,13 @@ They should work with most recent kernels. Man pages are included.
 src/loop.h was stolen from util-linux package which in turn stole it from
 the Linux kernel.
 
+fuser on network fs
+-------------------
+On network filesystems, fuser can hang because its trying to stat files
+that may go away.  If you use the --with-timeout-stat option during
+the configure step then fuser will fork a process to run stat. This means
+fuser doesn't hang, but it is much slower.
+
 Translations
 ------------
 My thanks for the various translators who have cheerfully given me the po
index 7f66127..7cd5df2 100644 (file)
@@ -1,7 +1,8 @@
-# generated automatically by aclocal 1.10 -*- Autoconf -*-
+# generated automatically by aclocal 1.11.6 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006  Free Software Foundation, Inc.
+# 2005, 2006, 2007, 2008, 2009, 2010, 2011 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.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
-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])])
+m4_ifndef([AC_AUTOCONF_VERSION],
+  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
+[m4_warning([this file was generated for autoconf 2.69.
+You have another version of autoconf.  It may work, but is not guaranteed to.
+If you have problems, you may need to regenerate the build system entirely.
+To do so, use the procedure documented by the package, typically `autoreconf'.])])
 
-# Copyright (C) 2002, 2003, 2005, 2006  Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 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 1
+
 # AM_AUTOMAKE_VERSION(VERSION)
 # ----------------------------
 # Automake X.Y traces this macro to ensure aclocal.m4 has been
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.10'
+[am__api_version='1.11'
 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], [],
+m4_if([$1], [1.11.6], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -45,19 +52,23 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # AM_SET_CURRENT_AUTOMAKE_VERSION
 # -------------------------------
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.10])dnl
-_AM_AUTOCONF_VERSION(m4_PACKAGE_VERSION)])
+[AM_AUTOMAKE_VERSION([1.11.6])dnl
+m4_ifndef([AC_AUTOCONF_VERSION],
+  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
+_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2011 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 1
+
 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
 # $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
 # `$srcdir', `$srcdir/..', or `$srcdir/../..'.
@@ -105,14 +116,14 @@ am_aux_dir=`cd $ac_aux_dir && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
 # 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
 
 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
 # -------------------------------------
@@ -125,6 +136,7 @@ AC_SUBST([$1_TRUE])dnl
 AC_SUBST([$1_FALSE])dnl
 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
+m4_define([_AM_COND_VALUE_$1], [$2])dnl
 if $2; then
   $1_TRUE=
   $1_FALSE='#'
@@ -138,14 +150,14 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
-# Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009,
+# 2010, 2011 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 9
+# serial 12
 
 # 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,
@@ -185,6 +197,7 @@ AC_CACHE_CHECK([dependency style of $depcc],
   # instance it was reported that on HP-UX the gcc test will end up
   # making a dummy file named `D' -- because `-MD' means `put the output
   # in D'.
+  rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
   # using a relative directory.
@@ -202,6 +215,16 @@ AC_CACHE_CHECK([dependency style of $depcc],
   if test "$am_compiler_list" = ""; then
      am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
   fi
+  am__universal=false
+  m4_case([$1], [CC],
+    [case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac],
+    [CXX],
+    [case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac])
+
   for depmode in $am_compiler_list; do
     # Setup a source with many dependencies, because some compilers
     # like to wrap large dependency lists on column 80 (with \), and
@@ -219,7 +242,17 @@ AC_CACHE_CHECK([dependency style of $depcc],
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs
+    am__obj=sub/conftest.${OBJEXT-o}
+    am__minus_obj="-o $am__obj"
     case $depmode in
+    gcc)
+      # This depmode causes a compiler race in universal mode.
+      test "$am__universal" = false || continue
+      ;;
     nosideeffect)
       # after this tag, mechanisms are not by side-effect, so they'll
       # only be used when explicitly requested
@@ -229,19 +262,23 @@ AC_CACHE_CHECK([dependency style of $depcc],
        break
       fi
       ;;
+    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
+      # This compiler won't grok `-c -o', but also, the minuso test has
+      # not run yet.  These depmodes are late enough in the game, and
+      # so weak that their functioning should not be impacted.
+      am__obj=conftest.${OBJEXT-o}
+      am__minus_obj=
+      ;;
     none) break ;;
     esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
     if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       source=sub/conftest.c object=$am__obj \
        depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+       $SHELL ./depcomp $depcc -c $am__minus_obj 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 &&
+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
       # or remarks (even with -Werror).  So we grep stderr for any message
@@ -290,65 +327,79 @@ AC_DEFUN([AM_DEP_TRACK],
 if test "x$enable_dependency_tracking" != xno; then
   am_depcomp="$ac_aux_dir/depcomp"
   AMDEPBACKSLASH='\'
+  am__nodep='_no'
 fi
 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
 AC_SUBST([AMDEPBACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
+AC_SUBST([am__nodep])dnl
+_AM_SUBST_NOTMAKE([am__nodep])dnl
 ])
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2008
 # 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 3
+#serial 5
 
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
 # ------------------------------
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[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.
-  # We used to match only the files named `Makefile.in', but
-  # 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.
-  # 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
-  fi
-  # Extract the definition of DEPDIR, am__include, and am__quote
-  # from the Makefile without running `make'.
-  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-  test -z "$DEPDIR" && continue
-  am__include=`sed -n 's/^am__include = //p' < "$mf"`
-  test -z "am__include" && continue
-  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-  # When using ansi2knr, U may be empty or an underscore; expand it
-  U=`sed -n 's/^U = //p' < "$mf"`
-  # Find all dependency output files, they are included files with
-  # $(DEPDIR) in their names.  We invoke sed twice because it is the
-  # simplest approach to changing $(DEPDIR) to its actual value in the
-  # expansion.
-  for file in `sed -n "
-    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-    # Make sure the directory exists.
-    test -f "$dirpart/$file" && continue
-    fdir=`AS_DIRNAME(["$file"])`
-    AS_MKDIR_P([$dirpart/$fdir])
-    # echo "creating $dirpart/$file"
-    echo '# dummy' > "$dirpart/$file"
+[{
+  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # are listed without --file.  Let's play safe and only enable the eval
+  # if we detect the quoting.
+  case $CONFIG_FILES in
+  *\'*) eval set x "$CONFIG_FILES" ;;
+  *)   set x $CONFIG_FILES ;;
+  esac
+  shift
+  for mf
+  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.
+    # We used to match only the files named `Makefile.in', but
+    # 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.
+    # 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 -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
+      dirpart=`AS_DIRNAME("$mf")`
+    else
+      continue
+    fi
+    # Extract the definition of DEPDIR, am__include, and am__quote
+    # from the Makefile without running `make'.
+    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+    test -z "$DEPDIR" && continue
+    am__include=`sed -n 's/^am__include = //p' < "$mf"`
+    test -z "am__include" && continue
+    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+    # When using ansi2knr, U may be empty or an underscore; expand it
+    U=`sed -n 's/^U = //p' < "$mf"`
+    # Find all dependency output files, they are included files with
+    # $(DEPDIR) in their names.  We invoke sed twice because it is the
+    # simplest approach to changing $(DEPDIR) to its actual value in the
+    # expansion.
+    for file in `sed -n "
+      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+      # Make sure the directory exists.
+      test -f "$dirpart/$file" && continue
+      fdir=`AS_DIRNAME(["$file"])`
+      AS_MKDIR_P([$dirpart/$fdir])
+      # echo "creating $dirpart/$file"
+      echo '# dummy' > "$dirpart/$file"
+    done
   done
-done
+}
 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 
 
@@ -368,13 +419,13 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 # Do all the work for Automake.                             -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006 Free Software Foundation, Inc.
+# 2005, 2006, 2008, 2009 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 12
+# serial 16
 
 # This macro actually does too much.  Some checks are only needed if
 # your package does certain things.  But this isn't really a big deal.
@@ -391,7 +442,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 # 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.60])dnl
+[AC_PREREQ([2.62])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
@@ -442,8 +493,8 @@ AM_MISSING_PROG(AUTOCONF, autoconf)
 AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
 AM_MISSING_PROG(AUTOHEADER, autoheader)
 AM_MISSING_PROG(MAKEINFO, makeinfo)
-AM_PROG_INSTALL_SH
-AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
 AC_REQUIRE([AM_PROG_MKDIR_P])dnl
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
@@ -451,24 +502,37 @@ AC_REQUIRE([AC_PROG_AWK])dnl
 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
 _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
-              [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
-                            [_AM_PROG_TAR([v7])])])
+             [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+                            [_AM_PROG_TAR([v7])])])
 _AM_IF_OPTION([no-dependencies],,
 [AC_PROVIDE_IFELSE([AC_PROG_CC],
-                  [_AM_DEPENDENCIES(CC)],
-                  [define([AC_PROG_CC],
-                          defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+                 [_AM_DEPENDENCIES(CC)],
+                 [define([AC_PROG_CC],
+                         defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
 AC_PROVIDE_IFELSE([AC_PROG_CXX],
-                  [_AM_DEPENDENCIES(CXX)],
-                  [define([AC_PROG_CXX],
-                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+                 [_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
+                 [_AM_DEPENDENCIES(OBJC)],
+                 [define([AC_PROG_OBJC],
+                         defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
 ])
+_AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
+dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
+dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
+dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
+AC_CONFIG_COMMANDS_PRE(dnl
+[m4_provide_if([_AM_COMPILER_EXEEXT],
+  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
 ])
 
+dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
+dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
+dnl mangled by Autoconf and run in a shell conditional statement.
+m4_define([_AC_COMPILER_EXEEXT],
+m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
+
 
 # When config.status generates a header, we must update the stamp-h file.
 # This file resides in the same directory as the config header
@@ -479,29 +543,40 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJC],
 # our stamp files there.
 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
 [# Compute $1's index in $config_headers.
+_am_arg=$1
 _am_stamp_count=1
 for _am_header in $config_headers :; do
   case $_am_header in
-    $1 | $1:* )
+    $_am_arg | $_am_arg:* )
       break ;;
     * )
       _am_stamp_count=`expr $_am_stamp_count + 1` ;;
   esac
 done
-echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2008, 2011 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 1
+
 # AM_PROG_INSTALL_SH
 # ------------------
 # Define $install_sh.
 AC_DEFUN([AM_PROG_INSTALL_SH],
 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
+if test x"${install_sh}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\    *)
+    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+  *)
+    install_sh="\${SHELL} $am_aux_dir/install-sh"
+  esac
+fi
 AC_SUBST(install_sh)])
 
 # Copyright (C) 2003, 2005  Free Software Foundation, Inc.
@@ -527,13 +602,13 @@ AC_SUBST([am__leading_dot])])
 
 # Check to see how 'make' treats includes.                 -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2009  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 3
+# serial 4
 
 # AM_MAKE_INCLUDE()
 # -----------------
@@ -542,7 +617,7 @@ AC_DEFUN([AM_MAKE_INCLUDE],
 [am_make=${MAKE-make}
 cat > confinc << 'END'
 am__doit:
-       @echo done
+       @echo this is the am__doit target
 .PHONY: am__doit
 END
 # If we don't find an include directive, just comment out the code.
@@ -552,24 +627,24 @@ am__quote=
 _am_result=none
 # First try GNU make style include.
 echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
-   am__include=include
-   am__quote=
-   _am_result=GNU
-fi
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+  am__include=include
+  am__quote=
+  _am_result=GNU
+  ;;
+esac
 # Now try BSD make style include.
 if test "$am__include" = "#"; then
    echo '.include "confinc"' > confmf
-   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
-      am__include=.include
-      am__quote="\""
-      _am_result=BSD
-   fi
+   case `$am_make -s -f confmf 2> /dev/null` in #(
+   *the\ am__doit\ target*)
+     am__include=.include
+     am__quote="\""
+     _am_result=BSD
+     ;;
+   esac
 fi
 AC_SUBST([am__include])
 AC_SUBST([am__quote])
@@ -579,14 +654,14 @@ rm -f confinc confmf
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
 # 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 5
+# serial 6
 
 # AM_MISSING_PROG(NAME, PROGRAM)
 # ------------------------------
@@ -603,7 +678,14 @@ AC_SUBST($1)])
 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"
+if test x"${MISSING+set}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\    *)
+    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+  *)
+    MISSING="\${SHELL} $am_aux_dir/missing" ;;
+  esac
+fi
 # Use eval to expand $SHELL
 if eval "$MISSING --run true"; then
   am_missing_run="$MISSING --run "
@@ -613,12 +695,15 @@ else
 fi
 ])
 
-# Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2005, 2006, 2011 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 1
+
 # AM_PROG_MKDIR_P
 # ---------------
 # Check for `mkdir -p'.
@@ -641,13 +726,14 @@ esac
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 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 3
+# serial 5
 
 # _AM_MANGLE_OPTION(NAME)
 # -----------------------
@@ -655,16 +741,16 @@ AC_DEFUN([_AM_MANGLE_OPTION],
 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
 
 # _AM_SET_OPTION(NAME)
-# ------------------------------
+# --------------------
 # Set option NAME.  Presently that only means defining a flag for this option.
 AC_DEFUN([_AM_SET_OPTION],
 [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
 
 # _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
+# ------------------------
 # OPTIONS is a space-separated list of Automake options.
 AC_DEFUN([_AM_SET_OPTIONS],
-[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
 
 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
 # -------------------------------------------
@@ -674,14 +760,14 @@ AC_DEFUN([_AM_IF_OPTION],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
 # 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_SANITY_CHECK
 # ---------------
@@ -690,16 +776,29 @@ AC_DEFUN([AM_SANITY_CHECK],
 # Just in case
 sleep 1
 echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name.  Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+  *[[\\\"\#\$\&\'\`$am_lf]]*)
+    AC_MSG_ERROR([unsafe absolute working directory name]);;
+esac
+case $srcdir in
+  *[[\\\"\#\$\&\'\`$am_lf\ \   ]]*)
+    AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
+esac
+
 # Do `set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
    if test "$[*]" = "X"; then
       # -L didn't work.
-      set X `ls -t $srcdir/configure conftest.file`
+      set X `ls -t "$srcdir/configure" conftest.file`
    fi
    rm -f conftest.file
    if test "$[*]" != "X $srcdir/configure conftest.file" \
@@ -724,12 +823,14 @@ Check your system clock])
 fi
 AC_MSG_RESULT(yes)])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2011 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 1
+
 # AM_PROG_INSTALL_STRIP
 # ---------------------
 # One issue with vendor `install' (even GNU) is that you can't
@@ -752,21 +853,28 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006  Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008, 2010 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 3
+
 # _AM_SUBST_NOTMAKE(VARIABLE)
 # ---------------------------
-# Prevent Automake from outputing VARIABLE = @VARIABLE@ in Makefile.in.
+# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
 # This macro is traced by Automake.
 AC_DEFUN([_AM_SUBST_NOTMAKE])
 
+# AM_SUBST_NOTMAKE(VARIABLE)
+# --------------------------
+# Public sister of _AM_SUBST_NOTMAKE.
+AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
+
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -788,10 +896,11 @@ AC_DEFUN([_AM_SUBST_NOTMAKE])
 # a tarball read from stdin.
 #     $(am__untar) < result.tar
 AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
+[# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AC_SUBST([AMTAR], ['$${TAR-tar}'])
 m4_if([$1], [v7],
-     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+     [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
      [m4_case([$1], [ustar],, [pax],,
               [m4_fatal([Unknown tar format])])
 AC_MSG_CHECKING([how to create a $1 tar archive])
index 9edf2d0..a3d7245 100644 (file)
@@ -85,6 +85,9 @@
 /* Define to 1 if you have the `nl_langinfo' function. */
 #undef HAVE_NL_LANGINFO
 
+/* Define to 1 if you have the `rawmemchr' function. */
+#undef HAVE_RAWMEMCHR
+
 /* Define to 1 if your system has a GNU libc compatible `realloc' function,
    and to 0 otherwise. */
 #undef HAVE_REALLOC
 /* Define to 1 if you have the `strtoul' function. */
 #undef HAVE_STRTOUL
 
-/* Define to 1 if `gpr' is member of `struct pt_regs'. */
+/* Define to 1 if `cp0_status' is a member of `struct pt_regs'. */
+#undef HAVE_STRUCT_PT_REGS_CP0_STATUS
+
+/* Define to 1 if `gpr' is a member of `struct pt_regs'. */
 #undef HAVE_STRUCT_PT_REGS_GPR
 
-/* Define to 1 if `orig_gpr3' is member of `struct pt_regs'. */
+/* Define to 1 if `orig_gpr3' is member of `struct pt_regs'. */
 #undef HAVE_STRUCT_PT_REGS_ORIG_GPR3
 
-/* Define to 1 if `st_rdev' is member of `struct stat'. */
+/* Define to 1 if `regs' is a member of `struct pt_regs'. */
+#undef HAVE_STRUCT_PT_REGS_REGS
+
+/* Define to 1 if `uregs' is a member of `struct pt_regs'. */
+#undef HAVE_STRUCT_PT_REGS_UREGS
+
+/* Define to 1 if `st_rdev' is a member of `struct stat'. */
 #undef HAVE_STRUCT_STAT_ST_RDEV
 
-/* Define to 1 if `eax' is member of `struct user_regs_struct'. */
+/* Define to 1 if `eax' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_EAX
 
-/* Define to 1 if `ebx' is member of `struct user_regs_struct'. */
+/* Define to 1 if `ebx' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_EBX
 
-/* Define to 1 if `ecx' is member of `struct user_regs_struct'. */
+/* Define to 1 if `ecx' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_ECX
 
-/* Define to 1 if `edx' is member of `struct user_regs_struct'. */
+/* Define to 1 if `edx' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_EDX
 
-/* Define to 1 if `orig_eax' is member of `struct user_regs_struct'. */
+/* Define to 1 if `orig_eax' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_ORIG_EAX
 
-/* Define to 1 if `orig_rax' is member of `struct user_regs_struct'. */
+/* Define to 1 if `orig_rax' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_ORIG_RAX
 
-/* Define to 1 if `rax' is member of `struct user_regs_struct'. */
+/* Define to 1 if `rax' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_RAX
 
-/* Define to 1 if `rdi' is member of `struct user_regs_struct'. */
+/* Define to 1 if `rdi' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_RDI
 
-/* Define to 1 if `rdx' is member of `struct user_regs_struct'. */
+/* Define to 1 if `rdx' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_RDX
 
-/* Define to 1 if `rsi' is member of `struct user_regs_struct'. */
+/* Define to 1 if `rsi' is member of `struct user_regs_struct'. */
 #undef HAVE_STRUCT_USER_REGS_STRUCT_RSI
 
 /* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
 /* Define to the one symbol short name of this package. */
 #undef PACKAGE_TARNAME
 
+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
 /* Define to the version of this package. */
 #undef PACKAGE_VERSION
 
 /* Use Security-Enhanced Linux features */
 #undef WITH_SELINUX
 
+/* Use timeout on stat calls */
+#undef WITH_TIMEOUT_STAT
+
+/* Enable large inode numbers on Mac OS X 10.5.  */
+#ifndef _DARWIN_USE_64_BIT_INODE
+# define _DARWIN_USE_64_BIT_INODE 1
+#endif
+
 /* Number of bits in a file offset, on hosts where this is settable. */
 #undef _FILE_OFFSET_BITS
 
index 45bee13..d622a44 100755 (executable)
@@ -1,9 +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 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+#   2011, 2012 Free Software Foundation, Inc.
 
-timestamp='2005-04-22'
+timestamp='2012-02-10'
 
 # 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
@@ -16,24 +17,24 @@ timestamp='2005-04-22'
 # General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
 # configuration script generated by Autoconf, you may include it under
 # the same distribution terms that you use for the rest of that program.
 
-# Originally written by Per Bothner <per@bothner.com>.
-# Please send patches to <config-patches@gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
+
+# Originally written by Per Bothner.  Please send patches (context
+# diff format) to <config-patches@gnu.org> and include a ChangeLog
+# entry.
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
 # exits with 0.  Otherwise, it exits with 1.
 #
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
 
 me=`echo "$0" | sed -e 's,.*/,,'`
 
@@ -53,7 +54,8 @@ version="\
 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
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
@@ -66,11 +68,11 @@ Try \`$me --help' for more information."
 while test $# -gt 0 ; do
   case $1 in
     --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
+       echo "$timestamp" ; exit ;;
     --version | -v )
-       echo "$version" ; exit ;;
+       echo "$version" ; exit ;;
     --help | --h* | -h )
-       echo "$usage"; exit ;;
+       echo "$usage"; exit ;;
     -- )     # Stop option processing
        shift; break ;;
     - )        # Use stdin as input.
@@ -104,7 +106,7 @@ set_cc_for_build='
 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
 : ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
  { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
  { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
  { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
@@ -123,7 +125,7 @@ case $CC_FOR_BUILD,$HOST_CC,$CC in
        ;;
  ,,*)   CC_FOR_BUILD=$CC ;;
  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ;'
+esac ; set_cc_for_build= ;'
 
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
 # (ghazi@noc.rutgers.edu 1994-08-24)
@@ -141,7 +143,7 @@ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     *:NetBSD:*:*)
        # NetBSD (nbsd) targets should (where applicable) match one or
-       # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+       # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
        # *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
        # switched to ELF, *-*-netbsd* would select the old
        # object file format.  This provides both forward
@@ -158,6 +160,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
            arm*) machine=arm-unknown ;;
            sh3el) machine=shl-unknown ;;
            sh3eb) machine=sh-unknown ;;
+           sh5el) machine=sh5le-unknown ;;
            *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
        esac
        # The Operating System including object format, if it has switched
@@ -166,7 +169,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
            arm*|i386|m68k|ns32k|sh3*|sparc|vax)
                eval $set_cc_for_build
                if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-                       | grep __ELF__ >/dev/null
+                       | grep -q __ELF__
                then
                    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
                    # Return netbsd for either.  FIX?
@@ -176,7 +179,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
                fi
                ;;
            *)
-               os=netbsd
+               os=netbsd
                ;;
        esac
        # The OS release
@@ -196,62 +199,30 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        # contains redundant information, the shorter form:
        # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
        echo "${machine}-${os}${release}"
-       exit 0 ;;
-    amd64:OpenBSD:*:*)
-       echo x86_64-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    amiga:OpenBSD:*:*)
-       echo m68k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    cats:OpenBSD:*:*)
-       echo arm-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    hp300:OpenBSD:*:*)
-       echo m68k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    luna88k:OpenBSD:*:*)
-       echo m88k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    mac68k:OpenBSD:*:*)
-       echo m68k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    macppc:OpenBSD:*:*)
-       echo powerpc-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    mvme68k:OpenBSD:*:*)
-       echo m68k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    mvme88k:OpenBSD:*:*)
-       echo m88k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    mvmeppc:OpenBSD:*:*)
-       echo powerpc-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    sgi:OpenBSD:*:*)
-       echo mips64-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
-    sun3:OpenBSD:*:*)
-       echo m68k-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
+       exit ;;
     *:OpenBSD:*:*)
-       echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
-       exit 0 ;;
+       UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+       echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+       exit ;;
     *:ekkoBSD:*:*)
        echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-       exit 0 ;;
+       exit ;;
+    *:SolidBSD:*:*)
+       echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+       exit ;;
     macppc:MirBSD:*:*)
-       echo powerppc-unknown-mirbsd${UNAME_RELEASE}
-       exit ;;
+       echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+       exit ;;
     *:MirBSD:*:*)
        echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     alpha:OSF1:*:*)
        case $UNAME_RELEASE in
        *4.0)
                UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
                ;;
        *5.*)
-               UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+               UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
                ;;
        esac
        # According to Compaq, /usr/sbin/psrinfo has been available on
@@ -297,40 +268,46 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        # A Xn.n version is an unreleased experimental baselevel.
        # 1.2 uses "1.2" for uname -r.
        echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-       exit 0 ;;
+       # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
+       exitcode=$?
+       trap '' 0
+       exit $exitcode ;;
     Alpha\ *:Windows_NT*:*)
        # How do we know it's Interix rather than the generic POSIX subsystem?
        # Should we change UNAME_MACHINE based on the output of uname instead
        # of the specific Alpha model?
        echo alpha-pc-interix
-       exit ;;
+       exit ;;
     21064:Windows_NT:50:3)
        echo alpha-dec-winnt3.5
-       exit ;;
+       exit ;;
     Amiga*:UNIX_System_V:4.0:*)
        echo m68k-unknown-sysv4
-       exit 0;;
+       exit ;;
     *:[Aa]miga[Oo][Ss]:*:*)
        echo ${UNAME_MACHINE}-unknown-amigaos
-       exit ;;
+       exit ;;
     *:[Mm]orph[Oo][Ss]:*:*)
        echo ${UNAME_MACHINE}-unknown-morphos
-       exit ;;
+       exit ;;
     *:OS/390:*:*)
        echo i370-ibm-openedition
-       exit ;;
+       exit ;;
     *:z/VM:*:*)
        echo s390-ibm-zvmoe
-       exit ;;
+       exit ;;
     *:OS400:*:*)
-        echo powerpc-ibm-os400
-       exit ;;
+       echo powerpc-ibm-os400
+       exit ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
        echo arm-acorn-riscix${UNAME_RELEASE}
-       exit 0;;
+       exit ;;
+    arm:riscos:*:*|arm:RISCOS:*:*)
+       echo arm-unknown-riscos
+       exit ;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
        echo hppa1.1-hitachi-hiuxmpp
-       exit 0;;
+       exit ;;
     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
        # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
        if test "`(/bin/universe) 2>/dev/null`" = att ; then
@@ -338,32 +315,51 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        else
                echo pyramid-pyramid-bsd
        fi
-       exit ;;
+       exit ;;
     NILE*:*:*:dcosx)
        echo pyramid-pyramid-svr4
-       exit ;;
+       exit ;;
     DRS?6000:unix:4.0:6*)
        echo sparc-icl-nx6
-       exit ;;
+       exit ;;
     DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
        case `/usr/bin/uname -p` in
-           sparc) echo sparc-icl-nx7 && exit 0 ;;
+           sparc) echo sparc-icl-nx7; exit ;;
        esac ;;
+    s390x:SunOS:*:*)
+       echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+       exit ;;
     sun4H:SunOS:5.*:*)
        echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit ;;
+       exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
        echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit 0 ;;
-    i86pc:SunOS:5.*:*)
-       echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit 0 ;;
+       exit ;;
+    i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
+       echo i386-pc-auroraux${UNAME_RELEASE}
+       exit ;;
+    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
+       eval $set_cc_for_build
+       SUN_ARCH="i386"
+       # If there is a compiler, see if it is configured for 64-bit objects.
+       # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
+       # This test works for both compilers.
+       if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+           if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
+               (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+               grep IS_64BIT_ARCH >/dev/null
+           then
+               SUN_ARCH="x86_64"
+           fi
+       fi
+       echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+       exit ;;
     sun4*:SunOS:6*:*)
        # According to config.sub, this is the proper way to canonicalize
        # SunOS6.  Hard to guess exactly what SunOS6 will be like, but
        # it's likely to be more like Solaris than SunOS4.
        echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit ;;
+       exit ;;
     sun4*:SunOS:*:*)
        case "`/usr/bin/arch -k`" in
            Series*|S4*)
@@ -372,10 +368,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        esac
        # Japanese Language versions have a version number like `4.1.3-JL'.
        echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-       exit ;;
+       exit ;;
     sun3*:SunOS:*:*)
        echo m68k-sun-sunos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     sun*:*:4.2BSD:*)
        UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
        test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
@@ -387,10 +383,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
                echo sparc-sun-sunos${UNAME_RELEASE}
                ;;
        esac
-       exit ;;
+       exit ;;
     aushp:SunOS:*:*)
        echo sparc-auspex-sunos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     # The situation for MiNT is a little confusing.  The machine name
     # can be virtually everything (everything which is not
     # "atarist" or "atariste" at least should have a processor
@@ -400,41 +396,41 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     # MiNT.  But MiNT is downward compatible to TOS, so this should
     # be no problem.
     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-       exit ;;
+       echo m68k-atari-mint${UNAME_RELEASE}
+       exit ;;
     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
        echo m68k-atari-mint${UNAME_RELEASE}
-        exit 0 ;;
+       exit ;;
     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-       exit ;;
+       echo m68k-atari-mint${UNAME_RELEASE}
+       exit ;;
     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-        echo m68k-milan-mint${UNAME_RELEASE}
-        exit 0 ;;
+       echo m68k-milan-mint${UNAME_RELEASE}
+       exit ;;
     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-        echo m68k-hades-mint${UNAME_RELEASE}
-        exit 0 ;;
+       echo m68k-hades-mint${UNAME_RELEASE}
+       exit ;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-unknown-mint${UNAME_RELEASE}
-        exit 0 ;;
+       echo m68k-unknown-mint${UNAME_RELEASE}
+       exit ;;
     m68k:machten:*:*)
        echo m68k-apple-machten${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     powerpc:machten:*:*)
        echo powerpc-apple-machten${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     RISC*:Mach:*:*)
        echo mips-dec-mach_bsd4.3
-       exit ;;
+       exit ;;
     RISC*:ULTRIX:*:*)
        echo mips-dec-ultrix${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     VAX*:ULTRIX*:*:*)
        echo vax-dec-ultrix${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     2020:CLIX:*:* | 2430:CLIX:*:*)
        echo clipper-intergraph-clix${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
        eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
@@ -458,35 +454,36 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
          exit (-1);
        }
 EOF
-       $CC_FOR_BUILD -o $dummy $dummy.c \
-         && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-         && exit 0
+       $CC_FOR_BUILD -o $dummy $dummy.c &&
+         dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+         SYSTEM_NAME=`$dummy $dummyarg` &&
+           { echo "$SYSTEM_NAME"; exit; }
        echo mips-mips-riscos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     Motorola:PowerMAX_OS:*:*)
        echo powerpc-motorola-powermax
-       exit ;;
+       exit ;;
     Motorola:*:4.3:PL8-*)
        echo powerpc-harris-powermax
-       exit ;;
+       exit ;;
     Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
        echo powerpc-harris-powermax
-       exit ;;
+       exit ;;
     Night_Hawk:Power_UNIX:*:*)
        echo powerpc-harris-powerunix
-       exit ;;
+       exit ;;
     m88k:CX/UX:7*:*)
        echo m88k-harris-cxux7
-       exit ;;
+       exit ;;
     m88k:*:4*:R4*)
        echo m88k-motorola-sysv4
-       exit ;;
+       exit ;;
     m88k:*:3*:R3*)
        echo m88k-motorola-sysv3
-       exit ;;
+       exit ;;
     AViiON:dgux:*:*)
-        # DG/UX returns AViiON for all architectures
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
+       # DG/UX returns AViiON for all architectures
+       UNAME_PROCESSOR=`/usr/bin/uname -p`
        if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
        then
            if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
@@ -499,29 +496,29 @@ EOF
        else
            echo i586-dg-dgux${UNAME_RELEASE}
        fi
-       exit ;;
+       exit ;;
     M88*:DolphinOS:*:*)        # DolphinOS (SVR3)
        echo m88k-dolphin-sysv3
-       exit ;;
+       exit ;;
     M88*:*:R3*:*)
        # Delta 88k system running SVR3
        echo m88k-motorola-sysv3
-       exit ;;
+       exit ;;
     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
        echo m88k-tektronix-sysv3
-       exit ;;
+       exit ;;
     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
        echo m68k-tektronix-bsd
-       exit ;;
+       exit ;;
     *:IRIX*:*:*)
        echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-       exit ;;
+       exit ;;
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-       echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
-       exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
+       echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
+       exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
     i*86:AIX:*:*)
        echo i386-ibm-aix
-       exit ;;
+       exit ;;
     ia64:AIX:*:*)
        if [ -x /usr/bin/oslevel ] ; then
                IBM_REV=`/usr/bin/oslevel`
@@ -529,7 +526,7 @@ EOF
                IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
        fi
        echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-       exit ;;
+       exit ;;
     *:AIX:2:3)
        if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
                eval $set_cc_for_build
@@ -544,15 +541,19 @@ EOF
                        exit(0);
                        }
 EOF
-               $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
-               echo rs6000-ibm-aix3.2.5
+               if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+               then
+                       echo "$SYSTEM_NAME"
+               else
+                       echo rs6000-ibm-aix3.2.5
+               fi
        elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
                echo rs6000-ibm-aix3.2.4
        else
                echo rs6000-ibm-aix3.2
        fi
-       exit ;;
-    *:AIX:*:[45])
+       exit ;;
+    *:AIX:*:[4567])
        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
@@ -565,28 +566,28 @@ EOF
                IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
        fi
        echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-       exit ;;
+       exit ;;
     *:AIX:*:*)
        echo rs6000-ibm-aix
-       exit ;;
+       exit ;;
     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
        echo romp-ibm-bsd4.4
-       exit ;;
+       exit ;;
     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
        echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-       exit 0 ;;                           # report: romp-ibm BSD 4.3
+       exit ;;                             # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
        echo rs6000-bull-bosx
-       exit ;;
+       exit ;;
     DPX/2?00:B.O.S.:*:*)
        echo m68k-bull-sysv3
-       exit ;;
+       exit ;;
     9000/[34]??:4.3bsd:1.*:*)
        echo m68k-hp-bsd
-       exit ;;
+       exit ;;
     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
        echo m68k-hp-bsd4.4
-       exit ;;
+       exit ;;
     9000/[34678]??:HP-UX:*:*)
        HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
        case "${UNAME_MACHINE}" in
@@ -595,52 +596,52 @@ EOF
            9000/[678][0-9][0-9])
                if [ -x /usr/bin/getconf ]; then
                    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-                    case "${sc_cpu_version}" in
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-                      532)                      # CPU_PA_RISC2_0
-                        case "${sc_kernel_bits}" in
-                          32) HP_ARCH="hppa2.0n" ;;
-                          64) HP_ARCH="hppa2.0w" ;;
+                   sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+                   case "${sc_cpu_version}" in
+                     523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+                     528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                     532)                      # CPU_PA_RISC2_0
+                       case "${sc_kernel_bits}" in
+                         32) HP_ARCH="hppa2.0n" ;;
+                         64) HP_ARCH="hppa2.0w" ;;
                          '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-                        esac ;;
-                    esac
+                       esac ;;
+                   esac
                fi
                if [ "${HP_ARCH}" = "" ]; then
                    eval $set_cc_for_build
-                   sed 's/^              //' << EOF >$dummy.c
+                   sed 's/^            //' << EOF >$dummy.c
 
-              #define _HPUX_SOURCE
-              #include <stdlib.h>
-              #include <unistd.h>
+               #define _HPUX_SOURCE
+               #include <stdlib.h>
+               #include <unistd.h>
 
-              int main ()
-              {
-              #if defined(_SC_KERNEL_BITS)
-                  long bits = sysconf(_SC_KERNEL_BITS);
-              #endif
-                  long cpu  = sysconf (_SC_CPU_VERSION);
+               int main ()
+               {
+               #if defined(_SC_KERNEL_BITS)
+                   long bits = sysconf(_SC_KERNEL_BITS);
+               #endif
+                   long cpu  = sysconf (_SC_CPU_VERSION);
 
-                  switch (cpu)
-               {
-               case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-               case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-               case CPU_PA_RISC2_0:
-              #if defined(_SC_KERNEL_BITS)
-                   switch (bits)
-                       {
-                       case 64: puts ("hppa2.0w"); break;
-                       case 32: puts ("hppa2.0n"); break;
-                       default: puts ("hppa2.0"); break;
-                       } break;
-              #else  /* !defined(_SC_KERNEL_BITS) */
-                   puts ("hppa2.0"); break;
-              #endif
-               default: puts ("hppa1.0"); break;
-               }
-                  exit (0);
-              }
+                   switch (cpu)
+                       {
+                       case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+                       case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+                       case CPU_PA_RISC2_0:
+               #if defined(_SC_KERNEL_BITS)
+                           switch (bits)
+                               {
+                               case 64: puts ("hppa2.0w"); break;
+                               case 32: puts ("hppa2.0n"); break;
+                               default: puts ("hppa2.0"); break;
+                               } break;
+               #else  /* !defined(_SC_KERNEL_BITS) */
+                           puts ("hppa2.0"); break;
+               #endif
+                       default: puts ("hppa1.0"); break;
+                       }
+                   exit (0);
+               }
 EOF
                    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
                    test -z "$HP_ARCH" && HP_ARCH=hppa
@@ -648,9 +649,19 @@ EOF
        esac
        if [ ${HP_ARCH} = "hppa2.0w" ]
        then
-           # avoid double evaluation of $set_cc_for_build
-           test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
-           if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
+           eval $set_cc_for_build
+
+           # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+           # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
+           # generating 64-bit code.  GNU and HP use different nomenclature:
+           #
+           # $ CC_FOR_BUILD=cc ./config.guess
+           # => hppa2.0w-hp-hpux11.23
+           # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+           # => hppa64-hp-hpux11.23
+
+           if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+               grep -q __LP64__
            then
                HP_ARCH="hppa2.0w"
            else
@@ -658,11 +669,11 @@ EOF
            fi
        fi
        echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-       exit ;;
+       exit ;;
     ia64:HP-UX:*:*)
        HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
        echo ia64-hp-hpux${HPUX_REV}
-       exit ;;
+       exit ;;
     3050*:HI-UX:*:*)
        eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
@@ -690,219 +701,266 @@ EOF
          exit (0);
        }
 EOF
-       $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+       $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+               { echo "$SYSTEM_NAME"; exit; }
        echo unknown-hitachi-hiuxwe2
-       exit ;;
+       exit ;;
     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
        echo hppa1.1-hp-bsd
-       exit ;;
+       exit ;;
     9000/8??:4.3bsd:*:*)
        echo hppa1.0-hp-bsd
-       exit ;;
+       exit ;;
     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
        echo hppa1.0-hp-mpeix
-       exit ;;
+       exit ;;
     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
        echo hppa1.1-hp-osf
-       exit ;;
+       exit ;;
     hp8??:OSF1:*:*)
        echo hppa1.0-hp-osf
-       exit ;;
+       exit ;;
     i*86:OSF1:*:*)
        if [ -x /usr/sbin/sysversion ] ; then
            echo ${UNAME_MACHINE}-unknown-osf1mk
        else
            echo ${UNAME_MACHINE}-unknown-osf1
        fi
-       exit ;;
+       exit ;;
     parisc*:Lites*:*:*)
        echo hppa1.1-hp-lites
-       exit ;;
+       exit ;;
     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
        echo c1-convex-bsd
-        exit 0 ;;
+       exit ;;
     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
        if getsysinfo -f scalar_acc
        then echo c32-convex-bsd
        else echo c2-convex-bsd
        fi
-        exit 0 ;;
+       exit ;;
     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
        echo c34-convex-bsd
-        exit 0 ;;
+       exit ;;
     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
        echo c38-convex-bsd
-        exit 0 ;;
+       exit ;;
     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
        echo c4-convex-bsd
-        exit 0 ;;
+       exit ;;
     CRAY*Y-MP:*:*:*)
        echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-       exit ;;
+       exit ;;
     CRAY*[A-Z]90:*:*:*)
        echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
        | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
              -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
              -e 's/\.[^.]*$/.X/'
-       exit ;;
+       exit ;;
     CRAY*TS:*:*:*)
        echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-       exit ;;
+       exit ;;
     CRAY*T3E:*:*:*)
        echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-       exit ;;
+       exit ;;
     CRAY*SV1:*:*:*)
        echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-       exit ;;
+       exit ;;
     *:UNICOS/mp:*:*)
        echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-       exit ;;
+       exit ;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
        FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit 0 ;;
+       FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+       FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+       echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+       exit ;;
     5000:UNIX_System_V:4.*:*)
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-       exit ;;
+       FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+       FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+       echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+       exit ;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
        echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     sparc*:BSD/OS:*:*)
        echo sparc-unknown-bsdi${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:BSD/OS:*:*)
        echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:FreeBSD:*:*)
-       echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-       exit 0 ;;
+       UNAME_PROCESSOR=`/usr/bin/uname -p`
+       case ${UNAME_PROCESSOR} in
+           amd64)
+               echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+           *)
+               echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+       esac
+       exit ;;
     i*:CYGWIN*:*)
        echo ${UNAME_MACHINE}-pc-cygwin
-       exit ;;
-    i*:MINGW*:*)
+       exit ;;
+    *:MINGW*:*)
        echo ${UNAME_MACHINE}-pc-mingw32
-       exit 0 ;;
+       exit ;;
+    i*:MSYS*:*)
+       echo ${UNAME_MACHINE}-pc-msys
+       exit ;;
+    i*:windows32*:*)
+       # uname -m includes "-pc" on this system.
+       echo ${UNAME_MACHINE}-mingw32
+       exit ;;
     i*:PW*:*)
        echo ${UNAME_MACHINE}-pc-pw32
-       exit 0 ;;
-    x86:Interix*:[34]*)
-       echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
-       exit 0 ;;
+       exit ;;
+    *:Interix*:*)
+       case ${UNAME_MACHINE} in
+           x86)
+               echo i586-pc-interix${UNAME_RELEASE}
+               exit ;;
+           authenticamd | genuineintel | EM64T)
+               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
-       exit 0 ;;
+       exit ;;
+    8664:Windows_NT:*)
+       echo x86_64-pc-mks
+       exit ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
        # How do we know it's Interix rather than the generic POSIX subsystem?
        # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
        # UNAME_MACHINE based on the output of uname instead of i386?
        echo i586-pc-interix
-       exit ;;
+       exit ;;
     i*:UWIN*:*)
        echo ${UNAME_MACHINE}-pc-uwin
-       exit ;;
-    amd64:CYGWIN*:*:*)
+       exit ;;
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
        echo x86_64-unknown-cygwin
-       exit ;;
+       exit ;;
     p*:CYGWIN*:*)
        echo powerpcle-unknown-cygwin
-       exit ;;
+       exit ;;
     prep*:SunOS:5.*:*)
        echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-       exit ;;
+       exit ;;
     *:GNU:*:*)
        # the GNU system
        echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-       exit ;;
+       exit ;;
     *:GNU/*:*:*)
        # other systems with GNU libc and userland
        echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-       exit ;;
+       exit ;;
     i*86:Minix:*:*)
        echo ${UNAME_MACHINE}-pc-minix
-       exit 0 ;;
+       exit ;;
+    aarch64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    aarch64_be:Linux:*:*)
+       UNAME_MACHINE=aarch64_be
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    alpha:Linux:*:*)
+       case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+         EV5)   UNAME_MACHINE=alphaev5 ;;
+         EV56)  UNAME_MACHINE=alphaev56 ;;
+         PCA56) UNAME_MACHINE=alphapca56 ;;
+         PCA57) UNAME_MACHINE=alphapca56 ;;
+         EV6)   UNAME_MACHINE=alphaev6 ;;
+         EV67)  UNAME_MACHINE=alphaev67 ;;
+         EV68*) UNAME_MACHINE=alphaev68 ;;
+       esac
+       objdump --private-headers /bin/sh | grep -q ld.so.1
+       if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+       echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+       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
+           if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
+               | grep -q __ARM_PCS_VFP
+           then
+               echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+           else
+               echo ${UNAME_MACHINE}-unknown-linux-gnueabihf
+           fi
+       fi
+       exit ;;
+    avr32*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit ;;
+       exit ;;
     cris:Linux:*:*)
-       echo cris-axis-linux-gnu
-       exit ;;
+       echo ${UNAME_MACHINE}-axis-linux-gnu
+       exit ;;
     crisv32:Linux:*:*)
-       echo crisv32-axis-linux-gnu
-       exit ;;
+       echo ${UNAME_MACHINE}-axis-linux-gnu
+       exit ;;
     frv:Linux:*:*)
-       echo frv-unknown-linux-gnu
-       exit 0 ;;
-    ia64:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit 0 ;;
-    m32r*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit ;;
-    m68*:Linux:*:*)
+       exit ;;
+    hexagon:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit 0 ;;
-    mips:Linux:*:*)
+       exit ;;
+    i*86:Linux:*:*)
+       LIBC=gnu
        eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
-       #undef CPU
-       #undef mips
-       #undef mipsel
-       #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-       CPU=mipsel
-       #else
-       #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-       CPU=mips
-       #else
-       CPU=
-       #endif
+       #ifdef __dietlibc__
+       LIBC=dietlibc
        #endif
 EOF
-       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-       test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
-       ;;
-    mips64:Linux:*:*)
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
+       echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+       exit ;;
+    ia64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    m32r*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    m68*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    mips:Linux:*:* | mips64:Linux:*:*)
        eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
        #undef CPU
-       #undef mips64
-       #undef mips64el
+       #undef ${UNAME_MACHINE}
+       #undef ${UNAME_MACHINE}el
        #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-       CPU=mips64el
+       CPU=${UNAME_MACHINE}el
        #else
        #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-       CPU=mips64
+       CPU=${UNAME_MACHINE}
        #else
        CPU=
        #endif
        #endif
 EOF
-       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-       test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
+       test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
        ;;
-    ppc:Linux:*:*)
-       echo powerpc-unknown-linux-gnu
-       exit 0 ;;
-    ppc64:Linux:*:*)
-       echo powerpc64-unknown-linux-gnu
-       exit 0 ;;
-    alpha:Linux:*:*)
-       case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-         EV5)   UNAME_MACHINE=alphaev5 ;;
-         EV56)  UNAME_MACHINE=alphaev56 ;;
-         PCA56) UNAME_MACHINE=alphapca56 ;;
-         PCA57) UNAME_MACHINE=alphapca56 ;;
-         EV6)   UNAME_MACHINE=alphaev6 ;;
-         EV67)  UNAME_MACHINE=alphaev67 ;;
-         EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-       objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-       if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-       echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-       exit 0 ;;
+    or32:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    padre:Linux:*:*)
+       echo sparc-unknown-linux-gnu
+       exit ;;
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+       echo hppa64-unknown-linux-gnu
+       exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
        # Look for CPU level
        case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
@@ -910,115 +968,71 @@ EOF
          PA8*) echo hppa2.0-unknown-linux-gnu ;;
          *)    echo hppa-unknown-linux-gnu ;;
        esac
-       exit 0 ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-       echo hppa64-unknown-linux-gnu
-       exit 0 ;;
+       exit ;;
+    ppc64:Linux:*:*)
+       echo powerpc64-unknown-linux-gnu
+       exit ;;
+    ppc:Linux:*:*)
+       echo powerpc-unknown-linux-gnu
+       exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
        echo ${UNAME_MACHINE}-ibm-linux
-       exit ;;
+       exit ;;
     sh64*:Linux:*:*)
-       echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit ;;
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
     sh*:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit ;;
+       exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
        echo ${UNAME_MACHINE}-unknown-linux-gnu
-       exit 0 ;;
+       exit ;;
+    tile*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    vax:Linux:*:*)
+       echo ${UNAME_MACHINE}-dec-linux-gnu
+       exit ;;
     x86_64:Linux:*:*)
-       echo x86_64-unknown-linux-gnu
-       exit 0 ;;
-    i*86:Linux:*:*)
-       # The BFD linker knows what the default object file format is, so
-       # first see if it will tell us. cd to the root directory to prevent
-       # problems with other programs or directories called `ld' in the path.
-       # Set LC_ALL=C to ensure ld outputs messages in English.
-       ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-                        | sed -ne '/supported targets:/!d
-                                   s/[         ][      ]*/ /g
-                                   s/.*supported targets: *//
-                                   s/ .*//
-                                   p'`
-        case "$ld_supported_targets" in
-         elf32-i386)
-               TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
-               ;;
-         a.out-i386-linux)
-               echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-               exit 0 ;;
-         coff-i386)
-               echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-               exit 0 ;;
-         "")
-               # Either a pre-BFD a.out linker (linux-gnuoldld) or
-               # one that does not give us useful --help.
-               echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-               exit 0 ;;
-       esac
-       # Determine whether the default compiler is a.out or elf
-       eval $set_cc_for_build
-       sed 's/^        //' << EOF >$dummy.c
-       #include <features.h>
-       #ifdef __ELF__
-       # ifdef __GLIBC__
-       #  if __GLIBC__ >= 2
-       LIBC=gnu
-       #  else
-       LIBC=gnulibc1
-       #  endif
-       # else
-       LIBC=gnulibc1
-       # endif
-       #else
-       #ifdef __INTEL_COMPILER
-       LIBC=gnu
-       #else
-       LIBC=gnuaout
-       #endif
-       #endif
-       #ifdef __dietlibc__
-       LIBC=dietlibc
-       #endif
-EOF
-       eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-       test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
-       test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
-       ;;
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
+    xtensa*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit ;;
     i*86:DYNIX/ptx:4*:*)
        # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
        # earlier versions are messed up and put the nodename in both
        # sysname and nodename.
        echo i386-sequent-sysv4
-       exit ;;
+       exit ;;
     i*86:UNIX_SV:4.2MP:2.*)
-        # Unixware is an offshoot of SVR4, but it has its own version
-        # number series starting with 2...
-        # I am not positive that other SVR4 systems won't match this,
+       # Unixware is an offshoot of SVR4, but it has its own version
+       # number series starting with 2...
+       # I am not positive that other SVR4 systems won't match this,
        # I just have to hope.  -- rms.
-        # Use sysv4.2uw... so that sysv4* matches it.
+       # Use sysv4.2uw... so that sysv4* matches it.
        echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-       exit ;;
+       exit ;;
     i*86:OS/2:*:*)
        # If we were able to find `uname', then EMX Unix compatibility
        # is probably installed.
        echo ${UNAME_MACHINE}-pc-os2-emx
-       exit ;;
+       exit ;;
     i*86:XTS-300:*:STOP)
        echo ${UNAME_MACHINE}-unknown-stop
-       exit ;;
+       exit ;;
     i*86:atheos:*:*)
        echo ${UNAME_MACHINE}-unknown-atheos
-       exit ;;
-       i*86:syllable:*:*)
+       exit ;;
+    i*86:syllable:*:*)
        echo ${UNAME_MACHINE}-pc-syllable
-       exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+       exit ;;
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
        echo i386-unknown-lynxos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     i*86:*DOS:*:*)
        echo ${UNAME_MACHINE}-pc-msdosdjgpp
-       exit ;;
+       exit ;;
     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
        UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
        if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
@@ -1026,15 +1040,16 @@ EOF
        else
                echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
        fi
-       exit 0 ;;
-    i*86:*:5:[78]*)
+       exit ;;
+    i*86:*:5:[678]*)
+       # UnixWare 7.x, OpenUNIX and OpenServer 6.
        case `/bin/uname -X | grep "^Machine"` in
            *486*)           UNAME_MACHINE=i486 ;;
            *Pentium)        UNAME_MACHINE=i586 ;;
            *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
        esac
        echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-       exit ;;
+       exit ;;
     i*86:*:3.2:*)
        if test -f /usr/options/cb.name; then
                UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
@@ -1052,73 +1067,86 @@ EOF
        else
                echo ${UNAME_MACHINE}-pc-sysv32
        fi
-       exit ;;
+       exit ;;
     pc:*:*:*)
        # Left here for compatibility:
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i386.
-       echo i386-pc-msdosdjgpp
-        exit 0 ;;
+       # uname -m prints for DJGPP always 'pc', but it prints nothing about
+       # the processor, so we play safe by assuming i586.
+       # Note: whatever this is, it MUST be the same as what config.sub
+       # prints for the "djgpp" host, or else GDB configury will decide that
+       # this is a cross-build.
+       echo i586-pc-msdosdjgpp
+       exit ;;
     Intel:Mach:3*:*)
        echo i386-pc-mach3
-       exit ;;
+       exit ;;
     paragon:*:*:*)
        echo i860-intel-osf1
-       exit ;;
+       exit ;;
     i860:*:4.*:*) # i860-SVR4
        if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
          echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
        else # Add other i860-SVR4 vendors below as they are discovered.
          echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
        fi
-       exit ;;
+       exit ;;
     mini*:CTIX:SYS*5:*)
        # "miniframe"
        echo m68010-convergent-sysv
-       exit ;;
+       exit ;;
     mc68k:UNIX:SYSTEM5:3.51m)
        echo m68k-convergent-sysv
-       exit ;;
+       exit ;;
     M680?0:D-NIX:5.3:*)
        echo m68k-diab-dnix
-       exit ;;
+       exit ;;
     M68*:*:R3V[5678]*:*)
-       test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
+       test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
     3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
        OS_REL=''
        test -r /etc/.relid \
        && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-         && echo i486-ncr-sysv4.3${OS_REL} && exit 0
+         && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
        /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-         && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
+         && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && echo i486-ncr-sysv4 && exit 0 ;;
+       /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+         && { echo i486-ncr-sysv4; exit; } ;;
+    NCR*:*:4.2:* | MPRAS*:*:4.2:*)
+       OS_REL='.3'
+       test -r /etc/.relid \
+           && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+       /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+           && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+       /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+           && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+       /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
+           && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
        echo m68k-unknown-lynxos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     mc68030:UNIX_System_V:4.*:*)
        echo m68k-atari-sysv4
-       exit ;;
+       exit ;;
     TSUNAMI:LynxOS:2.*:*)
        echo sparc-unknown-lynxos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     rs6000:LynxOS:2.*:*)
        echo rs6000-unknown-lynxos${UNAME_RELEASE}
-       exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+       exit ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
        echo powerpc-unknown-lynxos${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     SM[BE]S:UNIX_SV:*:*)
        echo mips-dde-sysv${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     RM*:ReliantUNIX-*:*:*)
        echo mips-sni-sysv4
-       exit ;;
+       exit ;;
     RM*:SINIX-*:*:*)
        echo mips-sni-sysv4
-       exit ;;
+       exit ;;
     *:SINIX-*:*:*)
        if uname -p 2>/dev/null >/dev/null ; then
                UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1126,73 +1154,94 @@ EOF
        else
                echo ns32k-sni-sysv
        fi
-       exit ;;
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                      # says <Richard.M.Bartel@ccMail.Census.GOV>
-        echo i586-unisys-sysv4
-        exit 0 ;;
+       exit ;;
+    PENTIUM:*:4.0*:*)  # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                       # says <Richard.M.Bartel@ccMail.Census.GOV>
+       echo i586-unisys-sysv4
+       exit ;;
     *:UNIX_System_V:4*:FTX*)
        # From Gerald Hewes <hewes@openmarket.com>.
        # How about differentiating between stratus architectures? -djm
        echo hppa1.1-stratus-sysv4
-       exit ;;
+       exit ;;
     *:*:*:FTX*)
        # From seanf@swdc.stratus.com.
        echo i860-stratus-sysv4
-       exit ;;
+       exit ;;
     i*86:VOS:*:*)
        # From Paul.Green@stratus.com.
        echo ${UNAME_MACHINE}-stratus-vos
-       exit ;;
+       exit ;;
     *:VOS:*:*)
        # From Paul.Green@stratus.com.
        echo hppa1.1-stratus-vos
-       exit ;;
+       exit ;;
     mc68*:A/UX:*:*)
        echo m68k-apple-aux${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     news*:NEWS-OS:6*:*)
        echo mips-sony-newsos6
-       exit ;;
+       exit ;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
        if [ -d /usr/nec ]; then
-               echo mips-nec-sysv${UNAME_RELEASE}
+               echo mips-nec-sysv${UNAME_RELEASE}
        else
-               echo mips-unknown-sysv${UNAME_RELEASE}
+               echo mips-unknown-sysv${UNAME_RELEASE}
        fi
-        exit 0 ;;
+       exit ;;
     BeBox:BeOS:*:*)    # BeOS running on hardware made by Be, PPC only.
        echo powerpc-be-beos
-       exit ;;
+       exit ;;
     BeMac:BeOS:*:*)    # BeOS running on Mac or Mac clone, PPC only.
        echo powerpc-apple-beos
-       exit ;;
+       exit ;;
     BePC:BeOS:*:*)     # BeOS running on Intel PC compatible.
        echo i586-pc-beos
-       exit 0 ;;
+       exit ;;
+    BePC:Haiku:*:*)    # Haiku running on Intel PC compatible.
+       echo i586-pc-haiku
+       exit ;;
     SX-4:SUPER-UX:*:*)
        echo sx4-nec-superux${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     SX-5:SUPER-UX:*:*)
        echo sx5-nec-superux${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     SX-6:SUPER-UX:*:*)
        echo sx6-nec-superux${UNAME_RELEASE}
-       exit 0 ;;
+       exit ;;
+    SX-7:SUPER-UX:*:*)
+       echo sx7-nec-superux${UNAME_RELEASE}
+       exit ;;
+    SX-8:SUPER-UX:*:*)
+       echo sx8-nec-superux${UNAME_RELEASE}
+       exit ;;
+    SX-8R:SUPER-UX:*:*)
+       echo sx8r-nec-superux${UNAME_RELEASE}
+       exit ;;
     Power*:Rhapsody:*:*)
        echo powerpc-apple-rhapsody${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:Rhapsody:*:*)
        echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:Darwin:*:*)
        UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
        case $UNAME_PROCESSOR in
-           *86) UNAME_PROCESSOR=i686 ;;
+           i386)
+               eval $set_cc_for_build
+               if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
+                 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
+                     (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
+                     grep IS_64BIT_ARCH >/dev/null
+                 then
+                     UNAME_PROCESSOR="x86_64"
+                 fi
+               fi ;;
            unknown) UNAME_PROCESSOR=powerpc ;;
        esac
        echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
        UNAME_PROCESSOR=`uname -p`
        if test "$UNAME_PROCESSOR" = "x86"; then
@@ -1200,25 +1249,28 @@ EOF
                UNAME_MACHINE=pc
        fi
        echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:QNX:*:4*)
        echo i386-pc-qnx
-       exit 0 ;;
+       exit ;;
+    NEO-?:NONSTOP_KERNEL:*:*)
+       echo neo-tandem-nsk${UNAME_RELEASE}
+       exit ;;
     NSE-?:NONSTOP_KERNEL:*:*)
        echo nse-tandem-nsk${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     NSR-?:NONSTOP_KERNEL:*:*)
        echo nsr-tandem-nsk${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:NonStop-UX:*:*)
        echo mips-compaq-nonstopux
-       exit ;;
+       exit ;;
     BS2000:POSIX*:*:*)
        echo bs2000-siemens-sysv
-       exit ;;
+       exit ;;
     DS/*:UNIX_System_V:*:*)
        echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-       exit ;;
+       exit ;;
     *:Plan9:*:*)
        # "uname -m" is not consistent, so use $cputype instead. 386
        # is converted to i386 for consistency with other x86
@@ -1229,41 +1281,53 @@ EOF
            UNAME_MACHINE="$cputype"
        fi
        echo ${UNAME_MACHINE}-unknown-plan9
-       exit ;;
+       exit ;;
     *:TOPS-10:*:*)
        echo pdp10-unknown-tops10
-       exit ;;
+       exit ;;
     *:TENEX:*:*)
        echo pdp10-unknown-tenex
-       exit ;;
+       exit ;;
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
        echo pdp10-dec-tops20
-       exit ;;
+       exit ;;
     XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
        echo pdp10-xkl-tops20
-       exit ;;
+       exit ;;
     *:TOPS-20:*:*)
        echo pdp10-unknown-tops20
-       exit ;;
+       exit ;;
     *:ITS:*:*)
        echo pdp10-unknown-its
-       exit ;;
+       exit ;;
     SEI:*:*:SEIUX)
-        echo mips-sei-seiux${UNAME_RELEASE}
-       exit ;;
+       echo mips-sei-seiux${UNAME_RELEASE}
+       exit ;;
     *:DragonFly:*:*)
        echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-       exit ;;
+       exit ;;
     *:*VMS:*:*)
-       UNAME_MACHINE=`(uname -p) 2>/dev/null`
+       UNAME_MACHINE=`(uname -p) 2>/dev/null`
        case "${UNAME_MACHINE}" in
-           A*) echo alpha-dec-vms && exit 0 ;;
-           I*) echo ia64-dec-vms && exit 0 ;;
-           V*) echo vax-dec-vms && exit 0 ;;
+           A*) echo alpha-dec-vms ; exit ;;
+           I*) echo ia64-dec-vms ; exit ;;
+           V*) echo vax-dec-vms ; exit ;;
        esac ;;
     *:XENIX:*:SysV)
        echo i386-pc-xenix
-       exit 0 ;;
+       exit ;;
+    i*86:skyos:*:*)
+       echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+       exit ;;
+    i*86:rdos:*:*)
+       echo ${UNAME_MACHINE}-pc-rdos
+       exit ;;
+    i*86:AROS:*:*)
+       echo ${UNAME_MACHINE}-pc-aros
+       exit ;;
+    x86_64:VMkernel:*:*)
+       echo ${UNAME_MACHINE}-unknown-esx
+       exit ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1286,16 +1350,16 @@ main ()
 #include <sys/param.h>
   printf ("m68k-sony-newsos%s\n",
 #ifdef NEWSOS4
-          "4"
+       "4"
 #else
-         ""
+       ""
 #endif
-         ); exit (0);
+       ); exit (0);
 #endif
 #endif
 
 #if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix"); exit (0);
+  printf ("arm-acorn-riscix\n"); exit (0);
 #endif
 
 #if defined (hp300) && !defined (hpux)
@@ -1384,11 +1448,12 @@ main ()
 }
 EOF
 
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+       { echo "$SYSTEM_NAME"; exit; }
 
 # Apollos put the system type in the environment.
 
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
 
 # Convex versions that predate uname can use getsysinfo(1)
 
@@ -1397,22 +1462,22 @@ then
     case `getsysinfo -f cpu_type` in
     c1*)
        echo c1-convex-bsd
-       exit ;;
+       exit ;;
     c2*)
        if getsysinfo -f scalar_acc
        then echo c32-convex-bsd
        else echo c2-convex-bsd
        fi
-       exit ;;
+       exit ;;
     c34*)
        echo c34-convex-bsd
-       exit ;;
+       exit ;;
     c38*)
        echo c38-convex-bsd
-       exit ;;
+       exit ;;
     c4*)
        echo c4-convex-bsd
-       exit ;;
+       exit ;;
     esac
 fi
 
@@ -1423,9 +1488,9 @@ This script, last modified $timestamp, has failed to recognize
 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
index 87a1ee4..6205f84 100755 (executable)
@@ -1,9 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
+#   2011, 2012 Free Software Foundation, Inc.
 
-timestamp='2005-04-22'
+timestamp='2012-04-18'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -20,23 +21,25 @@ timestamp='2005-04-22'
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
+# along with this program; if not, see <http://www.gnu.org/licenses/>.
+#
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
 # configuration script generated by Autoconf, you may include it under
 # the same distribution terms that you use for the rest of that program.
 
+
 # Please send patches to <config-patches@gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
+# diff and a properly formatted GNU ChangeLog entry.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
 # Otherwise, we print the canonical config type on stdout and succeed.
 
+# You can get the latest version of this script from:
+# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
+
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
 # that are meaningful with *any* GNU software.
@@ -70,7 +73,8 @@ Report bugs and patches to <config-patches@gnu.org>."
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
@@ -83,11 +87,11 @@ Try \`$me --help' for more information."
 while test $# -gt 0 ; do
   case $1 in
     --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
+       echo "$timestamp" ; exit ;;
     --version | -v )
-       echo "$version" ; exit ;;
+       echo "$version" ; exit ;;
     --help | --h* | -h )
-       echo "$usage"; exit ;;
+       echo "$usage"; exit ;;
     -- )     # Stop option processing
        shift; break ;;
     - )        # Use stdin as input.
@@ -99,7 +103,7 @@ while test $# -gt 0 ; do
     *local*)
        # First pass through any local machine types.
        echo $1
-       exit 0;;
+       exit ;;
 
     * )
        break ;;
@@ -118,11 +122,18 @@ esac
 # Here we must recognize all the valid KERNEL-OS combinations.
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
-  kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+  nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
+  linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
+  knetbsd*-gnu* | netbsd*-gnu* | \
+  kopensolaris*-gnu* | \
+  storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
+  android-linux)
+    os=-linux-android
+    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
+    ;;
   *)
     basic_machine=`echo $1 | sed 's/-[^-]*$//'`
     if [ $basic_machine != $1 ]
@@ -145,10 +156,13 @@ case $os in
        -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
        -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
        -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-       -apple | -axis | -knuth | -cray)
+       -apple | -axis | -knuth | -cray | -microblaze)
                os=
                basic_machine=$1
                ;;
+       -bluegene*)
+               os=-cnk
+               ;;
        -sim | -cisco | -oki | -wec | -winbond)
                os=
                basic_machine=$1
@@ -163,13 +177,17 @@ case $os in
                os=-chorusos
                basic_machine=$1
                ;;
-       -chorusrdb)
-               os=-chorusrdb
+       -chorusrdb)
+               os=-chorusrdb
                basic_machine=$1
-               ;;
+               ;;
        -hiux*)
                os=-hiuxwe2
                ;;
+       -sco6)
+               os=-sco5v6
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
        -sco5)
                os=-sco3.2v5
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -186,6 +204,10 @@ case $os in
                # Don't forget version if it is 3.2v4 or newer.
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
                ;;
+       -sco5v6*)
+               # Don't forget version if it is 3.2v4 or newer.
+               basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+               ;;
        -sco*)
                os=-sco3.2v2
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -203,6 +225,12 @@ case $os in
        -isc*)
                basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
                ;;
+       -lynx*178)
+               os=-lynxos178
+               ;;
+       -lynx*5)
+               os=-lynxos5
+               ;;
        -lynx*)
                os=-lynxos
                ;;
@@ -227,26 +255,36 @@ case $basic_machine in
        # Some are omitted here because they have special meanings below.
        1750a | 580 \
        | a29k \
+       | aarch64 | aarch64_be \
        | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
        | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
        | am33_2.0 \
-       | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+       | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+        | be32 | be64 \
        | bfin \
        | c4x | clipper \
        | d10v | d30v | dlx | dsp16xx \
-       | fr30 | frv \
+       | epiphany \
+       | fido | fr30 | frv \
        | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+       | hexagon \
        | i370 | i860 | i960 | ia64 \
        | ip2k | iq2000 \
-       | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
+       | le32 | le64 \
+       | lm32 \
+       | m32c | m32r | m32rle | m68000 | m68k | m88k \
+       | maxq | mb | microblaze | mcore | mep | metag \
        | mips | mipsbe | mipseb | mipsel | mipsle \
        | mips16 \
        | mips64 | mips64el \
-       | mips64vr | mips64vrel \
+       | mips64octeon | mips64octeonel \
        | mips64orion | mips64orionel \
+       | mips64r5900 | mips64r5900el \
+       | mips64vr | mips64vrel \
        | mips64vr4100 | mips64vr4100el \
        | mips64vr4300 | mips64vr4300el \
        | mips64vr5000 | mips64vr5000el \
+       | mips64vr5900 | mips64vr5900el \
        | mipsisa32 | mipsisa32el \
        | mipsisa32r2 | mipsisa32r2el \
        | mipsisa64 | mipsisa64el \
@@ -255,31 +293,65 @@ case $basic_machine in
        | mipsisa64sr71k | mipsisa64sr71kel \
        | mipstx39 | mipstx39el \
        | mn10200 | mn10300 \
+       | moxie \
+       | mt \
        | msp430 \
+       | nds32 | nds32le | nds32be \
+       | nios | nios2 \
        | ns16k | ns32k \
-       | openrisc | or32 \
+       | open8 \
+       | or32 \
        | pdp10 | pdp11 | pj | pjl \
-       | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+       | powerpc | powerpc64 | powerpc64le | powerpcle \
        | pyramid \
-       | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+       | rl78 | rx \
+       | score \
+       | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
        | sh64 | sh64le \
-       | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
-       | sparcv8 | sparcv9 | sparcv9b \
-       | strongarm \
-       | tahoe | thumb | tic4x | tic80 | tron \
-       | v850 | v850e \
+       | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+       | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+       | spu \
+       | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
+       | ubicom32 \
+       | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
        | we32k \
-       | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
-       | z8k)
+       | x86 | xc16x | xstormy16 | xtensa \
+       | z8k | z80)
                basic_machine=$basic_machine-unknown
                ;;
-       m6811 | m68hc11 | m6812 | m68hc12)
-               # Motorola 68HC11/12.
+       c54x)
+               basic_machine=tic54x-unknown
+               ;;
+       c55x)
+               basic_machine=tic55x-unknown
+               ;;
+       c6x)
+               basic_machine=tic6x-unknown
+               ;;
+       m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip)
                basic_machine=$basic_machine-unknown
                os=-none
                ;;
        m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
                ;;
+       ms1)
+               basic_machine=mt-unknown
+               ;;
+
+       strongarm | thumb | xscale)
+               basic_machine=arm-unknown
+               ;;
+       xgate)
+               basic_machine=$basic_machine-unknown
+               os=-none
+               ;;
+       xscaleeb)
+               basic_machine=armeb-unknown
+               ;;
+
+       xscaleel)
+               basic_machine=armel-unknown
+               ;;
 
        # We use `pc' rather than `unknown'
        # because (1) that's what they normally are, and
@@ -295,32 +367,40 @@ case $basic_machine in
        # Recognize the basic CPU types with company name.
        580-* \
        | a29k-* \
+       | aarch64-* | aarch64_be-* \
        | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
        | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
        | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
        | arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-       | avr-* \
+       | avr-* | avr32-* \
+       | be32-* | be64-* \
        | bfin-* | bs2000-* \
-       | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
+       | c[123]* | c30-* | [cjt]90-* | c4x-* \
        | clipper-* | craynv-* | cydra-* \
        | d10v-* | d30v-* | dlx-* \
        | elxsi-* \
-       | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+       | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
        | h8300-* | h8500-* \
        | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+       | hexagon-* \
        | i*86-* | i860-* | i960-* | ia64-* \
        | ip2k-* | iq2000-* \
-       | m32r-* | m32rle-* \
+       | le32-* | le64-* \
+       | lm32-* \
+       | m32c-* | m32r-* | m32rle-* \
        | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-       | m88110-* | m88k-* | maxq-* | mcore-* \
+       | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \
        | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
        | mips16-* \
        | mips64-* | mips64el-* \
-       | mips64vr-* | mips64vrel-* \
+       | mips64octeon-* | mips64octeonel-* \
        | mips64orion-* | mips64orionel-* \
+       | mips64r5900-* | mips64r5900el-* \
+       | mips64vr-* | mips64vrel-* \
        | mips64vr4100-* | mips64vr4100el-* \
        | mips64vr4300-* | mips64vr4300el-* \
        | mips64vr5000-* | mips64vr5000el-* \
+       | mips64vr5900-* | mips64vr5900el-* \
        | mipsisa32-* | mipsisa32el-* \
        | mipsisa32r2-* | mipsisa32r2el-* \
        | mipsisa64-* | mipsisa64el-* \
@@ -329,27 +409,38 @@ case $basic_machine in
        | mipsisa64sr71k-* | mipsisa64sr71kel-* \
        | mipstx39-* | mipstx39el-* \
        | mmix-* \
+       | mt-* \
        | msp430-* \
+       | nds32-* | nds32le-* | nds32be-* \
+       | nios-* | nios2-* \
        | none-* | np1-* | ns16k-* | ns32k-* \
+       | open8-* \
        | orion-* \
        | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-       | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+       | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
        | pyramid-* \
-       | romp-* | rs6000-* \
-       | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+       | rl78-* | romp-* | rs6000-* | rx-* \
+       | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
        | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-       | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
+       | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
        | sparclite-* \
-       | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
-       | tahoe-* | thumb-* \
+       | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \
+       | tahoe-* \
        | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+       | tile*-* \
        | tron-* \
-       | v850-* | v850e-* | vax-* \
+       | ubicom32-* \
+       | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
+       | vax-* \
        | we32k-* \
-       | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
-       | xstormy16-* | xtensa-* \
+       | x86-* | x86_64-* | xc16x-* | xps100-* \
+       | xstormy16-* | xtensa*-* \
        | ymp-* \
-       | z8k-*)
+       | z8k-* | z80-*)
+               ;;
+       # 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.
@@ -367,7 +458,7 @@ case $basic_machine in
                basic_machine=a29k-amd
                os=-udi
                ;;
-       abacus)
+       abacus)
                basic_machine=abacus-unknown
                ;;
        adobe68k)
@@ -413,6 +504,10 @@ case $basic_machine in
                basic_machine=m68k-apollo
                os=-bsd
                ;;
+       aros)
+               basic_machine=i386-pc
+               os=-aros
+               ;;
        aux)
                basic_machine=m68k-apple
                os=-aux
@@ -421,10 +516,35 @@ case $basic_machine in
                basic_machine=ns32k-sequent
                os=-dynix
                ;;
+       blackfin)
+               basic_machine=bfin-unknown
+               os=-linux
+               ;;
+       blackfin-*)
+               basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+               os=-linux
+               ;;
+       bluegene*)
+               basic_machine=powerpc-ibm
+               os=-cnk
+               ;;
+       c54x-*)
+               basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       c55x-*)
+               basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       c6x-*)
+               basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
        c90)
                basic_machine=c90-cray
                os=-unicos
                ;;
+       cegcc)
+               basic_machine=arm-unknown
+               os=-cegcc
+               ;;
        convex-c1)
                basic_machine=c1-convex
                os=-bsd
@@ -453,8 +573,8 @@ case $basic_machine in
                basic_machine=craynv-cray
                os=-unicosmp
                ;;
-       cr16c)
-               basic_machine=cr16c-unknown
+       cr16 | cr16-*)
+               basic_machine=cr16-unknown
                os=-elf
                ;;
        crds | unos)
@@ -492,6 +612,10 @@ case $basic_machine in
                basic_machine=m88k-motorola
                os=-sysv3
                ;;
+       dicos)
+               basic_machine=i686-pc
+               os=-dicos
+               ;;
        djgpp)
                basic_machine=i586-pc
                os=-msdosdjgpp
@@ -607,7 +731,6 @@ case $basic_machine in
        i370-ibm* | ibm*)
                basic_machine=i370-ibm
                ;;
-# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
        i*86v32)
                basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
                os=-sysv32
@@ -646,6 +769,14 @@ case $basic_machine in
                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
                ;;
@@ -657,10 +788,17 @@ case $basic_machine in
                basic_machine=ns32k-utek
                os=-sysv
                ;;
+       microblaze)
+               basic_machine=microblaze-xilinx
+               ;;
        mingw32)
                basic_machine=i386-pc
                os=-mingw32
                ;;
+       mingw32ce)
+               basic_machine=arm-unknown
+               os=-mingw32ce
+               ;;
        miniframe)
                basic_machine=m68000-convergent
                ;;
@@ -686,10 +824,21 @@ case $basic_machine in
                basic_machine=i386-pc
                os=-msdos
                ;;
+       ms1-*)
+               basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+               ;;
+       msys)
+               basic_machine=i386-pc
+               os=-msys
+               ;;
        mvs)
                basic_machine=i370-ibm
                os=-mvs
                ;;
+       nacl)
+               basic_machine=le32-unknown
+               os=-nacl
+               ;;
        ncr3000)
                basic_machine=i486-ncr
                os=-sysv4
@@ -754,6 +903,12 @@ case $basic_machine in
        np1)
                basic_machine=np1-gould
                ;;
+       neo-tandem)
+               basic_machine=neo-tandem
+               ;;
+       nse-tandem)
+               basic_machine=nse-tandem
+               ;;
        nsr-tandem)
                basic_machine=nsr-tandem
                ;;
@@ -761,9 +916,8 @@ case $basic_machine in
                basic_machine=hppa1.1-oki
                os=-proelf
                ;;
-       or32 | or32-*)
+       openrisc | openrisc-*)
                basic_machine=or32-unknown
-               os=-coff
                ;;
        os400)
                basic_machine=powerpc-ibm
@@ -785,6 +939,14 @@ case $basic_machine in
                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
                ;;
@@ -794,6 +956,12 @@ case $basic_machine in
        pc532 | pc532-*)
                basic_machine=ns32k-pc532
                ;;
+       pc98)
+               basic_machine=i386-pc
+               ;;
+       pc98-*)
+               basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
        pentium | p5 | k5 | k6 | nexgen | viac3)
                basic_machine=i586-pc
                ;;
@@ -823,9 +991,10 @@ case $basic_machine in
                ;;
        power)  basic_machine=power-ibm
                ;;
-       ppc)    basic_machine=powerpc-unknown
+       ppc | ppcbe)    basic_machine=powerpc-unknown
                ;;
-       ppc-*)  basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+       ppc-* | ppcbe-*)
+               basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
        ppcle | powerpclittle | ppc-le | powerpc-little)
                basic_machine=powerpcle-unknown
@@ -850,6 +1019,10 @@ case $basic_machine in
                basic_machine=i586-unknown
                os=-pw32
                ;;
+       rdos)
+               basic_machine=i386-pc
+               os=-rdos
+               ;;
        rom68k)
                basic_machine=m68k-rom68k
                os=-coff
@@ -876,6 +1049,10 @@ case $basic_machine in
        sb1el)
                basic_machine=mipsisa64sb1el-unknown
                ;;
+       sde)
+               basic_machine=mipsisa32-sde
+               os=-elf
+               ;;
        sei)
                basic_machine=mips-sei
                os=-seiux
@@ -887,6 +1064,9 @@ case $basic_machine in
                basic_machine=sh-hitachi
                os=-hms
                ;;
+       sh5el)
+               basic_machine=sh5le-unknown
+               ;;
        sh64)
                basic_machine=sh64-unknown
                ;;
@@ -908,6 +1088,9 @@ case $basic_machine in
                basic_machine=i860-stratus
                os=-sysv4
                ;;
+       strongarm-* | thumb-*)
+               basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
        sun2)
                basic_machine=m68000-sun
                ;;
@@ -964,17 +1147,9 @@ case $basic_machine in
                basic_machine=t90-cray
                os=-unicos
                ;;
-       tic54x | c54x*)
-               basic_machine=tic54x-unknown
-               os=-coff
-               ;;
-       tic55x | c55x*)
-               basic_machine=tic55x-unknown
-               os=-coff
-               ;;
-       tic6x | c6x*)
-               basic_machine=tic6x-unknown
-               os=-coff
+       tile*)
+               basic_machine=$basic_machine-unknown
+               os=-linux-gnu
                ;;
        tx39)
                basic_machine=mipstx39-unknown
@@ -1043,6 +1218,9 @@ case $basic_machine in
        xps | xps100)
                basic_machine=xps100-honeywell
                ;;
+       xscale-* | xscalee[bl]-*)
+               basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
+               ;;
        ymp)
                basic_machine=ymp-cray
                os=-unicos
@@ -1051,6 +1229,10 @@ case $basic_machine in
                basic_machine=z8k-unknown
                os=-sim
                ;;
+       z80-*-coff)
+               basic_machine=z80-unknown
+               os=-sim
+               ;;
        none)
                basic_machine=none-none
                os=-none
@@ -1089,13 +1271,10 @@ case $basic_machine in
        we32k)
                basic_machine=we32k-att
                ;;
-       sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
+       sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
                basic_machine=sh-unknown
                ;;
-       sh64)
-               basic_machine=sh64-unknown
-               ;;
-       sparc | sparcv8 | sparcv9 | sparcv9b)
+       sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
                basic_machine=sparc-sun
                ;;
        cydra)
@@ -1139,9 +1318,12 @@ esac
 if [ x"$os" != x"" ]
 then
 case $os in
-        # First match some system type aliases
-        # that might get confused with valid system types.
+       # First match some system type aliases
+       # that might get confused with valid system types.
        # -solaris* is a basic system type, with this one exception.
+       -auroraux)
+               os=-auroraux
+               ;;
        -solaris1 | -solaris1.*)
                os=`echo $os | sed -e 's|solaris1|sunos4|'`
                ;;
@@ -1162,26 +1344,31 @@ case $os in
        # Each alternative MUST END IN A *, to match a version number.
        # -sysv* is not here because it comes later, after sysvr4.
        -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-             | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
-             | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+             | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
+             | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
+             | -sym* | -kopensolaris* \
              | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-             | -aos* \
+             | -aos* | -aros* \
              | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
              | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-             | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+             | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+             | -openbsd* | -solidbsd* \
              | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
              | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
              | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
              | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-             | -chorusos* | -chorusrdb* \
-             | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-             | -mingw32* | -linux-gnu* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+             | -chorusos* | -chorusrdb* | -cegcc* \
+             | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+             | -mingw32* | -linux-gnu* | -linux-android* \
+             | -linux-newlib* | -linux-uclibc* \
+             | -uxpv* | -beos* | -mpeix* | -udk* \
              | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
              | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
              | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
              | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
              | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
+             | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+             | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
@@ -1199,7 +1386,7 @@ case $os in
                os=`echo $os | sed -e 's|nto|nto-qnx|'`
                ;;
        -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-             | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+             | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
              | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
                ;;
        -mac*)
@@ -1220,7 +1407,7 @@ case $os in
        -opened*)
                os=-openedition
                ;;
-        -os400*)
+       -os400*)
                os=-os400
                ;;
        -wince*)
@@ -1269,7 +1456,7 @@ case $os in
        -sinix*)
                os=-sysv4
                ;;
-        -tpf*)
+       -tpf*)
                os=-tpf
                ;;
        -triton*)
@@ -1311,6 +1498,11 @@ case $os in
        -zvmoe)
                os=-zvmoe
                ;;
+       -dicos*)
+               os=-dicos
+               ;;
+       -nacl*)
+               ;;
        -none)
                ;;
        *)
@@ -1333,6 +1525,12 @@ else
 # system, and we'll never get to this point.
 
 case $basic_machine in
+       score-*)
+               os=-elf
+               ;;
+       spu-*)
+               os=-elf
+               ;;
        *-acorn)
                os=-riscix1.2
                ;;
@@ -1342,9 +1540,21 @@ case $basic_machine in
        arm*-semi)
                os=-aout
                ;;
-    c4x-* | tic4x-*)
-        os=-coff
-        ;;
+       c4x-* | tic4x-*)
+               os=-coff
+               ;;
+       hexagon-*)
+               os=-elf
+               ;;
+       tic54x-*)
+               os=-coff
+               ;;
+       tic55x-*)
+               os=-coff
+               ;;
+       tic6x-*)
+               os=-coff
+               ;;
        # This must come before the *-dec entry.
        pdp10-*)
                os=-tops20
@@ -1363,13 +1573,13 @@ case $basic_machine in
                ;;
        m68000-sun)
                os=-sunos3
-               # This also exists in the configure program, but was not the
-               # default.
-               # os=-sunos4
                ;;
        m68*-cisco)
                os=-aout
                ;;
+       mep-*)
+               os=-elf
+               ;;
        mips*-cisco)
                os=-elf
                ;;
@@ -1388,10 +1598,13 @@ case $basic_machine in
        *-be)
                os=-beos
                ;;
+       *-haiku)
+               os=-haiku
+               ;;
        *-ibm)
                os=-aix
                ;;
-       *-knuth)
+       *-knuth)
                os=-mmixware
                ;;
        *-wec)
@@ -1496,7 +1709,7 @@ case $basic_machine in
                        -sunos*)
                                vendor=sun
                                ;;
-                       -aix*)
+                       -cnk*|-aix*)
                                vendor=ibm
                                ;;
                        -beos*)
@@ -1559,7 +1772,7 @@ case $basic_machine in
 esac
 
 echo $basic_machine$os
-exit 0
+exit
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
index ffcd540..25a39e6 100755 (executable)
@@ -1,9 +1,10 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2005-02-09.22
+scriptversion=2012-03-27.16; # UTC
 
-# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
+# 2011, 2012 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -16,9 +17,7 @@ scriptversion=2005-02-09.22
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -29,7 +28,7 @@ scriptversion=2005-02-09.22
 
 case $1 in
   '')
-     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
+     echo "$0: No command.  Try '$0 --help' for more information." 1>&2
      exit 1;
      ;;
   -h | --h*)
@@ -41,11 +40,11 @@ as side-effects.
 
 Environment variables:
   depmode     Dependency tracking mode.
-  source      Source file read by `PROGRAMS ARGS'.
-  object      Object file output by `PROGRAMS ARGS'.
+  source      Source file read by 'PROGRAMS ARGS'.
+  object      Object file output by 'PROGRAMS ARGS'.
   DEPDIR      directory where to store dependencies.
   depfile     Dependency file to output.
-  tmpdepfile  Temporary file to use when outputing dependencies.
+  tmpdepfile  Temporary file to use when outputting dependencies.
   libtool     Whether libtool is used (yes/no).
 
 Report bugs to <bug-automake@gnu.org>.
@@ -58,6 +57,12 @@ EOF
     ;;
 esac
 
+# A tabulation character.
+tab='  '
+# A newline character.
+nl='
+'
+
 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
   echo "depcomp: Variables source, object and depmode must be set" 1>&2
   exit 1
@@ -86,12 +91,48 @@ if test "$depmode" = dashXmstdout; then
    depmode=dashmstdout
 fi
 
+cygpath_u="cygpath -u -f -"
+if test "$depmode" = msvcmsys; then
+   # This is just like msvisualcpp but w/o cygpath translation.
+   # Just convert the backslash-escaped backslashes to single forward
+   # slashes to satisfy depend.m4
+   cygpath_u='sed s,\\\\,/,g'
+   depmode=msvisualcpp
+fi
+
+if test "$depmode" = msvc7msys; then
+   # This is just like msvc7 but w/o cygpath translation.
+   # Just convert the backslash-escaped backslashes to single forward
+   # slashes to satisfy depend.m4
+   cygpath_u='sed s,\\\\,/,g'
+   depmode=msvc7
+fi
+
+if test "$depmode" = xlc; then
+   # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency informations.
+   gccflag=-qmakedep=gcc,-MF
+   depmode=gcc
+fi
+
 case "$depmode" in
 gcc3)
 ## gcc 3 implements dependency tracking that does exactly what
 ## we want.  Yay!  Note: for some reason libtool 1.4 doesn't like
 ## it if -MD -MP comes after the -MF stuff.  Hmm.
-  "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+## Unfortunately, FreeBSD c89 acceptance of flags depends upon
+## the command line argument order; so add the flags where they
+## appear in depend2.am.  Note that the slowdown incurred here
+## affects only configure: in makefiles, %FASTDEP% shortcuts this.
+  for arg
+  do
+    case $arg in
+    -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
+    *)  set fnord "$@" "$arg" ;;
+    esac
+    shift # fnord
+    shift # $arg
+  done
+  "$@"
   stat=$?
   if test $stat -eq 0; then :
   else
@@ -127,20 +168,21 @@ gcc)
 ## The second -e expression handles DOS-style file names with drive letters.
   sed -e 's/^[^:]*: / /' \
       -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
-## This next piece of magic avoids the `deleted header file' problem.
+## This next piece of magic avoids the "deleted header file" problem.
 ## The problem is that when a header file which appears in a .P file
 ## is deleted, the dependency causes make to die (because there is
 ## typically no way to rebuild the header).  We avoid this by adding
 ## dummy dependencies for each header file.  Too bad gcc doesn't do
 ## this for us directly.
-  tr ' ' '
-' < "$tmpdepfile" |
-## Some versions of gcc put a space before the `:'.  On the theory
+  tr ' ' "$nl" < "$tmpdepfile" |
+## Some versions of gcc put a space before the ':'.  On the theory
 ## that the space means something, we add a space to the output as
-## well.
+## well.  hp depmode also adds that space, but also prefixes the VPATH
+## to the object.  Take care to not repeat it in the output.
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+    sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
+      | sed -e 's/$/ :/' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
@@ -172,20 +214,17 @@ sgi)
     # clever and replace this with sed code, as IRIX sed won't handle
     # lines with more than a fixed number of characters (4096 in
     # IRIX 6.2 sed, 8192 in IRIX 6.5).  We also remove comment lines;
-    # the IRIX cc adds comments like `#:fec' to the end of the
+    # the IRIX cc adds comments like '#:fec' to the end of the
     # dependency line.
-    tr ' ' '
-' < "$tmpdepfile" \
+    tr ' ' "$nl" < "$tmpdepfile" \
     | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
-    tr '
-' ' ' >> $depfile
-    echo >> $depfile
+    tr "$nl" ' ' >> "$depfile"
+    echo >> "$depfile"
 
     # The second pass generates a dummy entry for each header file.
-    tr ' ' '
-' < "$tmpdepfile" \
+    tr ' ' "$nl" < "$tmpdepfile" \
    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
-   >> $depfile
+   >> "$depfile"
   else
     # The sourcefile does not contain any dependencies, so just
     # store a dummy comment line, to avoid errors with the Makefile
@@ -195,40 +234,51 @@ sgi)
   rm -f "$tmpdepfile"
   ;;
 
+xlc)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
 aix)
   # The C for AIX Compiler uses -M and outputs the dependencies
   # in a .u file.  In older versions, this file always lives in the
-  # current directory.  Also, the AIX compiler puts `$object:' at the
+  # current directory.  Also, the AIX compiler puts '$object:' at the
   # start of each line; $object doesn't have directory information.
   # Version 6 uses the directory in both cases.
-  stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
-  tmpdepfile="$stripped.u"
+  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+  test "x$dir" = "x$object" && dir=
+  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
   if test "$libtool" = yes; then
+    tmpdepfile1=$dir$base.u
+    tmpdepfile2=$base.u
+    tmpdepfile3=$dir.libs/$base.u
     "$@" -Wc,-M
   else
+    tmpdepfile1=$dir$base.u
+    tmpdepfile2=$dir$base.u
+    tmpdepfile3=$dir$base.u
     "$@" -M
   fi
   stat=$?
 
-  if test -f "$tmpdepfile"; then :
-  else
-    stripped=`echo "$stripped" | sed 's,^.*/,,'`
-    tmpdepfile="$stripped.u"
-  fi
-
   if test $stat -eq 0; then :
   else
-    rm -f "$tmpdepfile"
+    rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
     exit $stat
   fi
 
+  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
+  do
+    test -f "$tmpdepfile" && break
+  done
   if test -f "$tmpdepfile"; then
-    outname="$stripped.o"
-    # Each line is of the form `foo.o: dependent.h'.
+    # Each line is of the form 'foo.o: dependent.h'.
     # Do two passes, one to just change these to
-    # `$object: dependent.h' and one to simply `dependent.h:'.
-    sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
-    sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
+    # '$object: dependent.h' and one to simply 'dependent.h:'.
+    sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+    sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
   else
     # The sourcefile does not contain any dependencies, so just
     # store a dummy comment line, to avoid errors with the Makefile
@@ -239,23 +289,26 @@ aix)
   ;;
 
 icc)
-  # Intel's C compiler understands `-MD -MF file'.  However on
-  #    icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+  # Intel's C compiler anf tcc (Tiny C Compiler) understand '-MD -MF file'.
+  # However on
+  #    $CC -MD -MF foo.d -c -o sub/foo.o sub/foo.c
   # ICC 7.0 will fill foo.d with something like
   #    foo.o: sub/foo.c
   #    foo.o: sub/foo.h
-  # which is wrong.  We want:
+  # which is wrong.  We want
   #    sub/foo.o: sub/foo.c
   #    sub/foo.o: sub/foo.h
   #    sub/foo.c:
   #    sub/foo.h:
   # ICC 7.1 will output
   #    foo.o: sub/foo.c sub/foo.h
-  # and will wrap long lines using :
+  # and will wrap long lines using '\':
   #    foo.o: sub/foo.c ... \
   #     sub/foo.h ... \
   #     ...
-
+  # tcc 0.9.26 (FIXME still under development at the moment of writing)
+  # will emit a similar output, but also prepend the continuation lines
+  # with horizontal tabulation characters.
   "$@" -MD -MF "$tmpdepfile"
   stat=$?
   if test $stat -eq 0; then :
@@ -264,23 +317,74 @@ icc)
     exit $stat
   fi
   rm -f "$depfile"
-  # Each line is of the form `foo.o: dependent.h',
-  # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+  # Each line is of the form 'foo.o: dependent.h',
+  # or 'foo.o: dep1.h dep2.h \', or ' dep3.h dep4.h \'.
   # Do two passes, one to just change these to
-  # `$object: dependent.h' and one to simply `dependent.h:'.
-  sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
-  # Some versions of the HPUX 10.20 sed can't process this invocation
-  # correctly.  Breaking it into two sed invocations is a workaround.
-  sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
-    sed -e 's/$/ :/' >> "$depfile"
+  # '$object: dependent.h' and one to simply 'dependent.h:'.
+  sed -e "s/^[ $tab][ $tab]*/  /" -e "s,^[^:]*:,$object :," \
+    < "$tmpdepfile" > "$depfile"
+  sed '
+    s/[ '"$tab"'][ '"$tab"']*/ /g
+    s/^ *//
+    s/ *\\*$//
+    s/^[^:]*: *//
+    /^$/d
+    /:$/d
+    s/$/ :/
+  ' < "$tmpdepfile" >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
+hp2)
+  # The "hp" stanza above does not work with aCC (C++) and HP's ia64
+  # compilers, which have integrated preprocessors.  The correct option
+  # to use with these is +Maked; it writes dependencies to a file named
+  # 'foo.d', which lands next to the object file, wherever that
+  # happens to be.
+  # Much of this is similar to the tru64 case; see comments there.
+  dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+  test "x$dir" = "x$object" && dir=
+  base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+  if test "$libtool" = yes; then
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir.libs/$base.d
+    "$@" -Wc,+Maked
+  else
+    tmpdepfile1=$dir$base.d
+    tmpdepfile2=$dir$base.d
+    "$@" +Maked
+  fi
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+     rm -f "$tmpdepfile1" "$tmpdepfile2"
+     exit $stat
+  fi
+
+  for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
+  do
+    test -f "$tmpdepfile" && break
+  done
+  if test -f "$tmpdepfile"; then
+    sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile"
+    # Add 'dependent.h:' lines.
+    sed -ne '2,${
+              s/^ *//
+              s/ \\*$//
+              s/$/:/
+              p
+            }' "$tmpdepfile" >> "$depfile"
+  else
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile" "$tmpdepfile2"
+  ;;
+
 tru64)
    # The Tru64 compiler uses -MD to generate dependencies as a side
-   # effect.  `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+   # effect.  'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
    # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
-   # dependencies in `foo.d' instead, so we check for that too.
+   # dependencies in 'foo.d' instead, so we check for that too.
    # Subdirectories are respected.
    dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
    test "x$dir" = "x$object" && dir=
@@ -288,13 +392,13 @@ tru64)
 
    if test "$libtool" = yes; then
       # With Tru64 cc, shared objects can also be used to make a
-      # static library.  This mecanism is used in libtool 1.4 series to
+      # static library.  This mechanism is used in libtool 1.4 series to
       # handle both shared and static libraries in a single compilation.
       # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
       #
       # With libtool 1.5 this exception was removed, and libtool now
       # generates 2 separate objects for the 2 libraries.  These two
-      # compilations output dependencies in in $dir.libs/$base.o.d and
+      # compilations output dependencies in $dir.libs/$base.o.d and
       # in $dir$base.o.d.  We have to check for both files, because
       # one of the two compilations can be disabled.  We should prefer
       # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
@@ -326,14 +430,59 @@ tru64)
    done
    if test -f "$tmpdepfile"; then
       sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
-      # That's a tab and a space in the [].
-      sed -e 's,^.*\.[a-z]*:[   ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+      sed -e 's,^.*\.[a-z]*:['"$tab"' ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
    else
       echo "#dummy" > "$depfile"
    fi
    rm -f "$tmpdepfile"
    ;;
 
+msvc7)
+  if test "$libtool" = yes; then
+    showIncludes=-Wc,-showIncludes
+  else
+    showIncludes=-showIncludes
+  fi
+  "$@" $showIncludes > "$tmpdepfile"
+  stat=$?
+  grep -v '^Note: including file: ' "$tmpdepfile"
+  if test "$stat" = 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  # The first sed program below extracts the file names and escapes
+  # backslashes for cygpath.  The second sed program outputs the file
+  # name when reading, but also accumulates all include files in the
+  # hold buffer in order to output them again at the end.  This only
+  # works with sed implementations that can handle large buffers.
+  sed < "$tmpdepfile" -n '
+/^Note: including file:  *\(.*\)/ {
+  s//\1/
+  s/\\/\\\\/g
+  p
+}' | $cygpath_u | sort -u | sed -n '
+s/ /\\ /g
+s/\(.*\)/'"$tab"'\1 \\/p
+s/.\(.*\) \\/\1:/
+H
+$ {
+  s/.*/'"$tab"'/
+  G
+  p
+}' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+msvc7msys)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
 #nosideeffect)
   # This comment above is used by automake to tell side-effect
   # dependency tracking mechanisms from slower ones.
@@ -345,13 +494,13 @@ dashmstdout)
 
   # Remove the call to Libtool.
   if test "$libtool" = yes; then
-    while test $1 != '--mode=compile'; do
+    while test "X$1" != 'X--mode=compile'; do
       shift
     done
     shift
   fi
 
-  # Remove `-o $object'.
+  # Remove '-o $object'.
   IFS=" "
   for arg
   do
@@ -371,15 +520,14 @@ dashmstdout)
   done
 
   test -z "$dashmflag" && dashmflag=-M
-  # Require at least two characters before searching for `:'
+  # Require at least two characters before searching for ':'
   # in the target name.  This is to cope with DOS-style filenames:
-  # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+  # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
   "$@" $dashmflag |
-    sed 's:^[  ]*[^: ][^:][^:]*\:[    ]*:'"$object"'\: :' > "$tmpdepfile"
+    sed 's:^['"$tab"' ]*[^:'"$tab"' ][^:][^:]*\:['"$tab"' ]*:'"$object"'\: :' > "$tmpdepfile"
   rm -f "$depfile"
   cat < "$tmpdepfile" > "$depfile"
-  tr ' ' '
-' < "$tmpdepfile" | \
+  tr ' ' "$nl" < "$tmpdepfile" | \
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
     sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
@@ -396,38 +544,46 @@ makedepend)
   "$@" || exit $?
   # Remove any Libtool call
   if test "$libtool" = yes; then
-    while test $1 != '--mode=compile'; do
+    while test "X$1" != 'X--mode=compile'; do
       shift
     done
     shift
   fi
   # X makedepend
   shift
-  cleared=no
-  for arg in "$@"; do
+  cleared=no eat=no
+  for arg
+  do
     case $cleared in
     no)
       set ""; shift
       cleared=yes ;;
     esac
+    if test $eat = yes; then
+      eat=no
+      continue
+    fi
     case "$arg" in
     -D*|-I*)
       set fnord "$@" "$arg"; shift ;;
     # Strip any option that makedepend may not understand.  Remove
     # the object too, otherwise makedepend will parse it as a source file.
+    -arch)
+      eat=yes ;;
     -*|$object)
       ;;
     *)
       set fnord "$@" "$arg"; shift ;;
     esac
   done
-  obj_suffix="`echo $object | sed 's/^.*\././'`"
+  obj_suffix=`echo "$object" | sed 's/^.*\././'`
   touch "$tmpdepfile"
   ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
   rm -f "$depfile"
-  cat < "$tmpdepfile" > "$depfile"
-  sed '1,2d' "$tmpdepfile" | tr ' ' '
-' | \
+  # makedepend may prepend the VPATH from the source file name to the object.
+  # No need to regex-escape $object, excess matching of '.' is harmless.
+  sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
+  sed '1,2d' "$tmpdepfile" | tr ' ' "$nl" | \
 ## Some versions of the HPUX 10.20 sed can't process this invocation
 ## correctly.  Breaking it into two sed invocations is a workaround.
     sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
@@ -441,13 +597,13 @@ cpp)
 
   # Remove the call to Libtool.
   if test "$libtool" = yes; then
-    while test $1 != '--mode=compile'; do
+    while test "X$1" != 'X--mode=compile'; do
       shift
     done
     shift
   fi
 
-  # Remove `-o $object'.
+  # Remove '-o $object'.
   IFS=" "
   for arg
   do
@@ -467,7 +623,8 @@ cpp)
   done
 
   "$@" -E |
-    sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
     sed '$ s: \\$::' > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
@@ -478,13 +635,27 @@ cpp)
 
 msvisualcpp)
   # Important note: in order to support this mode, a compiler *must*
-  # always write the preprocessed file to stdout, regardless of -o,
-  # because we must use -o when running libtool.
+  # always write the preprocessed file to stdout.
   "$@" || exit $?
+
+  # Remove the call to Libtool.
+  if test "$libtool" = yes; then
+    while test "X$1" != 'X--mode=compile'; do
+      shift
+    done
+    shift
+  fi
+
   IFS=" "
   for arg
   do
     case "$arg" in
+    -o)
+      shift
+      ;;
+    $object)
+      shift
+      ;;
     "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
        set fnord "$@"
        shift
@@ -497,16 +668,23 @@ msvisualcpp)
        ;;
     esac
   done
-  "$@" -E |
-  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+  "$@" -E 2>/dev/null |
+  sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
-  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::   \1 \\:p' >> "$depfile"
-  echo "       " >> "$depfile"
-  . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
+  echo "$tab" >> "$depfile"
+  sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
   rm -f "$tmpdepfile"
   ;;
 
+msvcmsys)
+  # This case exists only to let depend.m4 do its work.  It works by
+  # looking at the text of this script.  This case will never be run,
+  # since it is checked for above.
+  exit 1
+  ;;
+
 none)
   exec "$@"
   ;;
@@ -525,5 +703,6 @@ exit 0
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
index 1a83534..a9244eb 100755 (executable)
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2005-02-02.21
+scriptversion=2011-01-19.21; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -39,38 +39,68 @@ scriptversion=2005-02-02.21
 # when there is no Makefile.
 #
 # This script is compatible with the BSD install script, but was written
-# from scratch.  It can only install one file at a time, a restriction
-# shared with many OS's install programs.
+# from scratch.
+
+nl='
+'
+IFS=" ""       $nl"
 
 # set DOITPROG to echo to test this script
 
 # Don't use :- since 4.3BSD and earlier shells don't like it.
-doit="${DOITPROG-}"
+doit=${DOITPROG-}
+if test -z "$doit"; then
+  doit_exec=exec
+else
+  doit_exec=$doit
+fi
 
-# put in absolute paths if you don't have them in your path; or use env. vars.
+# Put in absolute file names if you don't have them in your path;
+# or use environment vars.
+
+chgrpprog=${CHGRPPROG-chgrp}
+chmodprog=${CHMODPROG-chmod}
+chownprog=${CHOWNPROG-chown}
+cmpprog=${CMPPROG-cmp}
+cpprog=${CPPROG-cp}
+mkdirprog=${MKDIRPROG-mkdir}
+mvprog=${MVPROG-mv}
+rmprog=${RMPROG-rm}
+stripprog=${STRIPPROG-strip}
+
+posix_glob='?'
+initialize_posix_glob='
+  test "$posix_glob" != "?" || {
+    if (set -f) 2>/dev/null; then
+      posix_glob=
+    else
+      posix_glob=:
+    fi
+  }
+'
 
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
+posix_mkdir=
+
+# Desired mode of installed file.
+mode=0755
 
-chmodcmd="$chmodprog 0755"
-chowncmd=
 chgrpcmd=
-stripcmd=
+chmodcmd=$chmodprog
+chowncmd=
+mvcmd=$mvprog
 rmcmd="$rmprog -f"
-mvcmd="$mvprog"
+stripcmd=
+
 src=
 dst=
 dir_arg=
-dstarg=
+dst_arg=
+
+copy_on_change=false
 no_target_directory=
 
-usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+usage="\
+Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
    or: $0 [OPTION]... SRCFILES... DIRECTORY
    or: $0 [OPTION]... -t DIRECTORY SRCFILES...
    or: $0 [OPTION]... -d DIRECTORIES...
@@ -80,81 +110,94 @@ In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
 In the 4th, create DIRECTORIES.
 
 Options:
--c         (ignored)
--d         create directories instead of installing files.
--g GROUP   $chgrpprog installed files to GROUP.
--m MODE    $chmodprog installed files to MODE.
--o USER    $chownprog installed files to USER.
--s         $stripprog installed files.
--t DIRECTORY  install into DIRECTORY.
--T         report an error if DSTFILE is a directory.
---help     display this help and exit.
---version  display version info and exit.
+     --help     display this help and exit.
+     --version  display version info and exit.
+
+  -c            (ignored)
+  -C            install only if different (preserve the last data modification time)
+  -d            create directories instead of installing files.
+  -g GROUP      $chgrpprog installed files to GROUP.
+  -m MODE       $chmodprog installed files to MODE.
+  -o USER       $chownprog installed files to USER.
+  -s            $stripprog installed files.
+  -t DIRECTORY  install into DIRECTORY.
+  -T            report an error if DSTFILE is a directory.
 
 Environment variables override the default commands:
-  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
+  RMPROG STRIPPROG
 "
 
-while test -n "$1"; do
+while test $# -ne 0; do
   case $1 in
-    -c) shift
-        continue;;
+    -c) ;;
+
+    -C) copy_on_change=true;;
 
-    -d) dir_arg=true
-        shift
-        continue;;
+    -d) dir_arg=true;;
 
     -g) chgrpcmd="$chgrpprog $2"
-        shift
-        shift
-        continue;;
+       shift;;
 
     --help) echo "$usage"; exit $?;;
 
-    -m) chmodcmd="$chmodprog $2"
-        shift
-        shift
-        continue;;
+    -m) mode=$2
+       case $mode in
+         *' '* | *'    '* | *'
+'*       | *'*'* | *'?'* | *'['*)
+           echo "$0: invalid mode: $mode" >&2
+           exit 1;;
+       esac
+       shift;;
 
     -o) chowncmd="$chownprog $2"
-        shift
-        shift
-        continue;;
+       shift;;
 
-    -s) stripcmd=$stripprog
-        shift
-        continue;;
+    -s) stripcmd=$stripprog;;
 
-    -t) dstarg=$2
-       shift
-       shift
-       continue;;
+    -t) dst_arg=$2
+       # Protect names problematic for `test' and other utilities.
+       case $dst_arg in
+         -* | [=\(\)!]) dst_arg=./$dst_arg;;
+       esac
+       shift;;
 
-    -T) no_target_directory=true
-       shift
-       continue;;
+    -T) no_target_directory=true;;
 
     --version) echo "$0 $scriptversion"; exit $?;;
 
-    *)  # When -d is used, all remaining arguments are directories to create.
-       # When -t is used, the destination is already specified.
-       test -n "$dir_arg$dstarg" && break
-        # Otherwise, the last argument is the destination.  Remove it from $@.
-       for arg
-       do
-          if test -n "$dstarg"; then
-           # $@ is not empty: it contains at least $arg.
-           set fnord "$@" "$dstarg"
-           shift # fnord
-         fi
-         shift # arg
-         dstarg=$arg
-       done
+    --)        shift
        break;;
+
+    -*)        echo "$0: invalid option: $1" >&2
+       exit 1;;
+
+    *)  break;;
   esac
+  shift
 done
 
-if test -z "$1"; then
+if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
+  # When -d is used, all remaining arguments are directories to create.
+  # When -t is used, the destination is already specified.
+  # Otherwise, the last argument is the destination.  Remove it from $@.
+  for arg
+  do
+    if test -n "$dst_arg"; then
+      # $@ is not empty: it contains at least $arg.
+      set fnord "$@" "$dst_arg"
+      shift # fnord
+    fi
+    shift # arg
+    dst_arg=$arg
+    # Protect names problematic for `test' and other utilities.
+    case $dst_arg in
+      -* | [=\(\)!]) dst_arg=./$dst_arg;;
+    esac
+  done
+fi
+
+if test $# -eq 0; then
   if test -z "$dir_arg"; then
     echo "$0: no input file specified." >&2
     exit 1
@@ -164,24 +207,51 @@ if test -z "$1"; then
   exit 0
 fi
 
+if test -z "$dir_arg"; then
+  do_exit='(exit $ret); exit $ret'
+  trap "ret=129; $do_exit" 1
+  trap "ret=130; $do_exit" 2
+  trap "ret=141; $do_exit" 13
+  trap "ret=143; $do_exit" 15
+
+  # Set umask so as not to create temps with too-generous modes.
+  # However, 'strip' requires both read and write access to temps.
+  case $mode in
+    # Optimize common cases.
+    *644) cp_umask=133;;
+    *755) cp_umask=22;;
+
+    *[0-7])
+      if test -z "$stripcmd"; then
+       u_plus_rw=
+      else
+       u_plus_rw='% 200'
+      fi
+      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
+    *)
+      if test -z "$stripcmd"; then
+       u_plus_rw=
+      else
+       u_plus_rw=,u+rw
+      fi
+      cp_umask=$mode$u_plus_rw;;
+  esac
+fi
+
 for src
 do
-  # Protect names starting with `-'.
+  # Protect names problematic for `test' and other utilities.
   case $src in
-    -*) src=./$src ;;
+    -* | [=\(\)!]) src=./$src;;
   esac
 
   if test -n "$dir_arg"; then
     dst=$src
-    src=
-
-    if test -d "$dst"; then
-      mkdircmd=:
-      chmodcmd=
-    else
-      mkdircmd=$mkdirprog
-    fi
+    dstdir=$dst
+    test -d "$dstdir"
+    dstdir_status=$?
   else
+
     # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
     # might cause directories to be created, which would be especially bad
     # if $src (and thus $dsttmp) contains '*'.
@@ -190,71 +260,194 @@ do
       exit 1
     fi
 
-    if test -z "$dstarg"; then
+    if test -z "$dst_arg"; then
       echo "$0: no destination specified." >&2
       exit 1
     fi
-
-    dst=$dstarg
-    # Protect names starting with `-'.
-    case $dst in
-      -*) dst=./$dst ;;
-    esac
+    dst=$dst_arg
 
     # If destination is a directory, append the input filename; won't work
     # if double slashes aren't ignored.
     if test -d "$dst"; then
       if test -n "$no_target_directory"; then
-       echo "$0: $dstarg: Is a directory" >&2
+       echo "$0: $dst_arg: Is a directory" >&2
        exit 1
       fi
-      dst=$dst/`basename "$src"`
+      dstdir=$dst
+      dst=$dstdir/`basename "$src"`
+      dstdir_status=0
+    else
+      # Prefer dirname, but fall back on a substitute if dirname fails.
+      dstdir=`
+       (dirname "$dst") 2>/dev/null ||
+       expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+            X"$dst" : 'X\(//\)[^/]' \| \
+            X"$dst" : 'X\(//\)$' \| \
+            X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
+       echo X"$dst" |
+           sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+                  s//\1/
+                  q
+                }
+                /^X\(\/\/\)[^/].*/{
+                  s//\1/
+                  q
+                }
+                /^X\(\/\/\)$/{
+                  s//\1/
+                  q
+                }
+                /^X\(\/\).*/{
+                  s//\1/
+                  q
+                }
+                s/.*/./; q'
+      `
+
+      test -d "$dstdir"
+      dstdir_status=$?
     fi
   fi
 
-  # This sed command emulates the dirname command.
-  dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+  obsolete_mkdir_used=false
+
+  if test $dstdir_status != 0; then
+    case $posix_mkdir in
+      '')
+       # Create intermediate dirs using mode 755 as modified by the umask.
+       # This is like FreeBSD 'install' as of 1997-10-28.
+       umask=`umask`
+       case $stripcmd.$umask in
+         # Optimize common cases.
+         *[2367][2367]) mkdir_umask=$umask;;
+         .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+         *[0-7])
+           mkdir_umask=`expr $umask + 22 \
+             - $umask % 100 % 40 + $umask % 20 \
+             - $umask % 10 % 4 + $umask % 2
+           `;;
+         *) mkdir_umask=$umask,go-w;;
+       esac
+
+       # With -d, create the new directory with the user-specified mode.
+       # Otherwise, rely on $mkdir_umask.
+       if test -n "$dir_arg"; then
+         mkdir_mode=-m$mode
+       else
+         mkdir_mode=
+       fi
+
+       posix_mkdir=false
+       case $umask in
+         *[123567][0-7][0-7])
+           # POSIX mkdir -p sets u+wx bits regardless of umask, which
+           # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+           ;;
+         *)
+           tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+           trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+           if (umask $mkdir_umask &&
+               exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+           then
+             if test -z "$dir_arg" || {
+                  # Check for POSIX incompatibilities with -m.
+                  # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+                  # other-writeable bit of parent directory when it shouldn't.
+                  # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+                  ls_ld_tmpdir=`ls -ld "$tmpdir"`
+                  case $ls_ld_tmpdir in
+                    d????-?r-*) different_mode=700;;
+                    d????-?--*) different_mode=755;;
+                    *) false;;
+                  esac &&
+                  $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+                    ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+                    test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+                  }
+                }
+             then posix_mkdir=:
+             fi
+             rmdir "$tmpdir/d" "$tmpdir"
+           else
+             # Remove any dirs left behind by ancient mkdir implementations.
+             rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+           fi
+           trap '' 0;;
+       esac;;
+    esac
 
-  # Make sure that the destination directory exists.
+    if
+      $posix_mkdir && (
+       umask $mkdir_umask &&
+       $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+      )
+    then :
+    else
 
-  # Skip lots of stat calls in the usual case.
-  if test ! -d "$dstdir"; then
-    defaultIFS='
-        '
-    IFS="${IFS-$defaultIFS}"
+      # The umask is ridiculous, or mkdir does not conform to POSIX,
+      # or it failed possibly due to a race condition.  Create the
+      # directory the slow way, step by step, checking for races as we go.
 
-    oIFS=$IFS
-    # Some sh's can't handle IFS=/ for some reason.
-    IFS='%'
-    set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
-    shift
-    IFS=$oIFS
+      case $dstdir in
+       /*) prefix='/';;
+       [-=\(\)!]*) prefix='./';;
+       *)  prefix='';;
+      esac
 
-    pathcomp=
+      eval "$initialize_posix_glob"
 
-    while test $# -ne 0 ; do
-      pathcomp=$pathcomp$1
+      oIFS=$IFS
+      IFS=/
+      $posix_glob set -f
+      set fnord $dstdir
       shift
-      if test ! -d "$pathcomp"; then
-        $mkdirprog "$pathcomp"
-       # mkdir can fail with a `File exist' error in case several
-       # install-sh are creating the directory concurrently.  This
-       # is OK.
-       test -d "$pathcomp" || exit
+      $posix_glob set +f
+      IFS=$oIFS
+
+      prefixes=
+
+      for d
+      do
+       test X"$d" = X && continue
+
+       prefix=$prefix$d
+       if test -d "$prefix"; then
+         prefixes=
+       else
+         if $posix_mkdir; then
+           (umask=$mkdir_umask &&
+            $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+           # Don't fail if two instances are running concurrently.
+           test -d "$prefix" || exit 1
+         else
+           case $prefix in
+             *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+             *) qprefix=$prefix;;
+           esac
+           prefixes="$prefixes '$qprefix'"
+         fi
+       fi
+       prefix=$prefix/
+      done
+
+      if test -n "$prefixes"; then
+       # Don't fail if two instances are running concurrently.
+       (umask $mkdir_umask &&
+        eval "\$doit_exec \$mkdirprog $prefixes") ||
+         test -d "$dstdir" || exit 1
+       obsolete_mkdir_used=true
       fi
-      pathcomp=$pathcomp/
-    done
+    fi
   fi
 
   if test -n "$dir_arg"; then
-    $doit $mkdircmd "$dst" \
-      && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
-      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
-      && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
-      && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
-
+    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
+    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
+    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
+      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
   else
-    dstfile=`basename "$dst"`
 
     # Make a couple of temp file names in the proper directory.
     dsttmp=$dstdir/_inst.$$_
@@ -262,10 +455,9 @@ do
 
     # Trap to clean up those temp files at exit.
     trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
-    trap '(exit $?); exit' 1 2 13 15
 
     # Copy the file name to the temp name.
-    $doit $cpprog "$src" "$dsttmp" &&
+    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
 
     # and set any options; do chmod last to preserve setuid bits.
     #
@@ -273,51 +465,63 @@ do
     # ignore errors from any of these, just make sure not to ignore
     # errors from the above "$doit $cpprog $src $dsttmp" command.
     #
-    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
-      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
-      && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
-      && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
-
-    # Now rename the file to the real destination.
-    { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
-      || {
-          # The rename failed, perhaps because mv can't rename something else
-          # to itself, or perhaps because mv is so ancient that it does not
-          # support -f.
-
-          # Now remove or move aside any old file at destination location.
-          # We try this two ways since rm can't unlink itself on some
-          # systems and the destination file might be busy for other
-          # reasons.  In this case, the final cleanup might fail but the new
-          # file should still install successfully.
-          {
-            if test -f "$dstdir/$dstfile"; then
-              $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
-              || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
-              || {
-                echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
-                (exit 1); exit 1
-              }
-            else
-              :
-            fi
-          } &&
-
-          # Now rename the file to the real destination.
-          $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
-        }
-    }
-  fi || { (exit 1); exit 1; }
+    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
+    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
+    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
+    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
+
+    # If -C, don't bother to copy if it wouldn't change the file.
+    if $copy_on_change &&
+       old=`LC_ALL=C ls -dlL "$dst"    2>/dev/null` &&
+       new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+
+       eval "$initialize_posix_glob" &&
+       $posix_glob set -f &&
+       set X $old && old=:$2:$4:$5:$6 &&
+       set X $new && new=:$2:$4:$5:$6 &&
+       $posix_glob set +f &&
+
+       test "$old" = "$new" &&
+       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
+    then
+      rm -f "$dsttmp"
+    else
+      # Rename the file to the real destination.
+      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
+
+      # The rename failed, perhaps because mv can't rename something else
+      # to itself, or perhaps because mv is so ancient that it does not
+      # support -f.
+      {
+       # Now remove or move aside any old file at destination location.
+       # We try this two ways since rm can't unlink itself on some
+       # systems and the destination file might be busy for other
+       # reasons.  In this case, the final cleanup might fail but the new
+       # file should still install successfully.
+       {
+         test ! -f "$dst" ||
+         $doit $rmcmd -f "$dst" 2>/dev/null ||
+         { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+           { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+         } ||
+         { echo "$0: cannot unlink or rename $dst" >&2
+           (exit 1); exit 1
+         }
+       } &&
+
+       # Now rename the file to the real destination.
+       $doit $mvcmd "$dsttmp" "$dst"
+      }
+    fi || exit 1
+
+    trap '' 0
+  fi
 done
 
-# The final little trick to "correctly" pass the exit status to the exit trap.
-{
-  (exit 0); exit 0
-}
-
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
index 09edd88..86a8fc3 100755 (executable)
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
 
-scriptversion=2005-02-08.22
+scriptversion=2012-01-06.13; # UTC
 
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
-#   Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
+# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -18,9 +18,7 @@ scriptversion=2005-02-08.22
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -33,6 +31,8 @@ if test $# -eq 0; then
 fi
 
 run=:
+sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
+sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
 
 # In the cases where this matters, `missing' is being run in the
 # srcdir already.
@@ -44,7 +44,7 @@ fi
 
 msg="missing on your system"
 
-case "$1" in
+case $1 in
 --run)
   # Try to run requested program, and just exit if it succeeds.
   run=
@@ -77,15 +77,18 @@ Supported PROGRAM values:
   aclocal      touch file \`aclocal.m4'
   autoconf     touch file \`configure'
   autoheader   touch file \`config.h.in'
+  autom4te     touch the output file, or create a stub one
   automake     touch all \`Makefile.in' files
   bison        create \`y.tab.[ch]', if possible, from existing .[ch]
   flex         create \`lex.yy.c', if possible, from existing .c
   help2man     touch the output file
   lex          create \`lex.yy.c', if possible, from existing .c
   makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
 
+Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
+\`g' are ignored when checking the name.
+
 Send bug reports to <bug-automake@gnu.org>."
     exit $?
     ;;
@@ -103,23 +106,21 @@ Send bug reports to <bug-automake@gnu.org>."
 
 esac
 
+# normalize program name to check for.
+program=`echo "$1" | sed '
+  s/^gnu-//; t
+  s/^gnu//; t
+  s/^g//; t'`
+
 # Now exit if we have it, but it failed.  Also exit now if we
 # don't have it and --version was passed (most likely to detect
-# the program).
-case "$1" in
-  lex|yacc)
+# the program).  This is about non-GNU programs, so use $1 not
+# $program.
+case $1 in
+  lex*|yacc*)
     # Not GNU programs, they don't have --version.
     ;;
 
-  tar)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
   *)
     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
        # We have it, but it failed.
@@ -135,7 +136,7 @@ esac
 
 # If it does not exist, or fails to run (possibly an outdated version),
 # try to emulate it.
-case "$1" in
+case $program in
   aclocal*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
@@ -145,7 +146,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch aclocal.m4
     ;;
 
-  autoconf)
+  autoconf*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified \`${configure_ac}'.  You might want to install the
@@ -154,7 +155,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch configure
     ;;
 
-  autoheader)
+  autoheader*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified \`acconfig.h' or \`${configure_ac}'.  You might want
@@ -164,7 +165,7 @@ WARNING: \`$1' is $msg.  You should only need it if
     test -z "$files" && files="config.h"
     touch_files=
     for f in $files; do
-      case "$f" in
+      case $f in
       *:*) touch_files="$touch_files "`echo "$f" |
                                       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
       *) touch_files="$touch_files $f.in";;
@@ -184,7 +185,7 @@ WARNING: \`$1' is $msg.  You should only need it if
           while read f; do touch "$f"; done
     ;;
 
-  autom4te)
+  autom4te*)
     echo 1>&2 "\
 WARNING: \`$1' is needed, but is $msg.
          You might have modified some files without having the
@@ -192,8 +193,8 @@ WARNING: \`$1' is needed, but is $msg.
          You can get \`$1' as part of \`Autoconf' from any GNU
          archive site."
 
-    file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
-    test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+    file=`echo "$*" | sed -n "$sed_output"`
+    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
     if test -f "$file"; then
        touch $file
     else
@@ -207,80 +208,78 @@ WARNING: \`$1' is needed, but is $msg.
     fi
     ;;
 
-  bison|yacc)
+  bison*|yacc*)
     echo 1>&2 "\
 WARNING: \`$1' $msg.  You should only need it if
          you modified a \`.y' file.  You may need the \`Bison' package
          in order for those modifications to take effect.  You can get
          \`Bison' from any GNU archive site."
     rm -f y.tab.c y.tab.h
-    if [ $# -ne 1 ]; then
-        eval LASTARG="\${$#}"
-       case "$LASTARG" in
+    if test $# -ne 1; then
+        eval LASTARG=\${$#}
+       case $LASTARG in
        *.y)
            SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-           if [ -f "$SRCFILE" ]; then
+           if test -f "$SRCFILE"; then
                 cp "$SRCFILE" y.tab.c
            fi
            SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-           if [ -f "$SRCFILE" ]; then
+           if test -f "$SRCFILE"; then
                 cp "$SRCFILE" y.tab.h
            fi
          ;;
        esac
     fi
-    if [ ! -f y.tab.h ]; then
+    if test ! -f y.tab.h; then
        echo >y.tab.h
     fi
-    if [ ! -f y.tab.c ]; then
+    if test ! -f y.tab.c; then
        echo 'main() { return 0; }' >y.tab.c
     fi
     ;;
 
-  lex|flex)
+  lex*|flex*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified a \`.l' file.  You may need the \`Flex' package
          in order for those modifications to take effect.  You can get
          \`Flex' from any GNU archive site."
     rm -f lex.yy.c
-    if [ $# -ne 1 ]; then
-        eval LASTARG="\${$#}"
-       case "$LASTARG" in
+    if test $# -ne 1; then
+        eval LASTARG=\${$#}
+       case $LASTARG in
        *.l)
            SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-           if [ -f "$SRCFILE" ]; then
+           if test -f "$SRCFILE"; then
                 cp "$SRCFILE" lex.yy.c
            fi
          ;;
        esac
     fi
-    if [ ! -f lex.yy.c ]; then
+    if test ! -f lex.yy.c; then
        echo 'main() { return 0; }' >lex.yy.c
     fi
     ;;
 
-  help2man)
+  help2man*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
         you modified a dependency of a manual page.  You may need the
         \`Help2man' package in order for those modifications to take
         effect.  You can get \`Help2man' from any GNU archive site."
 
-    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
-    if test -z "$file"; then
-       file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
-    fi
-    if [ -f "$file" ]; then
+    file=`echo "$*" | sed -n "$sed_output"`
+    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
+    if test -f "$file"; then
        touch $file
     else
        test -z "$file" || exec >$file
        echo ".ab help2man is required to generate this page"
-       exit 1
+       exit $?
     fi
     ;;
 
-  makeinfo)
+  makeinfo*)
     echo 1>&2 "\
 WARNING: \`$1' is $msg.  You should only need it if
          you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -289,52 +288,26 @@ WARNING: \`$1' is $msg.  You should only need it if
          DU, IRIX).  You might want to install the \`Texinfo' package or
          the \`GNU make' package.  Grab either from any GNU archive site."
     # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+    file=`echo "$*" | sed -n "$sed_output"`
+    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
     if test -z "$file"; then
       # ... or it is the one specified with @setfilename ...
       infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+      file=`sed -n '
+       /^@setfilename/{
+         s/.* \([^ ]*\) *$/\1/
+         p
+         q
+       }' $infile`
       # ... or it is derived from the source name (dir/f.texi becomes f.info)
       test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
     fi
+    # If the file does not exist, the user really needs makeinfo;
+    # let's fail without touching anything.
+    test -f $file || exit 1
     touch $file
     ;;
 
-  tar)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-       case "$firstarg" in
-       *o*)
-           firstarg=`echo "$firstarg" | sed s/o//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-       case "$firstarg" in
-       *h*)
-           firstarg=`echo "$firstarg" | sed s/h//`
-           tar "$firstarg" "$@" && exit 0
-           ;;
-       esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
   *)
     echo 1>&2 "\
 WARNING: \`$1' is needed, and is $msg.
@@ -353,5 +326,6 @@ exit 0
 # eval: (add-hook 'write-file-hooks 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
 # End:
index 0a6fc99..33e158f 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,60 +1,81 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for psmisc 22.6.
+# Generated by GNU Autoconf 2.69 for psmisc 22.20.
+#
+#
+# Copyright (C) 1992-1996, 1998-2012 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.  ##
-## --------------------- ##
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+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
+  # Pre-4.2 versions of Zsh do 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 ;;
+  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=';'
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='print -r --'
+  as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='printf %s\n'
+  as_echo_n='printf %s'
+else
+  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+    as_echo_n='/usr/ucb/echo -n'
   else
-    PATH_SEPARATOR=:
+    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+    as_echo_n_body='eval
+      arg=$1;
+      case $arg in #(
+      *"$as_nl"*)
+       expr "X$arg" : "X\\(.*\\)$as_nl";
+       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+      esac;
+      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+    '
+    export as_echo_n_body
+    as_echo_n='sh -c $as_echo_n_body as_echo'
   fi
-  rm -f conf$$.sh
+  export as_echo_body
+  as_echo='sh -c $as_echo_body as_echo'
 fi
 
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  PATH_SEPARATOR=:
+  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+      PATH_SEPARATOR=';'
+  }
 fi
 
 
@@ -63,20 +84,19 @@ fi
 # 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=
+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
+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  done
 IFS=$as_save_IFS
 
      ;;
@@ -87,32 +107,315 @@ 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; }
+  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  exit 1
 fi
 
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there.  '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 done
 PS1='$ '
 PS2='> '
 PS4='+ '
 
 # NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# CDPATH.
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
+
+# Use a proper internal environment variable to ensure we don't fall
+  # into an infinite loop, continuously re-executing ourselves.
+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+    _as_can_reexec=no; export _as_can_reexec;
+    # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+  fi
+  # We don't want this to propagate to other subprocesses.
+          { _as_can_reexec=; unset _as_can_reexec;}
+if test "x$CONFIG_SHELL" = x; then
+  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  emulate sh
+  NULLCMD=:
+  # Pre-4.2 versions of Zsh do 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_required="as_fn_return () { (exit \$1); }
+as_fn_success () { as_fn_return 0; }
+as_fn_failure () { as_fn_return 1; }
+as_fn_ret_success () { return 0; }
+as_fn_ret_failure () { return 1; }
+
+exitcode=0
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+
+else
+  exitcode=1; echo positional parameters were not saved.
+fi
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
+  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
+  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
+  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
+  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
+  if (eval "$as_required") 2>/dev/null; then :
+  as_have_required=yes
+else
+  as_have_required=no
+fi
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+
+else
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
-  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-    eval $as_var=C; export $as_var
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+  as_found=:
+  case $as_dir in #(
+        /*)
+          for as_base in sh bash ksh sh5; do
+            # Try only shells that exist, to save several forks.
+            as_shell=$as_dir/$as_base
+            if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
+                   { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+  CONFIG_SHELL=$as_shell as_have_required=yes
+                  if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+  break 2
+fi
+fi
+          done;;
+       esac
+  as_found=false
+done
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+             { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi; }
+IFS=$as_save_IFS
+
+
+      if test "x$CONFIG_SHELL" != x; then :
+  export CONFIG_SHELL
+             # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
+fi
+
+    if test x$as_have_required = xno; then :
+  $as_echo "$0: This script requires a shell more modern than all"
+  $as_echo "$0: the shells that I found on your system."
+  if test x${ZSH_VERSION+set} = xset ; then
+    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
   else
-    ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+    $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
+$0: including any error possibly output before this
+$0: message. Then install a modern shell, or manually run
+$0: the script under such a shell if you do have one."
   fi
-done
+  exit 1
+fi
+fi
+fi
+SHELL=${CONFIG_SHELL-/bin/sh}
+export SHELL
+# Unset more variables known to interfere with behavior of common tools.
+CLICOLOR_FORCE= GREP_OPTIONS=
+unset CLICOLOR_FORCE GREP_OPTIONS
+
+## --------------------- ##
+## M4sh Shell Functions. ##
+## --------------------- ##
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+  { eval $1=; unset $1;}
+}
+as_unset=as_fn_unset
+
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+  return $1
+} # as_fn_set_status
+
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+  set +e
+  as_fn_set_status $1
+  exit $1
+} # as_fn_exit
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+  case $as_dir in #(
+  -*) as_dir=./$as_dir;;
+  esac
+  test -d "$as_dir" || eval $as_mkdir_p || {
+    as_dirs=
+    while :; do
+      case $as_dir in #(
+      *\'*) as_qdir=`$as_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 ||
+$as_echo X"$as_dir" |
+    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 -z "$as_dirs" || eval "mkdir $as_dirs"
+  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+  eval 'as_fn_append ()
+  {
+    eval $1+=\$2
+  }'
+else
+  as_fn_append ()
+  {
+    eval $1=\$$1\$2
+  }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+  eval 'as_fn_arith ()
+  {
+    as_val=$(( $* ))
+  }'
+else
+  as_fn_arith ()
+  {
+    as_val=`expr "$@" || test $? -eq 1`
+  }
+fi # as_fn_arith
+
+
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+  as_status=$1; test $as_status -eq 0 && as_status=1
+  if test "$4"; then
+    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+  fi
+  $as_echo "$as_me: error: $2" >&2
+  as_fn_exit $as_status
+} # as_fn_error
 
-# Required to use basename.
 if expr a : '\(a\)' >/dev/null 2>&1 &&
    test "X`expr 00001 : '.*\(...\)'`" = X001; then
   as_expr=expr
@@ -126,13 +429,17 @@ else
   as_basename=false
 fi
 
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
+  as_dirname=dirname
+else
+  as_dirname=false
+fi
 
-# Name of the executable.
 as_me=`$as_basename -- "$0" ||
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
         X"$0" : 'X\(//\)$' \| \
         X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
+$as_echo X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
            s//\1/
            q
@@ -147,434 +454,133 @@ echo X/"$0" |
          }
          s/.*/./; q'`
 
-# CDPATH.
-$as_unset CDPATH
+# 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
 
 
-if test "x$CONFIG_SHELL" = x; then
-  if (eval ":") 2>/dev/null; then
-  as_have_required=yes
-else
-  as_have_required=no
-fi
+  as_lineno_1=$LINENO as_lineno_1a=$LINENO
+  as_lineno_2=$LINENO as_lineno_2a=$LINENO
+  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
+  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
+  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
+  sed -n '
+    p
+    /[$]LINENO/=
+  ' <$as_myself |
+    sed '
+      s/[$]LINENO.*/&-/
+      t lineno
+      b
+      :lineno
+      N
+      :loop
+      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
+      t loop
+      s/-\n.*//
+    ' >$as_me.lineno &&
+  chmod +x "$as_me.lineno" ||
+    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
-  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
+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+  # already done that, so ensure we don't try to do so again and fall
+  # in an infinite loop.  This has already happened in practice.
+  _as_can_reexec=no; export _as_can_reexec
+  # 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 sensitive to this).
+  . "./$as_me.lineno"
+  # Exit status is that of the last command.
+  exit
 }
 
-exitcode=0
-if as_func_success; then
-  :
-else
-  exitcode=1
-  echo as_func_success failed.
-fi
+ECHO_C= ECHO_N= ECHO_T=
+case `echo -n x` in #(((((
+-n*)
+  case `echo 'xy\c'` in
+  *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
+  xy)  ECHO_C='\c';;
+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
+       ECHO_T='        ';;
+  esac;;
+*)
+  ECHO_N='-n';;
+esac
 
-if as_func_failure; then
-  exitcode=1
-  echo as_func_failure succeeded.
+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 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+  if ln -s conf$$.file conf$$ 2>/dev/null; then
+    as_ln_s='ln -s'
+    # ... 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 -pR'.
+    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+      as_ln_s='cp -pR'
+  elif ln conf$$.file conf$$ 2>/dev/null; then
+    as_ln_s=ln
+  else
+    as_ln_s='cp -pR'
+  fi
+else
+  as_ln_s='cp -pR'
 fi
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
+rmdir conf$$.dir 2>/dev/null
 
-if as_func_ret_success; then
-  :
+if mkdir -p . 2>/dev/null; then
+  as_mkdir_p='mkdir -p "$as_dir"'
 else
-  exitcode=1
-  echo as_func_ret_success failed.
+  test -d ./-p && rmdir ./-p
+  as_mkdir_p=false
 fi
 
-if as_func_ret_failure; then
-  exitcode=1
-  echo as_func_ret_failure succeeded.
-fi
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
-if ( set x; as_func_ret_success y && test x = \"\$1\" ); then
-  :
-else
-  exitcode=1
-  echo positional parameters were not saved.
-fi
+# 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'"
 
-test \$exitcode = 0) || { (exit 1); exit 1; }
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 
-(
-  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=.
-  case $as_dir in
-        /*)
-          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
 
+test -n "$DJDIR" || exec 7<&0 </dev/null
+exec 6>&1
 
-      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
+# Name of the host.
+# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
 
-fi
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_clean_files=
+ac_config_libobj_dir=.
+LIBOBJS=
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
 
-
-:
-_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
-  test "x$as_lineno_1" != "x$as_lineno_2" &&
-  test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; }
-
-_ASEOF
-}; then
-  break
-fi
-
-fi
-
-      done
-
-      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 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
-  # 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
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$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 sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
-}
-
-
-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 &&
-   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
-  as_ln_s='ln -s'
-  # ... 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$$.dir/conf$$.file conf$$.file
-rmdir conf$$.dir 2>/dev/null
-
-if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
-else
-  test -d ./-p && rmdir ./-p
-  as_mkdir_p=false
-fi
-
-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'"
-
-# Sed expression to map a string onto a valid variable name.
-as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-
-
-
-exec 7<&0 </dev/null 6>&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`
-
-#
-# 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}
-
-# Identity of this package.
-PACKAGE_NAME='psmisc'
-PACKAGE_TARNAME='psmisc'
-PACKAGE_VERSION='22.6'
-PACKAGE_STRING='psmisc 22.6'
-PACKAGE_BUGREPORT=''
+# Identity of this package.
+PACKAGE_NAME='psmisc'
+PACKAGE_TARNAME='psmisc'
+PACKAGE_VERSION='22.20'
+PACKAGE_STRING='psmisc 22.20'
+PACKAGE_BUGREPORT=''
+PACKAGE_URL=''
 
 ac_unique_file="src/comm.h"
 # Factoring default headers for most tests.
@@ -614,144 +620,171 @@ ac_includes_default="\
 #endif"
 
 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
-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
-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
-LN_S
-WITH_SELINUX
-SELINUX_LIB
-WITH_IPV6
-TERMCAP_LIB
-CPP
-GREP
-EGREP
-WANT_PEEKFD_I386_TRUE
-WANT_PEEKFD_I386_FALSE
-WANT_PEEKFD_X86_64_TRUE
-WANT_PEEKFD_X86_64_FALSE
-WANT_PEEKFD_PPC_TRUE
+ac_subst_vars='am__EXEEXT_FALSE
+am__EXEEXT_TRUE
+LTLIBOBJS
+DEJAGNU
+LIBOBJS
+WANT_PEEKFD_MIPS_FALSE
+WANT_PEEKFD_MIPS_TRUE
+WANT_PEEKFD_ARM_FALSE
+WANT_PEEKFD_ARM_TRUE
 WANT_PEEKFD_PPC_FALSE
-USE_NLS
-MSGFMT
-GMSGFMT
-MSGFMT_015
-GMSGFMT_015
-XGETTEXT
-XGETTEXT_015
+WANT_PEEKFD_PPC_TRUE
+WANT_PEEKFD_X86_64_FALSE
+WANT_PEEKFD_X86_64_TRUE
+WANT_PEEKFD_I386_FALSE
+WANT_PEEKFD_I386_TRUE
+WANT_FUSER_FALSE
+WANT_FUSER_TRUE
+POSUB
+LTLIBINTL
+LIBINTL
+INTLLIBS
+LTLIBICONV
+LIBICONV
+INTL_MACOSX_LIBS
 MSGMERGE
-build
-build_cpu
-build_vendor
-build_os
-host
-host_cpu
-host_vendor
+XGETTEXT_015
+XGETTEXT
+GMSGFMT_015
+MSGFMT_015
+GMSGFMT
+MSGFMT
+USE_NLS
+HARDEN_CFLAGS
+EGREP
+GREP
+CPP
+TERMCAP_LIB
+WITH_IPV6
+WANT_TIMEOUT_STAT_FALSE
+WANT_TIMEOUT_STAT_TRUE
+WITH_TIMEOUT_STAT
+SELINUX_LIB
+WITH_SELINUX
+LN_S
+am__fastdepCC_FALSE
+am__fastdepCC_TRUE
+CCDEPMODE
+am__nodep
+AMDEPBACKSLASH
+AMDEP_FALSE
+AMDEP_TRUE
+am__quote
+am__include
+DEPDIR
+OBJEXT
+EXEEXT
+ac_ct_CC
+CPPFLAGS
+LDFLAGS
+CFLAGS
+CC
+am__untar
+am__tar
+AMTAR
+am__leading_dot
+SET_MAKE
+AWK
+mkdir_p
+MKDIR_P
+INSTALL_STRIP_PROGRAM
+STRIP
+install_sh
+MAKEINFO
+AUTOHEADER
+AUTOMAKE
+AUTOCONF
+ACLOCAL
+VERSION
+PACKAGE
+CYGPATH_W
+am__isrc
+INSTALL_DATA
+INSTALL_SCRIPT
+INSTALL_PROGRAM
+target_os
+target_vendor
+target_cpu
+target
 host_os
-INTL_MACOSX_LIBS
-LIBICONV
-LTLIBICONV
-INTLLIBS
-LIBINTL
-LTLIBINTL
-POSUB
-LIBOBJS
-LTLIBOBJS'
+host_vendor
+host_cpu
+host
+build_os
+build_vendor
+build_cpu
+build
+target_alias
+host_alias
+build_alias
+LIBS
+ECHO_T
+ECHO_N
+ECHO_C
+DEFS
+mandir
+localedir
+libdir
+psdir
+pdfdir
+dvidir
+htmldir
+infodir
+docdir
+oldincludedir
+includedir
+localstatedir
+sharedstatedir
+sysconfdir
+datadir
+datarootdir
+libexecdir
+sbindir
+bindir
+program_transform_name
+prefix
+exec_prefix
+PACKAGE_URL
+PACKAGE_BUGREPORT
+PACKAGE_STRING
+PACKAGE_VERSION
+PACKAGE_TARNAME
+PACKAGE_NAME
+PATH_SEPARATOR
+SHELL'
 ac_subst_files=''
+ac_user_opts='
+enable_option_checking
+enable_dependency_tracking
+enable_selinux
+enable_timeout_stat
+enable_harden_flags
+enable_ipv6
+enable_nls
+with_gnu_ld
+enable_rpath
+with_libiconv_prefix
+with_libintl_prefix
+enable_largefile
+'
       ac_precious_vars='build_alias
 host_alias
 target_alias
-CXX
-CXXFLAGS
+CC
+CFLAGS
 LDFLAGS
 LIBS
 CPPFLAGS
-CCC
-CC
-CFLAGS
 CPP'
 
 
 # Initialize some variables set by options.
 ac_init_help=
 ac_init_version=false
+ac_unrecognized_opts=
+ac_unrecognized_sep=
 # The variables have the same names as the options, with
 # dashes changed to underlines.
 cache_file=/dev/null
@@ -807,8 +840,9 @@ do
   fi
 
   case $ac_option in
-  *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
-  *)   ac_optarg=yes ;;
+  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
+  *=)   ac_optarg= ;;
+  *)    ac_optarg=yes ;;
   esac
 
   # Accept the important Cygnus configure options, so we can diagnose typos.
@@ -850,13 +884,20 @@ do
     datarootdir=$ac_optarg ;;
 
   -disable-* | --disable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
-    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 ;;
+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+      as_fn_error $? "invalid feature name: $ac_useropt"
+    ac_useropt_orig=$ac_useropt
+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    case $ac_user_opts in
+      *"
+"enable_$ac_useropt"
+"*) ;;
+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
+        ac_unrecognized_sep=', ';;
+    esac
+    eval enable_$ac_useropt=no ;;
 
   -docdir | --docdir | --docdi | --doc | --do)
     ac_prev=docdir ;;
@@ -869,13 +910,20 @@ do
     dvidir=$ac_optarg ;;
 
   -enable-* | --enable-*)
-    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
-    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=\$ac_optarg ;;
+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+      as_fn_error $? "invalid feature name: $ac_useropt"
+    ac_useropt_orig=$ac_useropt
+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    case $ac_user_opts in
+      *"
+"enable_$ac_useropt"
+"*) ;;
+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
+        ac_unrecognized_sep=', ';;
+    esac
+    eval enable_$ac_useropt=\$ac_optarg ;;
 
   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
@@ -1066,22 +1114,36 @@ do
     ac_init_version=: ;;
 
   -with-* | --with-*)
-    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
-    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=\$ac_optarg ;;
+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+      as_fn_error $? "invalid package name: $ac_useropt"
+    ac_useropt_orig=$ac_useropt
+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    case $ac_user_opts in
+      *"
+"with_$ac_useropt"
+"*) ;;
+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
+        ac_unrecognized_sep=', ';;
+    esac
+    eval with_$ac_useropt=\$ac_optarg ;;
 
   -without-* | --without-*)
-    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
-    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 ;;
+    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
+      as_fn_error $? "invalid package name: $ac_useropt"
+    ac_useropt_orig=$ac_useropt
+    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    case $ac_user_opts in
+      *"
+"with_$ac_useropt"
+"*) ;;
+      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
+        ac_unrecognized_sep=', ';;
+    esac
+    eval with_$ac_useropt=no ;;
 
   --x)
     # Obsolete; use --with-x.
@@ -1101,26 +1163,26 @@ do
   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
     x_libraries=$ac_optarg ;;
 
-  -*) { echo "$as_me: error: unrecognized option: $ac_option
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; }
+  -*) as_fn_error $? "unrecognized option: \`$ac_option'
+Try \`$0 --help' for more information"
     ;;
 
   *=*)
     ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
     # Reject names that are not valid shell variable names.
-    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
-      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
-   { (exit 1); exit 1; }; }
+    case $ac_envvar in #(
+      '' | [0-9]* | *[!_$as_cr_alnum]* )
+      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
+    esac
     eval $ac_envvar=\$ac_optarg
     export $ac_envvar ;;
 
   *)
     # FIXME: should be removed in autoconf 3.0.
-    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
     ;;
 
   esac
@@ -1128,23 +1190,36 @@ done
 
 if test -n "$ac_prev"; then
   ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-  { echo "$as_me: error: missing argument to $ac_option" >&2
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "missing argument to $ac_option"
+fi
+
+if test -n "$ac_unrecognized_opts"; then
+  case $enable_option_checking in
+    no) ;;
+    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
+    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+  esac
 fi
 
-# Be sure to have absolute directory names.
+# Check all directory arguments for consistency.
 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=\$$ac_var
+  # Remove trailing slashes.
+  case $ac_val in
+    */ )
+      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
+      eval $ac_var=\$ac_val;;
+  esac
+  # Be sure to have absolute directory names.
   case $ac_val in
     [\\/$]* | ?:[\\/]* )  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; }; }
+  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
 done
 
 # There might be people who depend on the old broken behavior: `$host'
@@ -1158,8 +1233,6 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used." >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1174,23 +1247,21 @@ 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; }; }
+  as_fn_error $? "working directory cannot be determined"
 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; }; }
+  as_fn_error $? "pwd does not report name of working directory"
 
 
 # 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 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 ||
-echo X"$0" |
+  ac_confdir=`$as_dirname -- "$as_myself" ||
+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$as_myself" : 'X\(//\)[^/]' \| \
+        X"$as_myself" : 'X\(//\)$' \| \
+        X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$as_myself" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -1217,13 +1288,11 @@ else
 fi
 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; }; }
+  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
 fi
 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; }; }
+       cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
        pwd)`
 # When building in place, set srcdir=.
 if test "$ac_abs_confdir" = "$ac_pwd"; then
@@ -1249,7 +1318,7 @@ if test "$ac_init_help" = "long"; then
   # 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 psmisc 22.6 to adapt to many kinds of systems.
+\`configure' configures psmisc 22.20 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1263,7 +1332,7 @@ Configuration:
       --help=short        display options specific to this package
       --help=recursive    display the short help of all the included packages
   -V, --version           display version information and exit
-  -q, --quiet, --silent   do not print \`checking...' messages
+  -q, --quiet, --silent   do not print \`checking ...' messages
       --cache-file=FILE   cache test results in FILE [disabled]
   -C, --config-cache      alias for \`--cache-file=config.cache'
   -n, --no-create         do not create output files
@@ -1271,9 +1340,9 @@ Configuration:
 
 Installation directories:
   --prefix=PREFIX         install architecture-independent files in PREFIX
-                         [$ac_default_prefix]
+                          [$ac_default_prefix]
   --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                         [PREFIX]
+                          [PREFIX]
 
 By default, \`make install' will install all the files in
 \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
@@ -1283,25 +1352,25 @@ for instance \`--prefix=\$HOME'.
 For better control, use the options below.
 
 Fine tuning of the installation directories:
-  --bindir=DIR           user executables [EPREFIX/bin]
-  --sbindir=DIR          system admin executables [EPREFIX/sbin]
-  --libexecdir=DIR       program executables [EPREFIX/libexec]
-  --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]
-  --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/psmisc]
-  --htmldir=DIR          html documentation [DOCDIR]
-  --dvidir=DIR           dvi documentation [DOCDIR]
-  --pdfdir=DIR           pdf documentation [DOCDIR]
-  --psdir=DIR            ps documentation [DOCDIR]
+  --bindir=DIR            user executables [EPREFIX/bin]
+  --sbindir=DIR           system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR        program executables [EPREFIX/libexec]
+  --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]
+  --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/psmisc]
+  --htmldir=DIR           html documentation [DOCDIR]
+  --dvidir=DIR            dvi documentation [DOCDIR]
+  --pdfdir=DIR            pdf documentation [DOCDIR]
+  --psdir=DIR             ps documentation [DOCDIR]
 _ACEOF
 
   cat <<\_ACEOF
@@ -1314,21 +1383,26 @@ Program names:
 System types:
   --build=BUILD     configure for building on BUILD [guessed]
   --host=HOST       cross-compile to build programs to run on HOST [BUILD]
+  --target=TARGET   configure for building compilers for TARGET [HOST]
 _ACEOF
 fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of psmisc 22.6:";;
+     short | recursive ) echo "Configuration of psmisc 22.20:";;
    esac
   cat <<\_ACEOF
 
 Optional Features:
+  --disable-option-checking  ignore unrecognized --enable/--with options
   --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
   --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
   --disable-dependency-tracking  speeds up one-time build
   --enable-dependency-tracking   do not reject slow dependency extractors
   --enable-selinux        Enable Security-Enhanced Linux features
+  --enable-timeout-stat   Use a timeout on stat calls (optional with argument
+                          "static" for a static background process)
+  --disable-harden-flags  disable hardened compilier and linker flags
   --disable-ipv6          Disable IPv6 checks (for uClibc)
   --disable-nls           do not use Native Language Support
   --disable-rpath         do not hardcode runtime library paths
@@ -1344,20 +1418,19 @@ Optional Packages:
   --without-libintl-prefix     don't search for libintl in includedir and libdir
 
 Some influential environment variables:
-  CXX         C++ compiler command
-  CXXFLAGS    C++ compiler flags
+  CC          C compiler command
+  CFLAGS      C compiler flags
   LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
               nonstandard directory <lib dir>
   LIBS        libraries to pass to the linker, e.g. -l<library>
-  CPPFLAGS    C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
+  CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
               you have headers in a nonstandard directory <include dir>
-  CC          C compiler command
-  CFLAGS      C compiler flags
   CPP         C preprocessor
 
 Use these variables to override the choices made by `configure' or to help
 it to find libraries and programs with nonstandard names/locations.
 
+Report bugs to the package provider.
 _ACEOF
 ac_status=$?
 fi
@@ -1365,15 +1438,17 @@ fi
 if test "$ac_init_help" = "recursive"; then
   # If there are subdirs, report their specific --help.
   for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-    test -d "$ac_dir" || continue
+    test -d "$ac_dir" ||
+      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
+      continue
     ac_builddir=.
 
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
+  ac_top_builddir_sub=`$as_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/ ;;
@@ -1409,7 +1484,7 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
       echo &&
       $SHELL "$ac_srcdir/configure" --help=recursive
     else
-      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
     fi || ac_status=$?
     cd "$ac_pwd" || { ac_status=$?; break; }
   done
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-psmisc configure 22.6
-generated by GNU Autoconf 2.61
+psmisc configure 22.20
+generated by GNU Autoconf 2.69
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+Copyright (C) 2012 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
 fi
-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 psmisc $as_me 22.6, which was
-generated by GNU Autoconf 2.61.  Invocation command line was
 
-  $ $0 $@
+## ------------------------ ##
+## Autoconf initialization. ##
+## ------------------------ ##
 
-_ACEOF
-exec 5>>config.log
+# ac_fn_c_try_compile LINENO
+# --------------------------
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_compile ()
 {
-cat <<_ASUNAME
-## --------- ##
-## Platform. ##
-## --------- ##
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  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 ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_compile") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && {
+        test -z "$ac_c_werror_flag" ||
+        test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
+       ac_retval=1
+fi
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
 
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+} # ac_fn_c_try_compile
 
-/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`
-/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`
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  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 ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && {
+        test -z "$ac_c_werror_flag" ||
+        test ! -s conftest.err
+       } && test -s conftest$ac_exeext && {
+        test "$cross_compiling" = yes ||
+        test -x conftest$ac_exeext
+       }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-_ASUNAME
+       ac_retval=1
+fi
+  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+  # interfere with the next link command; also delete a directory that is
+  # left behind by Apple's compiler.  We do this before executing the actions.
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
 
-as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  echo "PATH: $as_dir"
-done
-IFS=$as_save_IFS
+} # ac_fn_c_try_link
 
-} >&5
+# ac_fn_c_try_cpp LINENO
+# ----------------------
+# Try to preprocess conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_cpp ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if { { ac_try="$ac_cpp conftest.$ac_ext"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } > conftest.i && {
+        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
+        test ! -s conftest.err
+       }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-cat >&5 <<_ACEOF
+    ac_retval=1
+fi
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
 
+} # ac_fn_c_try_cpp
 
-## ----------- ##
-## Core tests. ##
-## ----------- ##
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
+# that executables *can* be run.
+ac_fn_c_try_run ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: program exited with status $ac_status" >&5
+       $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-_ACEOF
+       ac_retval=$ac_status
+fi
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
+
+# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists, giving a warning if it cannot be compiled using
+# the include files in INCLUDES and setting the cache variable VAR
+# accordingly.
+ac_fn_c_check_header_mongrel ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  if eval \${$3+:} false; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+fi
+eval ac_res=\$$3
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+else
+  # Is the header compilable?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
+$as_echo_n "checking $2 usability... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_header_compiler=yes
+else
+  ac_header_compiler=no
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
+$as_echo "$ac_header_compiler" >&6; }
+
+# Is the header present?
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
+$as_echo_n "checking $2 presence... " >&6; }
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <$2>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+  ac_header_preproc=yes
+else
+  ac_header_preproc=no
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
+$as_echo "$ac_header_preproc" >&6; }
+
+# So?  What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
+  yes:no: )
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
+$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+    ;;
+  no:yes:* )
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
+$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
+$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
+$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
+$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
+$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
+    ;;
+esac
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  eval "$3=\$ac_header_compiler"
+fi
+eval ac_res=\$$3
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+fi
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_mongrel
+
+# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
+# -------------------------------------------------------
+# Tests whether HEADER exists and can be compiled using the include files in
+# INCLUDES, setting the cache variable VAR accordingly.
+ac_fn_c_check_header_compile ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+#include <$2>
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$3=yes"
+else
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_header_compile
+
+# ac_fn_c_check_type LINENO TYPE VAR INCLUDES
+# -------------------------------------------
+# Tests whether TYPE exists after having included INCLUDES, setting cache
+# variable VAR accordingly.
+ac_fn_c_check_type ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  eval "$3=no"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+if (sizeof ($2))
+        return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$4
+int
+main ()
+{
+if (sizeof (($2)))
+           return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+
+else
+  eval "$3=yes"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_type
+
+# ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
+# ----------------------------------------------------
+# Tries to find if the field MEMBER exists in type AGGR, after including
+# INCLUDES, setting cache variable VAR accordingly.
+ac_fn_c_check_member ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
+$as_echo_n "checking for $2.$3... " >&6; }
+if eval \${$4+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$5
+int
+main ()
+{
+static $2 ac_aggr;
+if (ac_aggr.$3)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$4=yes"
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$5
+int
+main ()
+{
+static $2 ac_aggr;
+if (sizeof ac_aggr.$3)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$4=yes"
+else
+  eval "$4=no"
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+eval ac_res=\$$4
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_member
+
+# ac_fn_c_check_func LINENO FUNC VAR
+# ----------------------------------
+# Tests whether FUNC exists, setting the cache variable VAR accordingly
+ac_fn_c_check_func ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+$as_echo_n "checking for $2... " >&6; }
+if eval \${$3+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+/* Define $2 to an innocuous variant, in case <limits.h> declares $2.
+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
+#define $2 innocuous_$2
+
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $2 (); below.
+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+    <limits.h> exists even on freestanding compilers.  */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $2
+
+/* 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
+char $2 ();
+/* 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_$2 || defined __stub___$2
+choke me
+#endif
+
+int
+main ()
+{
+return $2 ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  eval "$3=yes"
+else
+  eval "$3=no"
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+fi
+eval ac_res=\$$3
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+
+} # ac_fn_c_check_func
+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 psmisc $as_me 22.20, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
+
+  $ $0 $@
+
+_ACEOF
+exec 5>>config.log
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/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`
+/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`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    $as_echo "PATH: $as_dir"
+  done
+IFS=$as_save_IFS
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
 
 
 # Keep a trace of the command line.
@@ -1504,12 +2041,12 @@ do
     | -silent | --silent | --silen | --sile | --sil)
       continue ;;
     *\'*)
-      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     case $ac_pass in
-    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
     2)
-      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+      as_fn_append ac_configure_args1 " '$ac_arg'"
       if test $ac_must_keep_next = true; then
        ac_must_keep_next=false # Got value, back to normal.
       else
@@ -1525,13 +2062,13 @@ do
          -* ) ac_must_keep_next=true ;;
        esac
       fi
-      ac_configure_args="$ac_configure_args '$ac_arg'"
+      as_fn_append ac_configure_args " '$ac_arg'"
       ;;
     esac
   done
 done
-$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+{ ac_configure_args0=; unset ac_configure_args0;}
+{ ac_configure_args1=; unset ac_configure_args1;}
 
 # When interrupted or exit'd, cleanup temporary files, and complete
 # config.log.  We remove comments because anyway the quotes in there
@@ -1543,11 +2080,9 @@ trap 'exit_status=$?
   {
     echo
 
-    cat <<\_ASBOX
-## ---------------- ##
+    $as_echo "## ---------------- ##
 ## Cache variables. ##
-## ---------------- ##
-_ASBOX
+## ---------------- ##"
     echo
     # The following way of writing the cache mishandles newlines in values,
 (
@@ -1556,12 +2091,13 @@ _ASBOX
     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;} ;;
+      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
-      *) $as_unset $ac_var ;;
+      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+      *) { eval $ac_var=; unset $ac_var;} ;;
       esac ;;
     esac
   done
@@ -1580,128 +2116,136 @@ echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
 )
     echo
 
-    cat <<\_ASBOX
-## ----------------- ##
+    $as_echo "## ----------------- ##
 ## Output variables. ##
-## ----------------- ##
-_ASBOX
+## ----------------- ##"
     echo
     for ac_var in $ac_subst_vars
     do
       eval ac_val=\$$ac_var
       case $ac_val in
-      *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
       esac
-      echo "$ac_var='\''$ac_val'\''"
+      $as_echo "$ac_var='\''$ac_val'\''"
     done | sort
     echo
 
     if test -n "$ac_subst_files"; then
-      cat <<\_ASBOX
-## ------------------- ##
+      $as_echo "## ------------------- ##
 ## File substitutions. ##
-## ------------------- ##
-_ASBOX
+## ------------------- ##"
       echo
       for ac_var in $ac_subst_files
       do
        eval ac_val=\$$ac_var
        case $ac_val in
-       *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+       *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
        esac
-       echo "$ac_var='\''$ac_val'\''"
+       $as_echo "$ac_var='\''$ac_val'\''"
       done | sort
       echo
     fi
 
     if test -s confdefs.h; then
-      cat <<\_ASBOX
-## ----------- ##
+      $as_echo "## ----------- ##
 ## confdefs.h. ##
-## ----------- ##
-_ASBOX
+## ----------- ##"
       echo
       cat confdefs.h
       echo
     fi
     test "$ac_signal" != 0 &&
-      echo "$as_me: caught signal $ac_signal"
-    echo "$as_me: exit $exit_status"
+      $as_echo "$as_me: caught signal $ac_signal"
+    $as_echo "$as_me: exit $exit_status"
   } >&5
   rm -f core *.core core.conftest.* &&
     rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
     exit $exit_status
 ' 0
 for ac_signal in 1 2 13 15; do
-  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
 done
 ac_signal=0
 
 # confdefs.h avoids OS command line length limits that DEFS can exceed.
 rm -f -r conftest* confdefs.h
 
+$as_echo "/* confdefs.h */" > confdefs.h
+
 # Predefined preprocessor variables.
 
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_NAME "$PACKAGE_NAME"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_TARNAME "$PACKAGE_TARNAME"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_VERSION "$PACKAGE_VERSION"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_STRING "$PACKAGE_STRING"
 _ACEOF
 
-
 cat >>confdefs.h <<_ACEOF
 #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
 _ACEOF
 
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_URL "$PACKAGE_URL"
+_ACEOF
+
 
 # Let the site file select an alternate cache file if it wants to.
-# Prefer explicitly selected file to automatically selected ones.
+# Prefer an explicitly selected file to automatically selected ones.
+ac_site_file1=NONE
+ac_site_file2=NONE
 if test -n "$CONFIG_SITE"; then
-  set x "$CONFIG_SITE"
+  # We do not want a PATH search for config.site.
+  case $CONFIG_SITE in #((
+    -*)  ac_site_file1=./$CONFIG_SITE;;
+    */*) ac_site_file1=$CONFIG_SITE;;
+    *)   ac_site_file1=./$CONFIG_SITE;;
+  esac
 elif test "x$prefix" != xNONE; then
-  set x "$prefix/share/config.site" "$prefix/etc/config.site"
+  ac_site_file1=$prefix/share/config.site
+  ac_site_file2=$prefix/etc/config.site
 else
-  set x "$ac_default_prefix/share/config.site" \
-       "$ac_default_prefix/etc/config.site"
+  ac_site_file1=$ac_default_prefix/share/config.site
+  ac_site_file2=$ac_default_prefix/etc/config.site
 fi
-shift
-for ac_site_file
+for ac_site_file in "$ac_site_file1" "$ac_site_file2"
 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;}
+  test "x$ac_site_file" = xNONE && continue
+  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+$as_echo "$as_me: loading site script $ac_site_file" >&6;}
     sed 's/^/| /' "$ac_site_file" >&5
-    . "$ac_site_file"
+    . "$ac_site_file" \
+      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "failed to load site script $ac_site_file
+See \`config.log' for more details" "$LINENO" 5; }
   fi
 done
 
 if test -r "$cache_file"; then
-  # Some versions of bash will fail to source /dev/null (special
-  # files actually), so we avoid doing that.
-  if test -f "$cache_file"; then
-    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-echo "$as_me: loading cache $cache_file" >&6;}
+  # Some versions of bash will fail to source /dev/null (special files
+  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
+  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+$as_echo "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . "$cache_file";;
       *)                      . "./$cache_file";;
     esac
   fi
 else
-  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-echo "$as_me: creating cache $cache_file" >&6;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+$as_echo "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
 
@@ -1716,68 +2260,56 @@ for ac_var in $ac_precious_vars; do
   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
-echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,set)
-      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,);;
     *)
       if test "x$ac_old_val" != "x$ac_new_val"; then
-       { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-       { echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
-echo "$as_me:   former value:  $ac_old_val" >&2;}
-       { echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
-echo "$as_me:   current value: $ac_new_val" >&2;}
-       ac_cache_corrupted=:
+       # differences in whitespace do not lead to failure.
+       ac_old_val_w=`echo x $ac_old_val`
+       ac_new_val_w=`echo x $ac_new_val`
+       if test "$ac_old_val_w" != "$ac_new_val_w"; then
+         { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+         ac_cache_corrupted=:
+       else
+         { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+         eval $ac_var=\$ac_old_val
+       fi
+       { $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
+$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
+       { $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
+$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
       fi;;
   esac
   # 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=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
     *) ac_arg=$ac_var=$ac_new_val ;;
     esac
     case " $ac_configure_args " in
       *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
     esac
   fi
 done
 if $ac_cache_corrupted; then
-  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
-   { (exit 1); exit 1; }; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
 fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+## -------------------- ##
+## Main body of script. ##
+## -------------------- ##
 
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -1806,9 +2338,7 @@ for ac_dir in config "$srcdir"/config; do
   fi
 done
 if test -z "$ac_aux_dir"; then
-  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in config \"$srcdir\"/config" >&5
-echo "$as_me: error: cannot find install-sh or install.sh in config \"$srcdir\"/config" >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "cannot find install-sh, install.sh, or shtool in config \"$srcdir\"/config" "$LINENO" 5
 fi
 
 # These three variables are undocumented and unsupported,
@@ -1820,45 +2350,156 @@ 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.
 
 
-am__api_version='1.10'
+# Make sure we can run config.sub.
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
+  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
 
-# 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:
-# SysV /etc/install, /usr/sbin/install
-# SunOS /usr/etc/install
-# IRIX /sbin/install
-# AIX /bin/install
-# AmigaOS /C/install, which installs bootblocks on floppy discs
-# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
-# AFS /usr/afsws/bin/install, which mishandles nonexistent args
-# 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; }
-if test -z "$INSTALL"; then
-if test "${ac_cv_path_install+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+$as_echo_n "checking build system type... " >&6; }
+if ${ac_cv_build+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
-  IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-  # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in
-  ./ | .// | /cC/* | \
-  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
-  /usr/ucb/* ) ;;
-  *)
-    # OSF1 and SCO ODT 3.0 have their own names for install.
-    # Don't use installbsd from OSF since it installs stuff as root
+  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 &&
+  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
+  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+$as_echo "$ac_cv_build" >&6; }
+case $ac_cv_build in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
+esac
+build=$ac_cv_build
+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
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+$as_echo_n "checking host system type... " >&6; }
+if ${ac_cv_host+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  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` ||
+    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+$as_echo "$ac_cv_host" >&6; }
+case $ac_cv_host in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
+esac
+host=$ac_cv_host
+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
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
+$as_echo_n "checking target system type... " >&6; }
+if ${ac_cv_target+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "x$target_alias" = x; then
+  ac_cv_target=$ac_cv_host
+else
+  ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
+    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
+$as_echo "$ac_cv_target" >&6; }
+case $ac_cv_target in
+*-*-*) ;;
+*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
+esac
+target=$ac_cv_target
+ac_save_IFS=$IFS; IFS='-'
+set x $ac_cv_target
+shift
+target_cpu=$1
+target_vendor=$2
+shift; shift
+# Remember, the first character of IFS is used to create $*,
+# except with old shells:
+target_os=$*
+IFS=$ac_save_IFS
+case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
+
+
+# The aliases save the names the user supplied, while $host etc.
+# will get canonicalized.
+test -n "$target_alias" &&
+  test "$program_prefix$program_suffix$program_transform_name" = \
+    NONENONEs,x,x, &&
+  program_prefix=${target_alias}-
+am__api_version='1.11'
+
+# 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:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# 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.
+# Reject install programs that cannot install multiple files.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
+if test -z "$INSTALL"; then
+if ${ac_cv_path_install+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in #((
+  ./ | .// | /[cC]/* | \
+  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
+  /usr/ucb/* ) ;;
+  *)
+    # OSF1 and SCO ODT 3.0 have their own names for install.
+    # Don't use installbsd from OSF since it installs stuff as root
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-       if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+       if as_fn_executable_p "$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.
@@ -1868,17 +2509,29 @@ case $as_dir/ in
            # program-specific install script used by HP pwplus--don't use.
            :
          else
-           ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-           break 3
+           rm -rf conftest.one conftest.two conftest.dir
+           echo one > conftest.one
+           echo two > conftest.two
+           mkdir conftest.dir
+           if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+             test -s conftest.one && test -s conftest.two &&
+             test -s conftest.dir/conftest.one &&
+             test -s conftest.dir/conftest.two
+           then
+             ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+             break 3
+           fi
          fi
        fi
       done
     done
     ;;
 esac
-done
+
+  done
 IFS=$as_save_IFS
 
+rm -rf conftest.one conftest.two conftest.dir
 
 fi
   if test "${ac_cv_path_install+set}" = set; then
@@ -1891,8 +2544,8 @@ fi
     INSTALL=$ac_install_sh
   fi
 fi
-{ echo "$as_me:$LINENO: result: $INSTALL" >&5
-echo "${ECHO_T}$INSTALL" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+$as_echo "$INSTALL" >&6; }
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 # It thinks the first close brace ends the variable substitution.
@@ -1902,21 +2555,34 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 
 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+$as_echo_n "checking whether build environment is sane... " >&6; }
 # Just in case
 sleep 1
 echo timestamp > conftest.file
+# Reject unsafe characters in $srcdir or the absolute working directory
+# name.  Accept space and tab only in the latter.
+am_lf='
+'
+case `pwd` in
+  *[\\\"\#\$\&\'\`$am_lf]*)
+    as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
+esac
+case $srcdir in
+  *[\\\"\#\$\&\'\`$am_lf\ \    ]*)
+    as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
+esac
+
 # Do `set' in a subshell so we don't clobber the current shell's
 # arguments.  Must try -L first in case configure is actually a
 # symlink; some systems play weird games with the mod time of symlinks
 # (eg FreeBSD returns the mod time of the symlink's containing
 # directory).
 if (
-   set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+   set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
    if test "$*" = "X"; then
       # -L didn't work.
-      set X `ls -t $srcdir/configure conftest.file`
+      set X `ls -t "$srcdir/configure" conftest.file`
    fi
    rm -f conftest.file
    if test "$*" != "X $srcdir/configure conftest.file" \
@@ -1926,11 +2592,8 @@ if (
       # if, for instance, CONFIG_SHELL is bash and it inherits a
       # broken ls alias from the environment.  This has actually
       # happened.  Such a system could not be considered "sane".
-      { { echo "$as_me:$LINENO: error: ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" >&5
-echo "$as_me: error: ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" >&2;}
-   { (exit 1); exit 1; }; }
+      as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
+alias in your environment" "$LINENO" 5
    fi
 
    test "$2" = conftest.file
@@ -1939,54 +2602,164 @@ then
    # Ok.
    :
 else
-   { { echo "$as_me:$LINENO: error: newly created file is older than distributed files!
-Check your system clock" >&5
-echo "$as_me: error: newly created file is older than distributed files!
-Check your system clock" >&2;}
-   { (exit 1); exit 1; }; }
+   as_fn_error $? "newly created file is older than distributed files!
+Check your system clock" "$LINENO" 5
 fi
-{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
 test "$program_prefix" != NONE &&
   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"
-# Double any \ or $.  echo might interpret backslashes.
+# Double any \ or $.
 # 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 -f conftest.sed
+ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
+program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 
 # expand $ac_aux_dir to an absolute path
 am_aux_dir=`cd $ac_aux_dir && pwd`
 
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+if test x"${MISSING+set}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\    *)
+    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
+  *)
+    MISSING="\${SHELL} $am_aux_dir/missing" ;;
+  esac
+fi
 # Use eval to expand $SHELL
 if eval "$MISSING --run true"; then
   am_missing_run="$MISSING --run "
 else
   am_missing_run=
-  { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
-echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if test x"${install_sh}" != xset; then
+  case $am_aux_dir in
+  *\ * | *\    *)
+    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
+  *)
+    install_sh="\${SHELL} $am_aux_dir/install-sh"
+  esac
+fi
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'.  However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+  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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_STRIP+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+    $as_echo "$as_me:${as_lineno-$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
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+$as_echo "$STRIP" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$ac_ct_STRIP"; then
+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_STRIP="strip"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+$as_echo "$ac_ct_STRIP" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+  if test "x$ac_ct_STRIP" = x; then
+    STRIP=":"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    STRIP=$ac_ct_STRIP
+  fi
+else
+  STRIP="$ac_cv_prog_STRIP"
+fi
+
 fi
+INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 
-{ 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
+$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
 if test -z "$MKDIR_P"; then
-  if test "${ac_cv_path_mkdir+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+  if ${ac_cv_path_mkdir+:} false; then :
+  $as_echo_n "(cached) " >&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_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
+          as_fn_executable_p "$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) '* | \
@@ -1996,11 +2769,12 @@ do
           esac
         done
        done
-done
+  done
 IFS=$as_save_IFS
 
 fi
 
+  test -d ./--version && rmdir ./--version
   if test "${ac_cv_path_mkdir+set}" = set; then
     MKDIR_P="$ac_cv_path_mkdir -p"
   else
@@ -2008,12 +2782,11 @@ fi
     # 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+$as_echo "$MKDIR_P" >&6; }
 
 mkdir_p="$MKDIR_P"
 case $mkdir_p in
@@ -2025,10 +2798,10 @@ 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; }
-if test "${ac_cv_prog_AWK+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_AWK+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   if test -n "$AWK"; then
   ac_cv_prog_AWK="$AWK" # Let the user override the test.
@@ -2038,43 +2811,44 @@ 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
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$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
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-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; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+$as_echo "$AWK" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "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 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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   cat >conftest.make <<\_ACEOF
 SHELL = /bin/sh
 all:
        @echo '@@@%%%=$(MAKE)=@@@%%%'
 _ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
 case `${MAKE-make} -f conftest.make 2>/dev/null` in
   *@@@%%%=?*=@@@%%%*)
     eval ac_cv_prog_make_${ac_make}_set=yes;;
@@ -2084,12 +2858,12 @@ esac
 rm -f conftest.make
 fi
 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
   SET_MAKE=
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
@@ -2108,9 +2882,7 @@ if test "`cd $srcdir && pwd`" != "`pwd`"; then
   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; }; }
+    as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
   fi
 fi
 
@@ -2126,7 +2898,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='psmisc'
- VERSION='22.6'
+ VERSION='22.20'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2154,279 +2926,354 @@ AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 
 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
-install_sh=${install_sh-"\$(SHELL) $am_aux_dir/install-sh"}
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AMTAR='$${TAR-tar}'
 
-# Installed binaries are usually stripped using `strip' when the user
-# run `make install-strip'.  However `strip' might not be the right
-# tool to use in cross-compilation environments, therefore Automake
-# will honor the `STRIP' environment variable to overrule this program.
-if test "$cross_compiling" != no; then
-  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; }
-if test "${ac_cv_prog_STRIP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
+
+
+
+
+
+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_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
+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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test -n "$STRIP"; then
-  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$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 { 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
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}gcc"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-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; }
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "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; }
-if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test -n "$ac_ct_STRIP"; then
-  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+  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 { 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
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="gcc"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
 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; }
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
-  if test "x$ac_ct_STRIP" = x; then
-    STRIP=":"
+  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;}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
-    STRIP=$ac_ct_STRIP
+    CC=$ac_ct_CC
   fi
 else
-  STRIP="$ac_cv_prog_STRIP"
-fi
-
+  CC="$ac_cv_prog_CC"
 fi
-INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
-
-# We need awk for the "check" target.  The system "awk" is bad on
-# some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
 
-am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+if test -z "$CC"; then
+          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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}cc"
+    $as_echo "$as_me:${as_lineno-$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
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+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_fn_executable_p "$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
+     fi
+    ac_cv_prog_CC="cc"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    break 2
+  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.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test $# != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+  fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+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
-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
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  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; }
-if test "${ac_cv_prog_CXX+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test -n "$CXX"; then
-  ac_cv_prog_CXX="$CXX" # Let the user override the test.
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$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 { 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
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-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; }
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+$as_echo "$CC" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 
-    test -n "$CXX" && break
+    test -n "$CC" && break
   done
 fi
-if test -z "$CXX"; then
-  ac_ct_CXX=$CXX
-  for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  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; }
-if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_prog_ac_ct_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test -n "$ac_ct_CXX"; then
-  ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
+  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 { 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
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="$ac_prog"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-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; }
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+$as_echo "$ac_ct_CC" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 
-  test -n "$ac_ct_CXX" && break
+  test -n "$ac_ct_CC" && break
 done
 
-  if test "x$ac_ct_CXX" = x; then
-    CXX="g++"
+  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;}
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
-    CXX=$ac_ct_CXX
+    CC=$ac_ct_CC
   fi
 fi
 
-  fi
 fi
+
+
+test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "no acceptable C compiler found in \$PATH
+See \`config.log' for more details" "$LINENO" 5; }
+
 # Provide some information about the compiler.
-echo "$as_me:$LINENO: checking for C++ compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (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); }
-{ (ac_try="$ac_compiler -v >&5"
+$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+set X $ac_compile
+ac_compiler=$2
+for ac_option in --version -v -V -qversion; do
+  { { ac_try="$ac_compiler $ac_option >&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
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }
-{ (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); }
+  if test -s conftest.err; then
+    sed '10a\
+... rest of stderr output deleted ...
+         10q' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+  fi
+  rm -f conftest.er1 conftest.err
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+done
 
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -2438,42 +3285,38 @@ main ()
 }
 _ACEOF
 ac_clean_files_save=$ac_clean_files
-ac_clean_files="$ac_clean_files a.out a.exe b.out"
+ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
 # 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; }
-ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-#
-# 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.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+$as_echo_n "checking whether the C compiler works... " >&6; }
+ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+
+# The possible output files:
+ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
+
 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_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
     * ) ac_rmfiles="$ac_rmfiles $ac_file";;
   esac
 done
 rm -f $ac_rmfiles
 
-if { (ac_try="$ac_link_default"
+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_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
   (eval "$ac_link_default") 2>&5
   ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then :
   # 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,
@@ -2483,14 +3326,14 @@ 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 | *.map | *.inf | *.o | *.obj )
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.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;
+       if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
        then :; else
           ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
        fi
@@ -2509,78 +3352,41 @@ 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
+if test -z "$ac_file"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+$as_echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { echo "$as_me:$LINENO: error: C++ compiler cannot create executables
-See \`config.log' for more details." >&5
-echo "$as_me: error: C++ compiler cannot create executables
-See \`config.log' for more details." >&2;}
-   { (exit 77); exit 77; }; }
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "C compiler cannot create executables
+See \`config.log' for more details" "$LINENO" 5; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
 fi
-
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+$as_echo_n "checking for C compiler default output file name... " >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+$as_echo "$ac_file" >&6; }
 ac_exeext=$ac_cv_exeext
 
-# 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; }
-# 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'
-  { (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
-    cross_compiling=no
-  else
-    if test "$cross_compiling" = maybe; then
-       cross_compiling=yes
-    else
-       { { echo "$as_me:$LINENO: error: cannot run C++ compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot run C++ compiled programs.
-If you meant to cross compile, use \`--host'.
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
-    fi
-  fi
-fi
-{ echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-
-rm -f a.out a.exe conftest$ac_cv_exeext b.out
+rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
 ac_clean_files=$ac_clean_files_save
-# 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 { (ac_try="$ac_link"
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+$as_echo_n "checking for suffix of executables... " >&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_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then :
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 # work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -2588,37 +3394,90 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
 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 | *.map | *.inf | *.o | *.obj ) ;;
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
     *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
          break;;
     * ) break;;
   esac
 done
 else
-  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details" "$LINENO" 5; }
 fi
-
-rm -f conftest$ac_cv_exeext
-{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-echo "${ECHO_T}$ac_cv_exeext" >&6; }
+rm -f conftest conftest$ac_cv_exeext
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+$as_echo "$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; }
-if test "${ac_cv_objext+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdio.h>
+int
+main ()
+{
+FILE *f = fopen ("conftest.out", "w");
+ return ferror (f) || fclose (f) != 0;
+
+  ;
+  return 0;
+}
 _ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ac_clean_files="$ac_clean_files conftest.out"
+# Check that the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+$as_echo_n "checking whether we are cross compiling... " >&6; }
+if test "$cross_compiling" != yes; then
+  { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+  if { ac_try='./conftest$ac_cv_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+       cross_compiling=yes
+    else
+       { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details" "$LINENO" 5; }
+    fi
+  fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+$as_echo "$cross_compiling" >&6; }
+
+rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
+ac_clean_files=$ac_clean_files_save
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+$as_echo_n "checking for suffix of object files... " >&6; }
+if ${ac_cv_objext+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -2630,51 +3489,46 @@ main ()
 }
 _ACEOF
 rm -f conftest.o conftest.obj
-if { (ac_try="$ac_compile"
+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_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>&5
   ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; then :
   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 | *.map | *.inf ) ;;
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
     *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
        break;;
   esac
 done
 else
-  echo "$as_me: failed program was:" >&5
+  $as_echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&5
-echo "$as_me: error: cannot compute suffix of object files: cannot compile
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
+{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot compute suffix of object files: cannot compile
+See \`config.log' for more details" "$LINENO" 5; }
 fi
-
 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+$as_echo "$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; }
-if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
+$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
+if ${ac_cv_c_compiler_gnu+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -2688,54 +3542,34 @@ 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); } && {
-        test -z "$ac_cxx_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; 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 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; }
-GXX=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CXXFLAGS=${CXXFLAGS+set}
-ac_save_CXXFLAGS=$CXXFLAGS
-{ 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
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+if test $ac_compiler_gnu = yes; then
+  GCC=yes
+else
+  GCC=
+fi
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
+if ${ac_cv_prog_cc_g+:} false; then :
+  $as_echo_n "(cached) " >&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 confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -2746,34 +3580,11 @@ 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); } && {
-        test -z "$ac_cxx_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cxx_g=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_cv_prog_cc_g=yes
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       CXXFLAGS=""
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  CFLAGS=""
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -2784,35 +3595,12 @@ 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); } && {
-        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
+if ac_fn_c_try_compile "$LINENO"; then :
 
-       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
+else
+  ac_c_werror_flag=$ac_save_c_werror_flag
+        CFLAGS="-g"
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 int
@@ -2823,57 +3611,123 @@ 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); } && {
-        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
-
-
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_cv_prog_cc_g=yes
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
 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"
+   ac_c_werror_flag=$ac_save_c_werror_flag
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+$as_echo "$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
+  if test "$GCC" = yes; then
+    CFLAGS="-g -O2"
   else
-    CXXFLAGS="-g"
+    CFLAGS="-g"
   fi
 else
-  if test "$GXX" = yes; then
-    CXXFLAGS="-O2"
+  if test "$GCC" = yes; then
+    CFLAGS="-O2"
   else
-    CXXFLAGS=
+    CFLAGS=
   fi
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
+$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
+if ${ac_cv_prog_cc_c89+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_cv_prog_cc_c89=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdarg.h>
+#include <stdio.h>
+struct stat;
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* 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 -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 -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);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+  ;
+  return 0;
+}
+_ACEOF
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
+       -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"; then :
+  ac_cv_prog_cc_c89=$ac_arg
+fi
+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
+# AC_CACHE_VAL
+case "x$ac_cv_prog_cc_c89" in
+  x)
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+$as_echo "none needed" >&6; } ;;
+  xno)
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+$as_echo "unsupported" >&6; } ;;
+  *)
+    CC="$CC $ac_cv_prog_cc_c89"
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
+esac
+if test "x$ac_cv_prog_cc_c89" != xno; then :
+
+fi
+
 ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -2887,50 +3741,51 @@ ac_config_commands="$ac_config_commands depfiles"
 am_make=${MAKE-make}
 cat > confinc << 'END'
 am__doit:
-       @echo done
+       @echo this is the am__doit target
 .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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
+$as_echo_n "checking for style of include used by $am_make... " >&6; }
 am__include="#"
 am__quote=
 _am_result=none
 # First try GNU make style include.
 echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
-   am__include=include
-   am__quote=
-   _am_result=GNU
-fi
+# Ignore all kinds of additional output from `make'.
+case `$am_make -s -f confmf 2> /dev/null` in #(
+*the\ am__doit\ target*)
+  am__include=include
+  am__quote=
+  _am_result=GNU
+  ;;
+esac
 # Now try BSD make style include.
 if test "$am__include" = "#"; then
    echo '.include "confinc"' > confmf
-   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
-      am__include=.include
-      am__quote="\""
-      _am_result=BSD
-   fi
+   case `$am_make -s -f confmf 2> /dev/null` in #(
+   *the\ am__doit\ target*)
+     am__include=.include
+     am__quote="\""
+     _am_result=BSD
+     ;;
+   esac
 fi
 
 
-{ echo "$as_me:$LINENO: result: $_am_result" >&5
-echo "${ECHO_T}$_am_result" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
+$as_echo "$_am_result" >&6; }
 rm -f confinc confmf
 
 # Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then
+if test "${enable_dependency_tracking+set}" = set; then :
   enableval=$enable_dependency_tracking;
 fi
 
 if test "x$enable_dependency_tracking" != xno; then
   am_depcomp="$ac_aux_dir/depcomp"
   AMDEPBACKSLASH='\'
+  am__nodep='_no'
 fi
  if test "x$enable_dependency_tracking" != xno; then
   AMDEP_TRUE=
@@ -2942,12 +3797,12 @@ fi
 
 
 
-depcc="$CXX"  am_compiler_list=
+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; }
-if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+$as_echo_n "checking dependency style of $depcc... " >&6; }
+if ${am_cv_CC_dependencies_compiler_type+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
   # We make a subdir and do the tests there.  Otherwise we can end up
@@ -2955,6 +3810,7 @@ else
   # instance it was reported that on HP-UX the gcc test will end up
   # making a dummy file named `D' -- because `-MD' means `put the output
   # in D'.
+  rm -rf conftest.dir
   mkdir conftest.dir
   # Copy depcomp to subdir because otherwise we won't find it if we're
   # using a relative directory.
@@ -2968,10 +3824,15 @@ else
   # directory.
   mkdir sub
 
-  am_cv_CXX_dependencies_compiler_type=none
+  am_cv_CC_dependencies_compiler_type=none
   if test "$am_compiler_list" = ""; then
      am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
   fi
+  am__universal=false
+  case " $depcc " in #(
+     *\ -arch\ *\ -arch\ *) am__universal=true ;;
+     esac
+
   for depmode in $am_compiler_list; do
     # Setup a source with many dependencies, because some compilers
     # like to wrap large dependency lists on column 80 (with \), and
@@ -2989,7 +3850,17 @@ else
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.  Also, some Intel
+    # versions had trouble with output in subdirs
+    am__obj=sub/conftest.${OBJEXT-o}
+    am__minus_obj="-o $am__obj"
     case $depmode in
+    gcc)
+      # This depmode causes a compiler race in universal mode.
+      test "$am__universal" = false || continue
+      ;;
     nosideeffect)
       # after this tag, mechanisms are not by side-effect, so they'll
       # only be used when explicitly requested
@@ -2999,19 +3870,23 @@ else
        break
       fi
       ;;
+    msvc7 | msvc7msys | msvisualcpp | msvcmsys)
+      # This compiler won't grok `-c -o', but also, the minuso test has
+      # not run yet.  These depmodes are late enough in the game, and
+      # so weak that their functioning should not be impacted.
+      am__obj=conftest.${OBJEXT-o}
+      am__minus_obj=
+      ;;
     none) break ;;
     esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
     if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       source=sub/conftest.c object=$am__obj \
        depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+       $SHELL ./depcomp $depcc -c $am__minus_obj 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 &&
+       grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
       # or remarks (even with -Werror).  So we grep stderr for any message
@@ -3022,7 +3897,7 @@ else
       #   icc: Command line remark: option '-MP' not supported
       if (grep 'ignoring option' conftest.err ||
           grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_CXX_dependencies_compiler_type=$depmode
+        am_cv_CC_dependencies_compiler_type=$depmode
         break
       fi
     fi
@@ -3031,694 +3906,596 @@ else
   cd ..
   rm -rf conftest.dir
 else
-  am_cv_CXX_dependencies_compiler_type=none
+  am_cv_CC_dependencies_compiler_type=none
 fi
 
 fi
-{ 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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
 
  if
   test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
-  am__fastdepCXX_TRUE=
-  am__fastdepCXX_FALSE='#'
+  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+  am__fastdepCC_TRUE=
+  am__fastdepCC_FALSE='#'
 else
-  am__fastdepCXX_TRUE='#'
-  am__fastdepCXX_FALSE=
+  am__fastdepCC_TRUE='#'
+  am__fastdepCC_FALSE=
 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
-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; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+set x ${MAKE-make}
+ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$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 { 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
-
+  cat >conftest.make <<\_ACEOF
+SHELL = /bin/sh
+all:
+       @echo '@@@%%%=$(MAKE)=@@@%%%'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
+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 \$ac_cv_prog_make_${ac_make}_set = yes; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+  SET_MAKE=
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+  SET_MAKE="MAKE=${MAKE-make}"
 fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
+$as_echo_n "checking whether ln -s works... " >&6; }
+LN_S=$as_ln_s
+if test "$LN_S" = "ln -s"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
+$as_echo "no, using $LN_S" >&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; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+# SELinux support - off by default
+
+# Check whether --enable-selinux was given.
+if test "${enable_selinux+set}" = set; then :
+  enableval=$enable_selinux; enable_selinux=$enableval
 else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+  enable_selinux="no"
+fi
+
+if test "$enable_selinux" = "yes"; then
+
+$as_echo "#define WITH_SELINUX 1" >>confdefs.h
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for getfilecon in -lselinux" >&5
+$as_echo_n "checking for getfilecon in -lselinux... " >&6; }
+if ${ac_cv_lib_selinux_getfilecon+:} false; then :
+  $as_echo_n "(cached) " >&6
 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 { 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
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lselinux  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
+/* 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
+char getfilecon ();
+int
+main ()
+{
+return getfilecon ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_selinux_getfilecon=yes
+else
+  ac_cv_lib_selinux_getfilecon=no
 fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_selinux_getfilecon" >&5
+$as_echo "$ac_cv_lib_selinux_getfilecon" >&6; }
+if test "x$ac_cv_lib_selinux_getfilecon" = xyes; then :
+  SELINUX_LIB=-lselinux
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+
+     as_fn_error $? "Cannot find selinux static library" "$LINENO" 5
 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
 
-if test -z "$CC"; then
-          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; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
+
+# Call fork before all stat calls to stop hanging on NFS mounts
+
+# Check whether --enable-timeout_stat was given.
+if test "${enable_timeout_stat+set}" = set; then :
+  enableval=$enable_timeout_stat; enable_timeout_stat=$enableval
 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 { 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
+  enable_timeout_stat="no"
+fi
+
+if test "$enable_timeout_stat" = "yes"; then
+
+$as_echo "#define WITH_TIMEOUT_STAT 1" >>confdefs.h
 
 fi
+if test "$enable_timeout_stat" = "static"; then
+
+$as_echo "#define WITH_TIMEOUT_STAT 2" >>confdefs.h
+
 fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+ if test "$enable_timeout_stat" = "static"; then
+  WANT_TIMEOUT_STAT_TRUE=
+  WANT_TIMEOUT_STAT_FALSE='#'
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  WANT_TIMEOUT_STAT_TRUE='#'
+  WANT_TIMEOUT_STAT_FALSE=
 fi
 
 
-  fi
+# Enable hardened compile and link flags
+# Check whether --enable-harden_flags was given.
+if test "${enable_harden_flags+set}" = set; then :
+  enableval=$enable_harden_flags; enable_harden_flags=$enableval
+else
+  enable_harden_flags="yes"
 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; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+
+
+
+# Check whether --enable-ipv6 was given.
+if test "${enable_ipv6+set}" = set; then :
+  enableval=$enable_ipv6; enable_ipv6=$enableval
 else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
+  enable_ipv6="yes"
+fi
+
+if test "$enable_ipv6" = "yes"; then
+
+$as_echo "#define WITH_IPV6 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltinfo" >&5
+$as_echo_n "checking for tgetent in -ltinfo... " >&6; }
+if ${ac_cv_lib_tinfo_tgetent+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  ac_prog_rejected=no
-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
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-       ac_prog_rejected=yes
-       continue
-     fi
-    ac_cv_prog_CC="cc"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ltinfo  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $# != 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-  fi
-fi
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+/* 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
+char tgetent ();
+int
+main ()
+{
+return tgetent ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_tinfo_tgetent=yes
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  ac_cv_lib_tinfo_tgetent=no
 fi
-
-
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
 fi
-if test -z "$CC"; then
-  if test -n "$ac_tool_prefix"; then
-  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; }
-if test "${ac_cv_prog_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_tinfo_tgetent" >&5
+$as_echo "$ac_cv_lib_tinfo_tgetent" >&6; }
+if test "x$ac_cv_lib_tinfo_tgetent" = xyes; then :
+  TERMCAP_LIB=-ltinfo
 else
-  if test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
+   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -lncurses" >&5
+$as_echo_n "checking for tgetent in -lncurses... " >&6; }
+if ${ac_cv_lib_ncurses_tgetent+:} false; then :
+  $as_echo_n "(cached) " >&6
 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 { 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
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lncurses  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
-fi
-fi
-CC=$ac_cv_prog_CC
-if test -n "$CC"; then
-  { echo "$as_me:$LINENO: result: $CC" >&5
-echo "${ECHO_T}$CC" >&6; }
+/* 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
+char tgetent ();
+int
+main ()
+{
+return tgetent ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_ncurses_tgetent=yes
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  ac_cv_lib_ncurses_tgetent=no
 fi
-
-
-    test -n "$CC" && break
-  done
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
 fi
-if test -z "$CC"; then
-  ac_ct_CC=$CC
-  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; }
-if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ncurses_tgetent" >&5
+$as_echo "$ac_cv_lib_ncurses_tgetent" >&6; }
+if test "x$ac_cv_lib_ncurses_tgetent" = xyes; then :
+  TERMCAP_LIB=-lncurses
 else
-  if test -n "$ac_ct_CC"; then
-  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tgetent in -ltermcap" >&5
+$as_echo_n "checking for tgetent in -ltermcap... " >&6; }
+if ${ac_cv_lib_termcap_tgetent+:} false; then :
+  $as_echo_n "(cached) " >&6
 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 { 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
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ltermcap  $LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
 
+/* 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
+char tgetent ();
+int
+main ()
+{
+return tgetent ();
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_termcap_tgetent=yes
+else
+  ac_cv_lib_termcap_tgetent=no
 fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_termcap_tgetent" >&5
+$as_echo "$ac_cv_lib_termcap_tgetent" >&6; }
+if test "x$ac_cv_lib_termcap_tgetent" = xyes; then :
+  TERMCAP_LIB=-ltermcap
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
+   as_fn_error $? "Cannot find tinfo, ncurses or termcap libraries" "$LINENO" 5
 
+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
 
+fi
 
-test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&5
-echo "$as_me: error: no acceptable C compiler found in \$PATH
-See \`config.log' for more details." >&2;}
-   { (exit 1); exit 1; }; }
 
-# Provide some information about the compiler.
-echo "$as_me:$LINENO: checking for C compiler version" >&5
-ac_compiler=`set X $ac_compile; echo $2`
-{ (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); }
-{ (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); }
-{ (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; }
-if test "${ac_cv_c_compiler_gnu+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+ac_header_dirent=no
+for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
+  as_ac_Header=`$as_echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_hdr that defines DIR" >&5
+$as_echo_n "checking for $ac_hdr that defines DIR... " >&6; }
+if eval \${$as_ac_Header+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
+#include <sys/types.h>
+#include <$ac_hdr>
 
 int
 main ()
 {
-#ifndef __GNUC__
-       choke me
-#endif
-
+if ((DIR *) 0)
+return 0;
   ;
   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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_compiler_gnu=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+  eval "$as_ac_Header=yes"
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_compiler_gnu=no
+  eval "$as_ac_Header=no"
 fi
-
 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; }
-GCC=`test $ac_compiler_gnu = yes && echo yes`
-ac_test_CFLAGS=${CFLAGS+set}
-ac_save_CFLAGS=$CFLAGS
-{ 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.  */
+eval ac_res=\$$as_ac_Header
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
 _ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
 
-int
-main ()
-{
+ac_header_dirent=$ac_hdr; break
+fi
 
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_g=yes
+done
+# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
+if test $ac_header_dirent = dirent.h; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
+$as_echo_n "checking for library containing opendir... " >&6; }
+if ${ac_cv_search_opendir+:} false; then :
+  $as_echo_n "(cached) " >&6
 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
+  ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
+/* 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
+char opendir ();
 int
 main ()
 {
-
+return opendir ();
   ;
   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); } && {
-        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
+for ac_lib in '' dir; 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
+  if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_search_opendir=$ac_res
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext
+  if ${ac_cv_search_opendir+:} false; then :
+  break
+fi
+done
+if ${ac_cv_search_opendir+:} false; then :
+
+else
+  ac_cv_search_opendir=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
+$as_echo "$ac_cv_search_opendir" >&6; }
+ac_res=$ac_cv_search_opendir
+if test "$ac_res" != no; then :
+  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
+
+fi
+
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing opendir" >&5
+$as_echo_n "checking for library containing opendir... " >&6; }
+if ${ac_cv_search_opendir+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  ac_func_search_save_LIBS=$LIBS
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
+/* 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
+char opendir ();
 int
 main ()
 {
-
+return opendir ();
   ;
   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); } && {
-        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
-
-
+for ac_lib in '' x; 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
+  if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_search_opendir=$ac_res
 fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext
+  if ${ac_cv_search_opendir+:} false; then :
+  break
+fi
+done
+if ${ac_cv_search_opendir+:} false; then :
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+else
+  ac_cv_search_opendir=no
+fi
+rm conftest.$ac_ext
+LIBS=$ac_func_search_save_LIBS
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_opendir" >&5
+$as_echo "$ac_cv_search_opendir" >&6; }
+ac_res=$ac_cv_search_opendir
+if test "$ac_res" != no; then :
+  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
 
-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; }
-if test "$ac_test_CFLAGS" = set; then
-  CFLAGS=$ac_save_CFLAGS
-elif test $ac_cv_prog_cc_g = yes; then
-  if test "$GCC" = yes; then
-    CFLAGS="-g -O2"
-  else
-    CFLAGS="-g"
-  fi
-else
-  if test "$GCC" = yes; then
-    CFLAGS="-O2"
-  else
-    CFLAGS=
-  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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+$as_echo_n "checking how to run the C preprocessor... " >&6; }
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
 fi
-{ 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
+if test -z "$CPP"; then
+  if ${ac_cv_prog_CPP+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  ac_cv_prog_cc_c89=no
-ac_save_CC=$CC
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
+      # Double quotes because CPP needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+    do
+      ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+  # <limits.h> exists even on freestanding compilers.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+                    Syntax error
 _ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+
+else
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+  # Broken: success on invalid input.
+continue
+else
+  # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
 
-/* 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 -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 -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
+  break
+fi
 
-/* 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];
+    done
+    ac_cv_prog_CPP=$CPP
 
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int
-main ()
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-  ;
-  return 0;
-}
-_ACEOF
-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 { (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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_prog_cc_c89=$ac_arg
+fi
+  CPP=$ac_cv_prog_CPP
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+  ac_cv_prog_CPP=$CPP
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+$as_echo "$CPP" >&6; }
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+  # Use a header file that comes with gcc, so configuring glibc
+  # with a fresh cross-compiler works.
+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+  # <limits.h> exists even on freestanding compilers.
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+                    Syntax error
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
 
+else
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
 
+  # OK, works on sane cases.  Now check whether nonexistent headers
+  # can be detected and how.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <ac_nonexistent.h>
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"; then :
+  # Broken: success on invalid input.
+continue
+else
+  # Passes both tests.
+ac_preproc_ok=:
+break
 fi
+rm -f conftest.err conftest.i conftest.$ac_ext
 
-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
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.i conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then :
 
+else
+  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details" "$LINENO" 5; }
 fi
-# 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=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -3726,3222 +4503,511 @@ 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
 
-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; }
-if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if ${ac_cv_path_GREP+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
-
-  am_cv_CC_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
-  fi
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
-      # Solaris 8's {/usr,}/bin/sh.
-      touch sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    case $depmode in
-    nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
-      if test "x$enable_dependency_tracking" = xyes; then
-       continue
-      else
-       break
-      fi
-      ;;
-    none) break ;;
-    esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
-    if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
-       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
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # or remarks (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored or not supported.
-      # When given -MP, icc 7.0 and 7.1 complain thusly:
-      #   icc: Command line warning: ignoring option '-M'; no argument required
-      # The diagnosis changed in icc 8.0:
-      #   icc: Command line remark: option '-MP' not supported
-      if (grep 'ignoring option' conftest.err ||
-          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
-        am_cv_CC_dependencies_compiler_type=$depmode
-        break
-      fi
+  if test -z "$GREP"; then
+  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"
+      as_fn_executable_p "$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
+  $as_echo_n 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    $as_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
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    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
-
-  cd ..
-  rm -rf conftest.dir
-else
-  am_cv_CC_dependencies_compiler_type=none
-fi
-
-fi
-{ 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
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
-  am__fastdepCC_TRUE=
-  am__fastdepCC_FALSE='#'
-else
-  am__fastdepCC_TRUE='#'
-  am__fastdepCC_FALSE=
-fi
-
-
-#AC_PROG_CPP
-{ 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 '@@@%%%=$(MAKE)=@@@%%%'
-_ACEOF
-# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-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 \$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; }
-  SET_MAKE="MAKE=${MAKE-make}"
-fi
-
-{ echo "$as_me:$LINENO: checking whether ln -s works" >&5
-echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6; }
-LN_S=$as_ln_s
-if test "$LN_S" = "ln -s"; then
-  { echo "$as_me:$LINENO: result: yes" >&5
-echo "${ECHO_T}yes" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no, using $LN_S" >&5
-echo "${ECHO_T}no, using $LN_S" >&6; }
-fi
-
-
-
-# Check whether --enable-selinux was given.
-if test "${enable_selinux+set}" = set; then
-  enableval=$enable_selinux; enable_selinux=$enableval
-else
-  enable_selinux="no"
-fi
-
-if test "$enable_selinux" = "yes"; then
-
-cat >>confdefs.h <<\_ACEOF
-#define WITH_SELINUX 1
-_ACEOF
-
-
-{ echo "$as_me:$LINENO: checking for getfilecon in -lselinux" >&5
-echo $ECHO_N "checking for getfilecon in -lselinux... $ECHO_C" >&6; }
-if test "${ac_cv_lib_selinux_getfilecon+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lselinux  $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 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
-char getfilecon ();
-int
-main ()
-{
-return getfilecon ();
-  ;
-  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;;
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
 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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_lib_selinux_getfilecon=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_lib_selinux_getfilecon=no
-fi
-
-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_selinux_getfilecon" >&5
-echo "${ECHO_T}$ac_cv_lib_selinux_getfilecon" >&6; }
-if test $ac_cv_lib_selinux_getfilecon = yes; then
-  SELINUX_LIB=-lselinux
-else
-
-     { { echo "$as_me:$LINENO: error: Cannot find selinux static library" >&5
-echo "$as_me: error: Cannot find selinux static library" >&2;}
-   { (exit 1); exit 1; }; }
-fi
-
-fi
 
-
-
-# Check whether --enable-ipv6 was given.
-if test "${enable_ipv6+set}" = set; then
-  enableval=$enable_ipv6; enable_ipv6=$enableval
+      $ac_path_GREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_GREP"; then
+    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
 else
-  enable_ipv6="yes"
+  ac_cv_path_GREP=$GREP
 fi
 
-if test "$enable_ipv6" = "yes"; then
-
-cat >>confdefs.h <<\_ACEOF
-#define WITH_IPV6 1
-_ACEOF
-
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
 
-{ echo "$as_me:$LINENO: checking for tgetent in -ltinfo" >&5
-echo $ECHO_N "checking for tgetent in -ltinfo... $ECHO_C" >&6; }
-if test "${ac_cv_lib_tinfo_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltinfo  $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 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
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_lib_tinfo_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_lib_tinfo_tgetent=no
-fi
 
-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_tinfo_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_tinfo_tgetent" >&6; }
-if test $ac_cv_lib_tinfo_tgetent = yes; then
-  TERMCAP_LIB=-ltinfo
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+$as_echo_n "checking for egrep... " >&6; }
+if ${ac_cv_path_EGREP+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-   { echo "$as_me:$LINENO: checking for tgetent in -lncurses" >&5
-echo $ECHO_N "checking for tgetent in -lncurses... $ECHO_C" >&6; }
-if test "${ac_cv_lib_ncurses_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lncurses  $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 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
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_lib_ncurses_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_lib_ncurses_tgetent=no
-fi
-
-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_ncurses_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_ncurses_tgetent" >&6; }
-if test $ac_cv_lib_ncurses_tgetent = yes; then
-  TERMCAP_LIB=-lncurses
-else
-   { echo "$as_me:$LINENO: checking for tgetent in -ltermcap" >&5
-echo $ECHO_N "checking for tgetent in -ltermcap... $ECHO_C" >&6; }
-if test "${ac_cv_lib_termcap_tgetent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-ltermcap  $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 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
-char tgetent ();
-int
-main ()
-{
-return tgetent ();
-  ;
-  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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_lib_termcap_tgetent=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_lib_termcap_tgetent=no
-fi
-
-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_termcap_tgetent" >&5
-echo "${ECHO_T}$ac_cv_lib_termcap_tgetent" >&6; }
-if test $ac_cv_lib_termcap_tgetent = yes; then
-  TERMCAP_LIB=-ltermcap
-else
-   { { echo "$as_me:$LINENO: error: Cannot find tinfo, ncurses or termcap libraries" >&5
-echo "$as_me: error: Cannot find tinfo, ncurses or termcap libraries" >&2;}
-   { (exit 1); exit 1; }; }
-
-fi
-
-
-fi
-
-
-fi
-
-
-
-
-
-
-
-
-ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do
-  as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5
-echo $ECHO_N "checking for $ac_hdr that defines DIR... $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
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <$ac_hdr>
-
-int
-main ()
-{
-if ((DIR *) 0)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_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"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-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_hdr" | $as_tr_cpp` 1
-_ACEOF
-
-ac_header_dirent=$ac_hdr; break
-fi
-
-done
-# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
-if test $ac_header_dirent = dirent.h; then
-  { echo "$as_me:$LINENO: checking for library containing opendir" >&5
-echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; }
-if test "${ac_cv_search_opendir+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_func_search_save_LIBS=$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 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
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' dir; 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_search_opendir=$ac_res
-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_opendir+set}" = set; then
-  break
-fi
-done
-if test "${ac_cv_search_opendir+set}" = set; then
-  :
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
-echo "${ECHO_T}$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-fi
-
-else
-  { echo "$as_me:$LINENO: checking for library containing opendir" >&5
-echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; }
-if test "${ac_cv_search_opendir+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  ac_func_search_save_LIBS=$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 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
-char opendir ();
-int
-main ()
-{
-return opendir ();
-  ;
-  return 0;
-}
-_ACEOF
-for ac_lib in '' x; 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  ac_cv_search_opendir=$ac_res
-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_opendir+set}" = set; then
-  break
-fi
-done
-if test "${ac_cv_search_opendir+set}" = set; then
-  :
-else
-  ac_cv_search_opendir=no
-fi
-rm conftest.$ac_ext
-LIBS=$ac_func_search_save_LIBS
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5
-echo "${ECHO_T}$ac_cv_search_opendir" >&6; }
-ac_res=$ac_cv_search_opendir
-if test "$ac_res" != no; then
-  test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
-
-fi
-
-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
-{ 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=
-fi
-if test -z "$CPP"; then
-  if test "${ac_cv_prog_CPP+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-    do
-      ac_preproc_ok=false
-for ac_c_preproc_warn_flag in '' yes
-do
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-                    Syntax error
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  break
-fi
-
-    done
-    ac_cv_prog_CPP=$CPP
-
-fi
-  CPP=$ac_cv_prog_CPP
-else
-  ac_cv_prog_CPP=$CPP
-fi
-{ 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
-  # Use a header file that comes with gcc, so configuring glibc
-  # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
-  # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp. "Syntax error" is here to catch this case.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-                    Syntax error
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  :
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Broken: fails on valid input.
-continue
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-  # OK, works on sane cases.  Now check whether nonexistent headers
-  # can be detected and how.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ac_nonexistent.h>
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  # Broken: success on invalid input.
-continue
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  # Passes both tests.
-ac_preproc_ok=:
-break
-fi
-
-rm -f conftest.err conftest.$ac_ext
-
-done
-# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-rm -f conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then
-  :
-else
-  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&5
-echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-See \`config.log' for more details." >&2;}
-   { (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
-
-
-{ 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
-  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_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; }
-if test "${ac_cv_header_stdc+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.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); } && {
-        test -z "$ac_c_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
-fi
-
-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.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then
-  :
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then
-  :
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-                  (('a' <= (c) && (c) <= 'i') \
-                    || ('j' <= (c) && (c) <= 'r') \
-                    || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-       || toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
-  :
-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_header_stdc=no
-fi
-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; }
-if test $ac_cv_header_stdc = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define STDC_HEADERS 1
-_ACEOF
-
-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; }
-if test "${ac_cv_header_sys_wait_h+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-#include <sys/wait.h>
-#ifndef WEXITSTATUS
-# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8)
-#endif
-#ifndef WIFEXITED
-# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
-#endif
-
-int
-main ()
-{
-  int s;
-  wait (&s);
-  s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
-  ;
-  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); } && {
-        test -z "$ac_c_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
-fi
-
-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; }
-if test $ac_cv_header_sys_wait_h = yes; then
-
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_SYS_WAIT_H 1
-_ACEOF
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-
-
-
-
-
-
-
-
-
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-                 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 { 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
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-
-#include <$ac_header>
-_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); } && {
-        test -z "$ac_c_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"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-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
-_ACEOF
-
-fi
-
-done
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_header in arpa/inet.h fcntl.h langinfo.h libintl.h limits.h locale.h mntent.h netdb.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h termios.h unistd.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-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
-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; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_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); } && {
-        test -z "$ac_c_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
-fi
-
-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; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  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; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-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;}
-
-    ;;
-esac
-{ 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
-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
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
-
-{ 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
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-
-int
-main ()
-{
-/* FIXME: Include the comments suggested by Paul. */
-#ifndef __cplusplus
-  /* Ultrix mips cc rejects this.  */
-  typedef int charset[2];
-  const charset cs;
-  /* SunOS 4.1.1 cc rejects this.  */
-  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};
-  /* AIX XL C 1.02.0.0 rejects this.
-     It does not let you subtract one const X* pointer from another in
-     an arm of an if-expression whose if-part is not a constant
-     expression */
-  const char *g = "string";
-  pcpcc = &g + (g ? g-g : 0);
-  /* HPUX 7.0 cc rejects these. */
-  ++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};
-    const int *foo = &x[0];
-    ++foo;
-  }
-  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
-    typedef const int *iptr;
-    iptr p = 0;
-    ++p;
-  }
-  { /* AIX XL C 1.02.0.0 rejects this saying
-       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
-    struct s { int j; const int *ap[3]; };
-    struct s *b; b->j = 5;
-  }
-  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
-    const int foo = 10;
-    if (!foo) return 0;
-  }
-  return !cs[0] && !zero.x;
-#endif
-
-  ;
-  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); } && {
-        test -z "$ac_c_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
-fi
-
-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; }
-if test $ac_cv_c_const = no; then
-
-cat >>confdefs.h <<\_ACEOF
-#define const
-_ACEOF
-
-fi
-
-{ echo "$as_me:$LINENO: checking for pid_t" >&5
-echo $ECHO_N "checking for pid_t... $ECHO_C" >&6; }
-if test "${ac_cv_type_pid_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-typedef pid_t ac__type_new_;
-int
-main ()
-{
-if ((ac__type_new_ *) 0)
-  return 0;
-if (sizeof (ac__type_new_))
-  return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_type_pid_t=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_type_pid_t=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5
-echo "${ECHO_T}$ac_cv_type_pid_t" >&6; }
-if test $ac_cv_type_pid_t = yes; then
-  :
-else
-
-cat >>confdefs.h <<_ACEOF
-#define pid_t int
-_ACEOF
-
-fi
-
-{ 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
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-typedef size_t ac__type_new_;
-int
-main ()
-{
-if ((ac__type_new_ *) 0)
-  return 0;
-if (sizeof (ac__type_new_))
-  return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_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
-fi
-
-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; }
-if test $ac_cv_type_size_t = yes; then
-  :
-else
-
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
-
-fi
-
-{ echo "$as_me:$LINENO: checking for struct stat.st_rdev" >&5
-echo $ECHO_N "checking for struct stat.st_rdev... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_stat_st_rdev+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static struct stat ac_aggr;
-if (ac_aggr.st_rdev)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_stat_st_rdev=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-static struct stat ac_aggr;
-if (sizeof ac_aggr.st_rdev)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_stat_st_rdev=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_stat_st_rdev=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_stat_st_rdev" >&5
-echo "${ECHO_T}$ac_cv_member_struct_stat_st_rdev" >&6; }
-if test $ac_cv_member_struct_stat_st_rdev = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_STAT_ST_RDEV 1
-_ACEOF
-
-
-fi
-
-{ echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5
-echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6; }
-if test "${ac_cv_type_uid_t+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <sys/types.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "uid_t" >/dev/null 2>&1; then
-  ac_cv_type_uid_t=yes
-else
-  ac_cv_type_uid_t=no
-fi
-rm -f conftest*
-
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5
-echo "${ECHO_T}$ac_cv_type_uid_t" >&6; }
-if test $ac_cv_type_uid_t = no; then
-
-cat >>confdefs.h <<\_ACEOF
-#define uid_t int
-_ACEOF
-
-
-cat >>confdefs.h <<\_ACEOF
-#define gid_t int
-_ACEOF
-
-fi
-
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.orig_eax" >&5
-echo $ECHO_N "checking for struct user_regs_struct.orig_eax... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_orig_eax+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.orig_eax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_orig_eax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.orig_eax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_orig_eax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_orig_eax=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_orig_eax" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_orig_eax" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_orig_eax = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_ORIG_EAX 1
-_ACEOF
-
-
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.eax" >&5
-echo $ECHO_N "checking for struct user_regs_struct.eax... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_eax+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.eax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_eax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.eax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_eax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_eax=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_eax" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_eax" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_eax = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_EAX 1
-_ACEOF
-
-
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.ebx" >&5
-echo $ECHO_N "checking for struct user_regs_struct.ebx... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_ebx+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.ebx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_ebx=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.ebx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_ebx=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_ebx=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_ebx" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_ebx" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_ebx = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_EBX 1
-_ACEOF
-
-
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.ecx" >&5
-echo $ECHO_N "checking for struct user_regs_struct.ecx... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_ecx+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.ecx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_ecx=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.ecx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_ecx=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_ecx=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_ecx" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_ecx" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_ecx = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_ECX 1
-_ACEOF
-
-
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.edx" >&5
-echo $ECHO_N "checking for struct user_regs_struct.edx... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_edx+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.edx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_edx=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.edx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_edx=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_edx=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_edx" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_edx" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_edx = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_EDX 1
-_ACEOF
-
-
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.orig_rax" >&5
-echo $ECHO_N "checking for struct user_regs_struct.orig_rax... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_orig_rax+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.orig_rax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_orig_rax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.orig_rax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_orig_rax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_orig_rax=no
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_orig_rax" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_orig_rax" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_orig_rax = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_ORIG_RAX 1
-_ACEOF
-
-
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.rax" >&5
-echo $ECHO_N "checking for struct user_regs_struct.rax... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_rax+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.rax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
-
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.rax)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rax=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_rax=no
-fi
+  if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
+   then ac_cv_path_EGREP="$GREP -E"
+   else
+     if test -z "$EGREP"; then
+  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"
+      as_fn_executable_p "$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
+  $as_echo_n 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    $as_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
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    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
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+      $ac_path_EGREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_EGREP"; then
+    as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
+else
+  ac_cv_path_EGREP=$EGREP
 fi
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+   fi
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_rax" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_rax" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_rax = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_RAX 1
-_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+$as_echo "$ac_cv_path_EGREP" >&6; }
+ EGREP="$ac_cv_path_EGREP"
 
 
-fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.rdi" >&5
-echo $ECHO_N "checking for struct user_regs_struct.rdi... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_rdi+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
+$as_echo_n "checking for ANSI C header files... " >&6; }
+if ${ac_cv_header_stdc+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/user.h>
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
 
 int
 main ()
 {
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.rdi)
-return 0;
+
   ;
   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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rdi=yes
+if ac_fn_c_try_compile "$LINENO"; 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
+fi
+rm -f core 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
+if test $ac_cv_header_stdc = yes; then
+  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/user.h>
+#include <string.h>
 
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.rdi)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rdi=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "memchr" >/dev/null 2>&1; then :
 
-       ac_cv_member_struct_user_regs_struct_rdi=no
+else
+  ac_cv_header_stdc=no
 fi
+rm -f conftest*
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_rdi" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_rdi" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_rdi = yes; then
+if test $ac_cv_header_stdc = yes; then
+  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <stdlib.h>
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_RDI 1
 _ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "free" >/dev/null 2>&1; then :
 
+else
+  ac_cv_header_stdc=no
+fi
+rm -f conftest*
 
 fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.rsi" >&5
-echo $ECHO_N "checking for struct user_regs_struct.rsi... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_rsi+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+
+if test $ac_cv_header_stdc = yes; then
+  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+  if test "$cross_compiling" = yes; then :
+  :
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/user.h>
+#include <ctype.h>
+#include <stdlib.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+                  (('a' <= (c) && (c) <= 'i') \
+                    || ('j' <= (c) && (c) <= 'r') \
+                    || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
 
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
 int
 main ()
 {
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.rsi)
-return 0;
-  ;
+  int i;
+  for (i = 0; i < 256; i++)
+    if (XOR (islower (i), ISLOWER (i))
+       || toupper (i) != TOUPPER (i))
+      return 2;
   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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rsi=yes
+if ac_fn_c_try_run "$LINENO"; then :
+
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+  ac_cv_header_stdc=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
 
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
+$as_echo "$ac_cv_header_stdc" >&6; }
+if test $ac_cv_header_stdc = yes; then
+
+$as_echo "#define STDC_HEADERS 1" >>confdefs.h
+
+fi
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sys/wait.h that is POSIX.1 compatible" >&5
+$as_echo_n "checking for sys/wait.h that is POSIX.1 compatible... " >&6; }
+if ${ac_cv_header_sys_wait_h+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/user.h>
+#include <sys/types.h>
+#include <sys/wait.h>
+#ifndef WEXITSTATUS
+# define WEXITSTATUS(stat_val) ((unsigned int) (stat_val) >> 8)
+#endif
+#ifndef WIFEXITED
+# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
+#endif
 
 int
 main ()
 {
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.rsi)
-return 0;
+  int s;
+  wait (&s);
+  s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
   ;
   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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rsi=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+  ac_cv_header_sys_wait_h=yes
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_user_regs_struct_rsi=no
+  ac_cv_header_sys_wait_h=no
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_sys_wait_h" >&5
+$as_echo "$ac_cv_header_sys_wait_h" >&6; }
+if test $ac_cv_header_sys_wait_h = yes; then
+
+$as_echo "#define HAVE_SYS_WAIT_H 1" >>confdefs.h
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_rsi" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_rsi" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_rsi = yes; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_RSI 1
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+                 inttypes.h stdint.h unistd.h
+do :
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
+"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
 
+fi
+
+done
+
+
+for ac_header in arpa/inet.h fcntl.h langinfo.h libintl.h limits.h locale.h mntent.h netdb.h netinet/in.h stdlib.h string.h sys/ioctl.h sys/socket.h termios.h unistd.h
+do :
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
 
 fi
-{ echo "$as_me:$LINENO: checking for struct user_regs_struct.rdx" >&5
-echo $ECHO_N "checking for struct user_regs_struct.rdx... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_user_regs_struct_rdx+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+
+done
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
+$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
+if ${ac_cv_c_const+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/user.h>
 
 int
 main ()
 {
-static struct user_regs_struct ac_aggr;
-if (ac_aggr.rdx)
-return 0;
+
+#ifndef __cplusplus
+  /* Ultrix mips cc rejects this sort of thing.  */
+  typedef int charset[2];
+  const charset cs = { 0, 0 };
+  /* SunOS 4.1.1 cc rejects this.  */
+  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};
+  /* AIX XL C 1.02.0.0 rejects this.
+     It does not let you subtract one const X* pointer from another in
+     an arm of an if-expression whose if-part is not a constant
+     expression */
+  const char *g = "string";
+  pcpcc = &g + (g ? g-g : 0);
+  /* HPUX 7.0 cc rejects these. */
+  ++pcpcc;
+  ppc = (char**) pcpcc;
+  pcpcc = (char const *const *) ppc;
+  { /* SCO 3.2v4 cc rejects this sort of thing.  */
+    char tx;
+    char *t = &tx;
+    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};
+    const int *foo = &x[0];
+    ++foo;
+  }
+  { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */
+    typedef const int *iptr;
+    iptr p = 0;
+    ++p;
+  }
+  { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
+       "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
+    struct s { int j; const int *ap[3]; } bx;
+    struct s *b = &bx; b->j = 5;
+  }
+  { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */
+    const int foo = 10;
+    if (!foo) return 0;
+  }
+  return !cs[0] && !zero.x;
+#endif
+
   ;
   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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rdx=yes
+if ac_fn_c_try_compile "$LINENO"; 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
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
+$as_echo "$ac_cv_c_const" >&6; }
+if test $ac_cv_c_const = no; then
 
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/user.h>
+$as_echo "#define const /**/" >>confdefs.h
+
+fi
+
+ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default"
+if test "x$ac_cv_type_pid_t" = xyes; then :
 
-int
-main ()
-{
-static struct user_regs_struct ac_aggr;
-if (sizeof ac_aggr.rdx)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_user_regs_struct_rdx=yes
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
 
-       ac_cv_member_struct_user_regs_struct_rdx=no
+cat >>confdefs.h <<_ACEOF
+#define pid_t int
+_ACEOF
+
 fi
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
+if test "x$ac_cv_type_size_t" = xyes; then :
+
+else
+
+cat >>confdefs.h <<_ACEOF
+#define size_t unsigned int
+_ACEOF
+
 fi
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_user_regs_struct_rdx" >&5
-echo "${ECHO_T}$ac_cv_member_struct_user_regs_struct_rdx" >&6; }
-if test $ac_cv_member_struct_user_regs_struct_rdx = yes; then
+ac_fn_c_check_member "$LINENO" "struct stat" "st_rdev" "ac_cv_member_struct_stat_st_rdev" "$ac_includes_default"
+if test "x$ac_cv_member_struct_stat_st_rdev" = xyes; then :
 
 cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_USER_REGS_STRUCT_RDX 1
+#define HAVE_STRUCT_STAT_ST_RDEV 1
 _ACEOF
 
 
 fi
 
-{ echo "$as_me:$LINENO: checking for struct pt_regs.orig_gpr3" >&5
-echo $ECHO_N "checking for struct pt_regs.orig_gpr3... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_pt_regs_orig_gpr3+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/ptrace.h>
-
-int
-main ()
-{
-static struct pt_regs ac_aggr;
-if (ac_aggr.orig_gpr3)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_pt_regs_orig_gpr3=yes
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for uid_t in sys/types.h" >&5
+$as_echo_n "checking for uid_t in sys/types.h... " >&6; }
+if ${ac_cv_type_uid_t+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/ptrace.h>
+#include <sys/types.h>
 
-int
-main ()
-{
-static struct pt_regs ac_aggr;
-if (sizeof ac_aggr.orig_gpr3)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_pt_regs_orig_gpr3=yes
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  $EGREP "uid_t" >/dev/null 2>&1; then :
+  ac_cv_type_uid_t=yes
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_pt_regs_orig_gpr3=no
+  ac_cv_type_uid_t=no
 fi
+rm -f conftest*
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_type_uid_t" >&5
+$as_echo "$ac_cv_type_uid_t" >&6; }
+if test $ac_cv_type_uid_t = no; then
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_pt_regs_orig_gpr3" >&5
-echo "${ECHO_T}$ac_cv_member_struct_pt_regs_orig_gpr3" >&6; }
-if test $ac_cv_member_struct_pt_regs_orig_gpr3 = yes; then
+$as_echo "#define uid_t int" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_PT_REGS_ORIG_GPR3 1
-_ACEOF
 
+$as_echo "#define gid_t int" >>confdefs.h
 
 fi
-{ echo "$as_me:$LINENO: checking for struct pt_regs.gpr" >&5
-echo $ECHO_N "checking for struct pt_regs.gpr... $ECHO_C" >&6; }
-if test "${ac_cv_member_struct_pt_regs_gpr+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <linux/ptrace.h>
 
-int
-main ()
-{
-static struct pt_regs ac_aggr;
-if (ac_aggr.gpr)
-return 0;
-  ;
-  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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_pt_regs_gpr=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
 
-       cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+# Check that harden CFLAGS will compile
+if test "$enable_harden_flags" = "yes"; then :
+  HARDEN_CFLAGS="-fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security"
+   { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler supports harden flags" >&5
+$as_echo_n "checking compiler supports harden flags... " >&6; }
+  save_harden_cflags="$CFLAGS"
+  CFLAGS="$CFLAGS $HARDEN_CFLAGS"
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <linux/ptrace.h>
 
 int
 main ()
 {
-static struct pt_regs ac_aggr;
-if (sizeof ac_aggr.gpr)
-return 0;
+
   ;
   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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
-  ac_cv_member_struct_pt_regs_gpr=yes
+if ac_fn_c_try_compile "$LINENO"; then :
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_cv_member_struct_pt_regs_gpr=no
-fi
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }; HARDEN_CFLAGS=''
 
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 fi
-
 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-fi
-{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_pt_regs_gpr" >&5
-echo "${ECHO_T}$ac_cv_member_struct_pt_regs_gpr" >&6; }
-if test $ac_cv_member_struct_pt_regs_gpr = yes; then
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_PT_REGS_GPR 1
-_ACEOF
-
-
-fi
-
- if test $ac_cv_member_struct_user_regs_struct_orig_eax = yes &&
-   test $ac_cv_member_struct_user_regs_struct_eax = yes &&
-   test $ac_cv_member_struct_user_regs_struct_ebx = yes &&
-   test $ac_cv_member_struct_user_regs_struct_ecx = yes &&
-   test $ac_cv_member_struct_user_regs_struct_edx = yes ; then
-  WANT_PEEKFD_I386_TRUE=
-  WANT_PEEKFD_I386_FALSE='#'
-else
-  WANT_PEEKFD_I386_TRUE='#'
-  WANT_PEEKFD_I386_FALSE=
-fi
-
- if test $ac_cv_member_struct_user_regs_struct_orig_rax = yes &&
-   test $ac_cv_member_struct_user_regs_struct_rax = yes &&
-   test $ac_cv_member_struct_user_regs_struct_rdi = yes &&
-   test $ac_cv_member_struct_user_regs_struct_rsi = yes &&
-   test $ac_cv_member_struct_user_regs_struct_rdx = yes ; then
-  WANT_PEEKFD_X86_64_TRUE=
-  WANT_PEEKFD_X86_64_FALSE='#'
+  CFLAGS="$save_harden_cflags"
 else
-  WANT_PEEKFD_X86_64_TRUE='#'
-  WANT_PEEKFD_X86_64_FALSE=
+  HARDEN_CFLAGS=""
 fi
 
- if test $ac_cv_member_struct_pt_regs_orig_gpr3 = yes &&
-   test $ac_cv_member_struct_pt_regs_gpr = yes ; then
-  WANT_PEEKFD_PPC_TRUE=
-  WANT_PEEKFD_PPC_FALSE='#'
-else
-  WANT_PEEKFD_PPC_TRUE='#'
-  WANT_PEEKFD_PPC_FALSE=
-fi
 
 
 
-  { echo "$as_me:$LINENO: checking whether NLS is requested" >&5
-echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5
+$as_echo_n "checking whether NLS is requested... " >&6; }
     # Check whether --enable-nls was given.
-if test "${enable_nls+set}" = set; then
+if test "${enable_nls+set}" = set; then :
   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; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+$as_echo "$USE_NLS" >&6; }
 
 
 
@@ -6978,10 +5044,10 @@ rm -f conf$$.file
 
 # 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; }
-if test "${ac_cv_path_MSGFMT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_MSGFMT+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   case "$MSGFMT" in
   [\\/]* | ?:[\\/]*)
@@ -7010,19 +5076,19 @@ esac
 fi
 MSGFMT="$ac_cv_path_MSGFMT"
 if test "$MSGFMT" != ":"; then
-  { echo "$as_me:$LINENO: result: $MSGFMT" >&5
-echo "${ECHO_T}$MSGFMT" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5
+$as_echo "$MSGFMT" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "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; }
-if test "${ac_cv_path_GMSGFMT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_GMSGFMT+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   case $GMSGFMT in
   [\\/]* | ?:[\\/]*)
@@ -7034,14 +5100,14 @@ 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
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$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
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
-done
+  done
 IFS=$as_save_IFS
 
   test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
@@ -7050,11 +5116,11 @@ esac
 fi
 GMSGFMT=$ac_cv_path_GMSGFMT
 if test -n "$GMSGFMT"; then
-  { echo "$as_me:$LINENO: result: $GMSGFMT" >&5
-echo "${ECHO_T}$GMSGFMT" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5
+$as_echo "$GMSGFMT" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 
@@ -7101,10 +5167,10 @@ rm -f conf$$.file
 
 # 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; }
-if test "${ac_cv_path_XGETTEXT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_XGETTEXT+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   case "$XGETTEXT" in
   [\\/]* | ?:[\\/]*)
@@ -7133,11 +5199,11 @@ esac
 fi
 XGETTEXT="$ac_cv_path_XGETTEXT"
 if test "$XGETTEXT" != ":"; then
-  { echo "$as_me:$LINENO: result: $XGETTEXT" >&5
-echo "${ECHO_T}$XGETTEXT" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5
+$as_echo "$XGETTEXT" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
     rm -f messages.po
@@ -7179,10 +5245,10 @@ rm -f conf$$.file
 
 # 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; }
-if test "${ac_cv_path_MSGMERGE+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_MSGMERGE+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   case "$MSGMERGE" in
   [\\/]* | ?:[\\/]*)
@@ -7210,11 +5276,11 @@ esac
 fi
 MSGMERGE="$ac_cv_path_MSGMERGE"
 if test "$MSGMERGE" != ":"; then
-  { echo "$as_me:$LINENO: result: $MSGMERGE" >&5
-echo "${ECHO_T}$MSGMERGE" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5
+$as_echo "$MSGMERGE" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
 fi
 
 
@@ -7240,92 +5306,9 @@ fi
   eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
   prefix="$acl_save_prefix"
 
-# Make sure we can run config.sub.
-$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; }
-if test "${ac_cv_build+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  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=`$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; }
-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
-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; }
-if test "${ac_cv_host+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  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; }
-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
-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
-
-
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then
+if test "${with_gnu_ld+set}" = set; then :
   withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes
 else
   with_gnu_ld=no
@@ -7347,8 +5330,8 @@ fi
 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; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by GCC" >&5
+$as_echo_n "checking for ld used by GCC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return which upsets mingw
@@ -7377,14 +5360,14 @@ echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6; }
     ;;
   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; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+$as_echo_n "checking for GNU ld... " >&6; }
 else
-  { echo "$as_me:$LINENO: checking for non-GNU ld" >&5
-echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+$as_echo_n "checking for non-GNU ld... " >&6; }
 fi
-if test "${acl_cv_path_LD+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+if ${acl_cv_path_LD+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   if test -z "$LD"; then
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
@@ -7411,19 +5394,17 @@ fi
 
 LD="$acl_cv_path_LD"
 if test -n "$LD"; then
-  { echo "$as_me:$LINENO: result: $LD" >&5
-echo "${ECHO_T}$LD" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+$as_echo "$LD" >&6; }
 else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "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; }
-if test "${acl_cv_prog_gnu_ld+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
+if ${acl_cv_prog_gnu_ld+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   # I'd rather use --version here, but apparently some GNU ld's only accept -v.
 case `$LD -v 2>&1 </dev/null` in
@@ -7433,17 +5414,17 @@ case `$LD -v 2>&1 </dev/null` in
   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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_prog_gnu_ld" >&5
+$as_echo "$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; }
-if test "${acl_cv_rpath+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+                                                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5
+$as_echo_n "checking for shared library run path origin... " >&6; }
+if ${acl_cv_rpath+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
 
     CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
@@ -7453,8 +5434,8 @@ else
     acl_cv_rpath=done
 
 fi
-{ echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5
-echo "${ECHO_T}$acl_cv_rpath" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5
+$as_echo "$acl_cv_rpath" >&6; }
   wl="$acl_cv_wl"
   libext="$acl_cv_libext"
   shlibext="$acl_cv_shlibext"
@@ -7463,7 +5444,7 @@ echo "${ECHO_T}$acl_cv_rpath" >&6; }
   hardcode_direct="$acl_cv_hardcode_direct"
   hardcode_minus_L="$acl_cv_hardcode_minus_L"
     # Check whether --enable-rpath was given.
-if test "${enable_rpath+set}" = set; then
+if test "${enable_rpath+set}" = set; then :
   enableval=$enable_rpath; :
 else
   enable_rpath=yes
@@ -7511,7 +5492,7 @@ fi
 
 
 # Check whether --with-libiconv-prefix was given.
-if test "${with_libiconv_prefix+set}" = set; then
+if test "${with_libiconv_prefix+set}" = set; then :
   withval=$with_libiconv_prefix;
     if test "X$withval" = "Xno"; then
       use_additional=no
@@ -7910,18 +5891,14 @@ fi
 
 
 
-    { 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
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5
+$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; }
+if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then :
+  $as_echo_n "(cached) " >&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
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <CoreFoundation/CFPreferences.h>
 int
@@ -7932,57 +5909,30 @@ 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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; 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
+  gt_cv_func_CFPreferencesCopyAppValue=no
 fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5
+$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; }
   if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_CFPREFERENCESCOPYAPPVALUE 1
-_ACEOF
+$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h
 
   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
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5
+$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; }
+if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then :
+  $as_echo_n "(cached) " >&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
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <CoreFoundation/CFLocale.h>
 int
@@ -7993,43 +5943,20 @@ 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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; 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
+  gt_cv_func_CFLocaleCopyCurrent=no
 fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5
+$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; }
   if test $gt_cv_func_CFLocaleCopyCurrent = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_CFLOCALECOPYCURRENT 1
-_ACEOF
+$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h
 
   fi
   INTL_MACOSX_LIBS=
@@ -8074,16 +6001,12 @@ typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
           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 { as_var=$gt_func_gnugettext_libc; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5
+$as_echo_n "checking for GNU gettext in libc... " >&6; }
+if eval \${$gt_func_gnugettext_libc+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <libintl.h>
 $gt_revision_test_code
@@ -8098,38 +6021,17 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_b
   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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; then :
   eval "$gt_func_gnugettext_libc=yes"
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       eval "$gt_func_gnugettext_libc=no"
+  eval "$gt_func_gnugettext_libc=no"
 fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
 fi
-ac_res=`eval echo '${'$gt_func_gnugettext_libc'}'`
-              { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+eval ac_res=\$$gt_func_gnugettext_libc
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
 
         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then
 
@@ -8162,19 +6064,15 @@ echo "${ECHO_T}$ac_res" >&6; }
   done
 
 
-  { 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
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5
+$as_echo_n "checking for iconv... " >&6; }
+if ${am_cv_func_iconv+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
 
     am_cv_func_iconv="no, consider installing GNU libiconv"
     am_cv_lib_iconv=no
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
 #include <iconv.h>
@@ -8188,42 +6086,15 @@ iconv_t cd = iconv_open("","");
   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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; then :
   am_cv_func_iconv=yes
-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 conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
     if test "$am_cv_func_iconv" != yes; then
       am_save_LIBS="$LIBS"
       LIBS="$LIBS $LIBICONV"
-      cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <stdlib.h>
 #include <iconv.h>
@@ -8237,53 +6108,28 @@ iconv_t cd = iconv_open("","");
   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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; 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 core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5
+$as_echo "$am_cv_func_iconv" >&6; }
   if test "$am_cv_func_iconv" = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_ICONV 1
-_ACEOF
+$as_echo "#define HAVE_ICONV 1" >>confdefs.h
 
   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; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5
+$as_echo_n "checking how to link with libiconv... " >&6; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5
+$as_echo "$LIBICONV" >&6; }
   else
             CPPFLAGS="$am_save_CPPFLAGS"
     LIBICONV=
@@ -8311,7 +6157,7 @@ echo "${ECHO_T}$LIBICONV" >&6; }
 
 
 # Check whether --with-libintl-prefix was given.
-if test "${with_libintl_prefix+set}" = set; then
+if test "${with_libintl_prefix+set}" = set; then :
   withval=$with_libintl_prefix;
     if test "X$withval" = "Xno"; then
       use_additional=no
@@ -8686,20 +6532,16 @@ fi
     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 { as_var=$gt_func_gnugettext_libintl; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+          { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5
+$as_echo_n "checking for GNU gettext in libintl... " >&6; }
+if eval \${$gt_func_gnugettext_libintl+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   gt_save_CPPFLAGS="$CPPFLAGS"
             CPPFLAGS="$CPPFLAGS $INCINTL"
             gt_save_LIBS="$LIBS"
             LIBS="$LIBS $LIBINTL"
-                        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+                        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <libintl.h>
 $gt_revision_test_code
@@ -8718,41 +6560,16 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_a
   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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; then :
   eval "$gt_func_gnugettext_libintl=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       eval "$gt_func_gnugettext_libintl=no"
+else
+  eval "$gt_func_gnugettext_libintl=no"
 fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
                         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.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+              cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <libintl.h>
 $gt_revision_test_code
@@ -8771,44 +6588,21 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_a
   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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+if ac_fn_c_try_link "$LINENO"; then :
   LIBINTL="$LIBINTL $LIBICONV"
                 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
                 eval "$gt_func_gnugettext_libintl=yes"
 
-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 conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
             fi
             CPPFLAGS="$gt_save_CPPFLAGS"
             LIBS="$gt_save_LIBS"
 fi
-ac_res=`eval echo '${'$gt_func_gnugettext_libintl'}'`
-              { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
+eval ac_res=\$$gt_func_gnugettext_libintl
+              { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+$as_echo "$ac_res" >&6; }
         fi
 
                                         if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \
@@ -8835,22 +6629,20 @@ echo "${ECHO_T}$ac_res" >&6; }
     if test "$gt_use_preinstalled_gnugettext" = "yes" \
        || test "$nls_cv_use_gnu_gettext" = "yes"; then
 
-cat >>confdefs.h <<\_ACEOF
-#define ENABLE_NLS 1
-_ACEOF
+$as_echo "#define ENABLE_NLS 1" >>confdefs.h
 
     else
       USE_NLS=no
     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; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5
+$as_echo_n "checking whether to use NLS... " >&6; }
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5
+$as_echo "$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; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5
+$as_echo_n "checking where the gettext function comes from... " >&6; }
     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
       if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then
         gt_source="external libintl"
@@ -8860,18 +6652,18 @@ echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; }
     else
       gt_source="included intl directory"
     fi
-    { echo "$as_me:$LINENO: result: $gt_source" >&5
-echo "${ECHO_T}$gt_source" >&6; }
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5
+$as_echo "$gt_source" >&6; }
   fi
 
   if test "$USE_NLS" = "yes"; then
 
     if test "$gt_use_preinstalled_gnugettext" = "yes"; then
       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; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5
+$as_echo_n "checking how to link with libintl... " >&6; }
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5
+$as_echo "$LIBINTL" >&6; }
 
   for element in $INCINTL; do
     haveit=
@@ -8898,14 +6690,10 @@ echo "${ECHO_T}$LIBINTL" >&6; }
       fi
 
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_GETTEXT 1
-_ACEOF
+$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h
 
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_DCGETTEXT 1
-_ACEOF
+$as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h
 
     fi
 
@@ -8922,20 +6710,249 @@ _ACEOF
 
 
 
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "orig_eax" "ac_cv_member_struct_user_regs_struct_orig_eax" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_orig_eax" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_ORIG_EAX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "eax" "ac_cv_member_struct_user_regs_struct_eax" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_eax" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_EAX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "ebx" "ac_cv_member_struct_user_regs_struct_ebx" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_ebx" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_EBX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "ecx" "ac_cv_member_struct_user_regs_struct_ecx" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_ecx" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_ECX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "edx" "ac_cv_member_struct_user_regs_struct_edx" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_edx" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_EDX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "orig_rax" "ac_cv_member_struct_user_regs_struct_orig_rax" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_orig_rax" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_ORIG_RAX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "rax" "ac_cv_member_struct_user_regs_struct_rax" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_rax" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_RAX 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "rdi" "ac_cv_member_struct_user_regs_struct_rdi" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_rdi" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_RDI 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "rsi" "ac_cv_member_struct_user_regs_struct_rsi" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_rsi" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_RSI 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct user_regs_struct" "rdx" "ac_cv_member_struct_user_regs_struct_rdx" "#include <bits/types.h>
+     #include <sys/user.h>
+"
+if test "x$ac_cv_member_struct_user_regs_struct_rdx" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_USER_REGS_STRUCT_RDX 1
+_ACEOF
+
+
+fi
+
+ac_fn_c_check_member "$LINENO" "struct pt_regs" "orig_gpr3" "ac_cv_member_struct_pt_regs_orig_gpr3" "#include <linux/ptrace.h>
+"
+if test "x$ac_cv_member_struct_pt_regs_orig_gpr3" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_PT_REGS_ORIG_GPR3 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct pt_regs" "gpr" "ac_cv_member_struct_pt_regs_gpr" "#include <linux/ptrace.h>
+"
+if test "x$ac_cv_member_struct_pt_regs_gpr" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_PT_REGS_GPR 1
+_ACEOF
+
+
+fi
+
+ac_fn_c_check_member "$LINENO" "struct pt_regs" "uregs" "ac_cv_member_struct_pt_regs_uregs" "#include <asm/ptrace.h>
+"
+if test "x$ac_cv_member_struct_pt_regs_uregs" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_PT_REGS_UREGS 1
+_ACEOF
+
+
+fi
+
+ac_fn_c_check_member "$LINENO" "struct pt_regs" "regs" "ac_cv_member_struct_pt_regs_regs" "#include <asm/ptrace.h>
+"
+if test "x$ac_cv_member_struct_pt_regs_regs" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_PT_REGS_REGS 1
+_ACEOF
+
+
+fi
+ac_fn_c_check_member "$LINENO" "struct pt_regs" "cp0_status" "ac_cv_member_struct_pt_regs_cp0_status" "#include <asm/ptrace.h>
+"
+if test "x$ac_cv_member_struct_pt_regs_cp0_status" = xyes; then :
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_PT_REGS_CP0_STATUS 1
+_ACEOF
+
+
+fi
+
+
+case ${target_os} in
+  gnu*)
+    want_fuser=no
+    ;;
+  *)
+    want_fuser=yes
+       ;;
+esac
+ if test $want_fuser = yes; then
+  WANT_FUSER_TRUE=
+  WANT_FUSER_FALSE='#'
+else
+  WANT_FUSER_TRUE='#'
+  WANT_FUSER_FALSE=
+fi
+
+
+ if test $ac_cv_member_struct_user_regs_struct_orig_eax = yes &&
+   test $ac_cv_member_struct_user_regs_struct_eax = yes &&
+   test $ac_cv_member_struct_user_regs_struct_ebx = yes &&
+   test $ac_cv_member_struct_user_regs_struct_ecx = yes &&
+   test $ac_cv_member_struct_user_regs_struct_edx = yes ; then
+  WANT_PEEKFD_I386_TRUE=
+  WANT_PEEKFD_I386_FALSE='#'
+else
+  WANT_PEEKFD_I386_TRUE='#'
+  WANT_PEEKFD_I386_FALSE=
+fi
+
+ if test $ac_cv_member_struct_user_regs_struct_orig_rax = yes &&
+   test $ac_cv_member_struct_user_regs_struct_rax = yes &&
+   test $ac_cv_member_struct_user_regs_struct_rdi = yes &&
+   test $ac_cv_member_struct_user_regs_struct_rsi = yes &&
+   test $ac_cv_member_struct_user_regs_struct_rdx = yes ; then
+  WANT_PEEKFD_X86_64_TRUE=
+  WANT_PEEKFD_X86_64_FALSE='#'
+else
+  WANT_PEEKFD_X86_64_TRUE='#'
+  WANT_PEEKFD_X86_64_FALSE=
+fi
+
+ if test $ac_cv_member_struct_pt_regs_orig_gpr3 = yes &&
+   test $ac_cv_member_struct_pt_regs_gpr = yes ; then
+  WANT_PEEKFD_PPC_TRUE=
+  WANT_PEEKFD_PPC_FALSE='#'
+else
+  WANT_PEEKFD_PPC_TRUE='#'
+  WANT_PEEKFD_PPC_FALSE=
+fi
+
+ if test $ac_cv_member_struct_pt_regs_uregs = yes; then
+  WANT_PEEKFD_ARM_TRUE=
+  WANT_PEEKFD_ARM_FALSE='#'
+else
+  WANT_PEEKFD_ARM_TRUE='#'
+  WANT_PEEKFD_ARM_FALSE=
+fi
+
+ if test $build_cpu = mipsel &&
+   test $ac_cv_member_struct_pt_regs_regs = yes &&
+   test $ac_cv_member_struct_pt_regs_cp0_status = yes; then
+  WANT_PEEKFD_MIPS_TRUE=
+  WANT_PEEKFD_MIPS_FALSE='#'
+else
+  WANT_PEEKFD_MIPS_TRUE='#'
+  WANT_PEEKFD_MIPS_FALSE=
+fi
+
 
-{ echo "$as_me:$LINENO: checking whether closedir returns void" >&5
-echo $ECHO_N "checking whether closedir returns void... $ECHO_C" >&6; }
-if test "${ac_cv_func_closedir_void+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether closedir returns void" >&5
+$as_echo_n "checking whether closedir returns void... " >&6; }
+if ${ac_cv_func_closedir_void+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_closedir_void=yes
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 #include <$ac_header_dirent>
@@ -8951,63 +6968,33 @@ return closedir (opendir (".")) != 0;
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_closedir_void=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_closedir_void=yes
+  ac_cv_func_closedir_void=yes
 fi
-rm -f core *.core core.conftest.* 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.beam conftest.$ac_ext
 fi
 
-
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_closedir_void" >&5
-echo "${ECHO_T}$ac_cv_func_closedir_void" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_closedir_void" >&5
+$as_echo "$ac_cv_func_closedir_void" >&6; }
 if test $ac_cv_func_closedir_void = yes; then
 
-cat >>confdefs.h <<\_ACEOF
-#define CLOSEDIR_VOID 1
-_ACEOF
+$as_echo "#define CLOSEDIR_VOID 1" >>confdefs.h
 
 fi
 
 # getmntent is in the standard C library on UNICOS, in -lsun on Irix 4,
 # -lseq on Dynix/PTX, -lgen on Unixware.
-{ echo "$as_me:$LINENO: checking for library containing getmntent" >&5
-echo $ECHO_N "checking for library containing getmntent... $ECHO_C" >&6; }
-if test "${ac_cv_search_getmntent+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing getmntent" >&5
+$as_echo_n "checking for library containing getmntent... " >&6; }
+if ${ac_cv_search_getmntent+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   ac_func_search_save_LIBS=$LIBS
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
 /* Override any GCC internal prototype to avoid an error.
@@ -9032,56 +7019,31 @@ for ac_lib in '' sun seq gen; do
     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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
+  if ac_fn_c_try_link "$LINENO"; then :
   ac_cv_search_getmntent=$ac_res
-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_getmntent+set}" = set; then
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext
+  if ${ac_cv_search_getmntent+:} false; then :
   break
 fi
 done
-if test "${ac_cv_search_getmntent+set}" = set; then
-  :
+if ${ac_cv_search_getmntent+:} false; then :
+
 else
   ac_cv_search_getmntent=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_search_getmntent" >&5
-echo "${ECHO_T}$ac_cv_search_getmntent" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_getmntent" >&5
+$as_echo "$ac_cv_search_getmntent" >&6; }
 ac_res=$ac_cv_search_getmntent
-if test "$ac_res" != no; then
+if test "$ac_res" != no; then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
   ac_cv_func_getmntent=yes
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_GETMNTENT 1
-_ACEOF
+$as_echo "#define HAVE_GETMNTENT 1" >>confdefs.h
 
 else
   ac_cv_func_getmntent=no
@@ -9089,23 +7051,19 @@ fi
 
 
 if test $ac_cv_c_compiler_gnu = yes; then
-    { echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5
-echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6; }
-if test "${ac_cv_prog_gcc_traditional+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC needs -traditional" >&5
+$as_echo_n "checking whether $CC needs -traditional... " >&6; }
+if ${ac_cv_prog_gcc_traditional+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
     ac_pattern="Autoconf.*'x'"
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sgtty.h>
 Autoconf TIOCGETP
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then
+  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
   ac_cv_prog_gcc_traditional=yes
 else
   ac_cv_prog_gcc_traditional=no
@@ -9114,53 +7072,45 @@ rm -f conftest*
 
 
   if test $ac_cv_prog_gcc_traditional = no; then
-    cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <termio.h>
 Autoconf TCGETA
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "$ac_pattern" >/dev/null 2>&1; then
+  $EGREP "$ac_pattern" >/dev/null 2>&1; then :
   ac_cv_prog_gcc_traditional=yes
 fi
 rm -f conftest*
 
   fi
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5
-echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_gcc_traditional" >&5
+$as_echo "$ac_cv_prog_gcc_traditional" >&6; }
   if test $ac_cv_prog_gcc_traditional = yes; then
     CC="$CC -traditional"
   fi
 fi
 
-{ 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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether lstat correctly handles trailing slash" >&5
+$as_echo_n "checking whether lstat correctly handles trailing slash... " >&6; }
+if ${ac_cv_func_lstat_dereferences_slashed_symlink+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   rm -f conftest.sym conftest.file
 echo >conftest.file
 if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_lstat_dereferences_slashed_symlink=no
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 int
 main ()
 {
 struct stat sbuf;
-     /* Linux will dereference the symlink and fail.
+     /* Linux will dereference the symlink and fail, as required by POSIX.
        That is better in the sense that it means we will not
        have to compile and use the lstat wrapper.  */
      return lstat ("conftest.sym/", &sbuf) == 0;
@@ -9168,39 +7118,15 @@ struct stat sbuf;
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_lstat_dereferences_slashed_symlink=yes
 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_lstat_dereferences_slashed_symlink=no
+  ac_cv_func_lstat_dereferences_slashed_symlink=no
 fi
-rm -f core *.core core.conftest.* 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.beam conftest.$ac_ext
 fi
 
-
 else
   # If the `ln -s' command failed, then we probably don't even
   # have an lstat function.
@@ -9209,8 +7135,8 @@ fi
 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_lstat_dereferences_slashed_symlink" >&5
+$as_echo "$ac_cv_func_lstat_dereferences_slashed_symlink" >&6; }
 
 test $ac_cv_func_lstat_dereferences_slashed_symlink = yes &&
 
@@ -9219,7 +7145,7 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
-if test $ac_cv_func_lstat_dereferences_slashed_symlink = no; then
+if test "x$ac_cv_func_lstat_dereferences_slashed_symlink" = xno; then
   case " $LIBOBJS " in
   *" lstat.$ac_objext "* ) ;;
   *) LIBOBJS="$LIBOBJS lstat.$ac_objext"
@@ -9228,19 +7154,15 @@ esac
 
 fi
 
-{ echo "$as_me:$LINENO: checking whether lstat accepts an empty string" >&5
-echo $ECHO_N "checking whether lstat accepts an empty string... $ECHO_C" >&6; }
-if test "${ac_cv_func_lstat_empty_string_bug+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether lstat accepts an empty string" >&5
+$as_echo_n "checking whether lstat accepts an empty string... " >&6; }
+if ${ac_cv_func_lstat_empty_string_bug+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_lstat_empty_string_bug=yes
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 int
@@ -9252,42 +7174,18 @@ struct stat sbuf;
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_lstat_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_lstat_empty_string_bug=yes
+  ac_cv_func_lstat_empty_string_bug=yes
 fi
-rm -f core *.core core.conftest.* 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.beam conftest.$ac_ext
 fi
 
-
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_lstat_empty_string_bug" >&5
-echo "${ECHO_T}$ac_cv_func_lstat_empty_string_bug" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_lstat_empty_string_bug" >&5
+$as_echo "$ac_cv_func_lstat_empty_string_bug" >&6; }
 if test $ac_cv_func_lstat_empty_string_bug = yes; then
   case " $LIBOBJS " in
   *" lstat.$ac_objext "* ) ;;
@@ -9302,29 +7200,25 @@ _ACEOF
 
 fi
 
-{ 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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether lstat correctly handles trailing slash" >&5
+$as_echo_n "checking whether lstat correctly handles trailing slash... " >&6; }
+if ${ac_cv_func_lstat_dereferences_slashed_symlink+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   rm -f conftest.sym conftest.file
 echo >conftest.file
 if test "$as_ln_s" = "ln -s" && ln -s conftest.file conftest.sym; then
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_lstat_dereferences_slashed_symlink=no
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 int
 main ()
 {
 struct stat sbuf;
-     /* Linux will dereference the symlink and fail.
+     /* Linux will dereference the symlink and fail, as required by POSIX.
        That is better in the sense that it means we will not
        have to compile and use the lstat wrapper.  */
      return lstat ("conftest.sym/", &sbuf) == 0;
@@ -9332,39 +7226,15 @@ struct stat sbuf;
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_lstat_dereferences_slashed_symlink=yes
 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_lstat_dereferences_slashed_symlink=no
+  ac_cv_func_lstat_dereferences_slashed_symlink=no
 fi
-rm -f core *.core core.conftest.* 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.beam conftest.$ac_ext
 fi
 
-
 else
   # If the `ln -s' command failed, then we probably don't even
   # have an lstat function.
@@ -9373,8 +7243,8 @@ fi
 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_lstat_dereferences_slashed_symlink" >&5
+$as_echo "$ac_cv_func_lstat_dereferences_slashed_symlink" >&6; }
 
 test $ac_cv_func_lstat_dereferences_slashed_symlink = yes &&
 
@@ -9383,7 +7253,7 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 
 
-if test $ac_cv_func_lstat_dereferences_slashed_symlink = no; then
+if test "x$ac_cv_func_lstat_dereferences_slashed_symlink" = xno; then
   case " $LIBOBJS " in
   *" lstat.$ac_objext "* ) ;;
   *) LIBOBJS="$LIBOBJS lstat.$ac_objext"
@@ -9392,159 +7262,27 @@ esac
 
 fi
 
-
 for ac_header in stdlib.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-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
-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; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_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); } && {
-        test -z "$ac_c_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
-fi
-
-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; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  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; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-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;}
-
-    ;;
-esac
-{ 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
-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
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdlib_h" = xyes; then :
   cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_STDLIB_H 1
 _ACEOF
 
 fi
 
 done
 
-{ echo "$as_me:$LINENO: checking for GNU libc compatible malloc" >&5
-echo $ECHO_N "checking for GNU libc compatible malloc... $ECHO_C" >&6; }
-if test "${ac_cv_func_malloc_0_nonnull+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible malloc" >&5
+$as_echo_n "checking for GNU libc compatible malloc... " >&6; }
+if ${ac_cv_func_malloc_0_nonnull+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_malloc_0_nonnull=no
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #if defined STDC_HEADERS || defined HAVE_STDLIB_H
 # include <stdlib.h>
@@ -9560,52 +7298,24 @@ return ! malloc (0);
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_malloc_0_nonnull=yes
 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_malloc_0_nonnull=no
+  ac_cv_func_malloc_0_nonnull=no
 fi
-rm -f core *.core core.conftest.* 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.beam conftest.$ac_ext
 fi
 
-
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_malloc_0_nonnull" >&5
-echo "${ECHO_T}$ac_cv_func_malloc_0_nonnull" >&6; }
-if test $ac_cv_func_malloc_0_nonnull = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_malloc_0_nonnull" >&5
+$as_echo "$ac_cv_func_malloc_0_nonnull" >&6; }
+if test $ac_cv_func_malloc_0_nonnull = yes; then :
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_MALLOC 1
-_ACEOF
+$as_echo "#define HAVE_MALLOC 1" >>confdefs.h
 
 else
-  cat >>confdefs.h <<\_ACEOF
-#define HAVE_MALLOC 0
-_ACEOF
+  $as_echo "#define HAVE_MALLOC 0" >>confdefs.h
 
    case " $LIBOBJS " in
   *" malloc.$ac_objext "* ) ;;
@@ -9614,27 +7324,20 @@ _ACEOF
 esac
 
 
-cat >>confdefs.h <<\_ACEOF
-#define malloc rpl_malloc
-_ACEOF
+$as_echo "#define malloc rpl_malloc" >>confdefs.h
 
 fi
 
 
-
-{ 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
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working memcmp" >&5
+$as_echo_n "checking for working memcmp... " >&6; }
+if ${ac_cv_func_memcmp_working+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_memcmp_working=no
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $ac_includes_default
 int
@@ -9669,42 +7372,18 @@ main ()
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_memcmp_working=yes
 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_memcmp_working=no
+  ac_cv_func_memcmp_working=no
 fi
-rm -f core *.core core.conftest.* 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.beam 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; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_memcmp_working" >&5
+$as_echo "$ac_cv_func_memcmp_working" >&6; }
 test $ac_cv_func_memcmp_working = no && case " $LIBOBJS " in
   *" memcmp.$ac_objext "* ) ;;
   *) LIBOBJS="$LIBOBJS memcmp.$ac_objext"
@@ -9712,159 +7391,27 @@ test $ac_cv_func_memcmp_working = no && case " $LIBOBJS " in
 esac
 
 
-
 for ac_header in stdlib.h
-do
-as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-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
-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; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-#include <$ac_header>
-_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); } && {
-        test -z "$ac_c_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
-fi
-
-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; }
-cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-#include <$ac_header>
-_ACEOF
-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 && {
-        test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       }; then
-  ac_header_preproc=yes
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-  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; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-  yes:no: )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-    ac_header_preproc=yes
-    ;;
-  no:yes:* )
-    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-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;}
-
-    ;;
-esac
-{ 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
-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
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_stdlib_h" = xyes; then :
   cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define HAVE_STDLIB_H 1
 _ACEOF
 
 fi
 
 done
 
-{ echo "$as_me:$LINENO: checking for GNU libc compatible realloc" >&5
-echo $ECHO_N "checking for GNU libc compatible realloc... $ECHO_C" >&6; }
-if test "${ac_cv_func_realloc_0_nonnull+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU libc compatible realloc" >&5
+$as_echo_n "checking for GNU libc compatible realloc... " >&6; }
+if ${ac_cv_func_realloc_0_nonnull+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
-  if test "$cross_compiling" = yes; then
+  if test "$cross_compiling" = yes; then :
   ac_cv_func_realloc_0_nonnull=no
 else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #if defined STDC_HEADERS || defined HAVE_STDLIB_H
 # include <stdlib.h>
@@ -9880,245 +7427,90 @@ return ! realloc (0, 0);
   return 0;
 }
 _ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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
+if ac_fn_c_try_run "$LINENO"; then :
   ac_cv_func_realloc_0_nonnull=yes
 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_realloc_0_nonnull=no
+  ac_cv_func_realloc_0_nonnull=no
 fi
-rm -f core *.core core.conftest.* 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.beam conftest.$ac_ext
 fi
 
-
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_func_realloc_0_nonnull" >&5
-echo "${ECHO_T}$ac_cv_func_realloc_0_nonnull" >&6; }
-if test $ac_cv_func_realloc_0_nonnull = yes; then
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_realloc_0_nonnull" >&5
+$as_echo "$ac_cv_func_realloc_0_nonnull" >&6; }
+if test $ac_cv_func_realloc_0_nonnull = yes; then :
 
-cat >>confdefs.h <<\_ACEOF
-#define HAVE_REALLOC 1
-_ACEOF
+$as_echo "#define HAVE_REALLOC 1" >>confdefs.h
 
 else
-  cat >>confdefs.h <<\_ACEOF
-#define HAVE_REALLOC 0
-_ACEOF
+  $as_echo "#define HAVE_REALLOC 0" >>confdefs.h
 
    case " $LIBOBJS " in
   *" realloc.$ac_objext "* ) ;;
-  *) LIBOBJS="$LIBOBJS realloc.$ac_objext"
- ;;
-esac
-
-
-cat >>confdefs.h <<\_ACEOF
-#define realloc rpl_realloc
-_ACEOF
-
-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; }
-if test "${ac_cv_func_stat_empty_string_bug+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_func_stat_empty_string_bug=yes
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-$ac_includes_default
-int
-main ()
-{
-struct stat sbuf;
-  return stat ("", &sbuf) == 0;
-  ;
-  return 0;
-}
-_ACEOF
-rm -f 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>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-  { (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=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=yes
-fi
-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; }
-if test $ac_cv_func_stat_empty_string_bug = yes; then
-  case " $LIBOBJS " in
-  *" stat.$ac_objext "* ) ;;
-  *) LIBOBJS="$LIBOBJS stat.$ac_objext"
- ;;
-esac
-
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STAT_EMPTY_STRING_BUG 1
-_ACEOF
-
-fi
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-for ac_func in atexit getmntent memset nl_langinfo regcomp rpmatch setlocale socket strcasecmp strchr strdup strerror strpbrk strrchr strtoul
-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 { 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
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
+  *) LIBOBJS="$LIBOBJS realloc.$ac_objext"
+ ;;
+esac
 
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
 
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+$as_echo "#define realloc rpl_realloc" >>confdefs.h
 
-#undef $ac_func
+fi
 
-/* 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
-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
-choke me
-#endif
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stat accepts an empty string" >&5
+$as_echo_n "checking whether stat accepts an empty string... " >&6; }
+if ${ac_cv_func_stat_empty_string_bug+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test "$cross_compiling" = yes; then :
+  ac_cv_func_stat_empty_string_bug=yes
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_includes_default
 int
 main ()
 {
-return $ac_func ();
+struct stat sbuf;
+  return stat ("", &sbuf) == 0;
   ;
   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_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  eval "$as_ac_var=yes"
+if ac_fn_c_try_run "$LINENO"; then :
+  ac_cv_func_stat_empty_string_bug=no
 else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
+  ac_cv_func_stat_empty_string_bug=yes
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
 
-       eval "$as_ac_var=no"
 fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_stat_empty_string_bug" >&5
+$as_echo "$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 "* ) ;;
+  *) LIBOBJS="$LIBOBJS stat.$ac_objext"
+ ;;
+esac
+
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STAT_EMPTY_STRING_BUG 1
+_ACEOF
 
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
 fi
-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
+
+for ac_func in atexit getmntent memset nl_langinfo rawmemchr regcomp rpmatch setlocale socket strcasecmp strchr strdup strerror strpbrk strrchr strtoul
+do :
+  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
+if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
   cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
 _ACEOF
 
 fi
@@ -10126,16 +7518,16 @@ done
 
 
 # Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then
+if test "${enable_largefile+set}" = set; then :
   enableval=$enable_largefile;
 fi
 
 if test "$enable_largefile" != no; then
 
-  { echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5
-echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6; }
-if test "${ac_cv_sys_largefile_CC+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
+$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
+if ${ac_cv_sys_largefile_CC+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   ac_cv_sys_largefile_CC=no
      if test "$GCC" != yes; then
@@ -10143,11 +7535,7 @@ else
        while :; do
         # IRIX 6.2 and later do not support large files by default,
         # so use the C compiler's -n32 option if that helps.
-        cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/types.h>
  /* Check that off_t can represent 2**63 - 1 correctly.
@@ -10166,58 +7554,14 @@ 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+        if ac_fn_c_try_compile "$LINENO"; then :
   break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
 rm -f core conftest.err conftest.$ac_objext
         CC="$CC -n32"
-        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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+        if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_sys_largefile_CC=' -n32'; break
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-
 fi
-
 rm -f core conftest.err conftest.$ac_objext
         break
        done
@@ -10225,23 +7569,19 @@ rm -f core conftest.err conftest.$ac_objext
        rm -f conftest.$ac_ext
     fi
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5
-echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
+$as_echo "$ac_cv_sys_largefile_CC" >&6; }
   if test "$ac_cv_sys_largefile_CC" != no; then
     CC=$CC$ac_cv_sys_largefile_CC
   fi
 
-  { echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6; }
-if test "${ac_cv_sys_file_offset_bits+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
+if ${ac_cv_sys_file_offset_bits+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   while :; do
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/types.h>
  /* Check that off_t can represent 2**63 - 1 correctly.
@@ -10260,37 +7600,11 @@ 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_sys_file_offset_bits=no; 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.$ac_ext
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _FILE_OFFSET_BITS 64
 #include <sys/types.h>
@@ -10310,38 +7624,16 @@ 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_sys_file_offset_bits=64; 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.$ac_ext
   ac_cv_sys_file_offset_bits=unknown
   break
 done
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5
-echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
+$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
 case $ac_cv_sys_file_offset_bits in #(
   no | unknown) ;;
   *)
@@ -10350,19 +7642,15 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 ;;
 esac
-rm -f conftest*
+rm -rf conftest*
   if test $ac_cv_sys_file_offset_bits = unknown; then
-    { echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5
-echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6; }
-if test "${ac_cv_sys_large_files+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
+$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
+if ${ac_cv_sys_large_files+:} false; then :
+  $as_echo_n "(cached) " >&6
 else
   while :; do
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #include <sys/types.h>
  /* Check that off_t can represent 2**63 - 1 correctly.
@@ -10381,37 +7669,11 @@ 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_sys_large_files=no; 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.$ac_ext
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _LARGE_FILES 1
 #include <sys/types.h>
@@ -10431,38 +7693,16 @@ 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); } && {
-        test -z "$ac_c_werror_flag" ||
-        test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then
+if ac_fn_c_try_compile "$LINENO"; then :
   ac_cv_sys_large_files=1; 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.$ac_ext
   ac_cv_sys_large_files=unknown
   break
 done
 fi
-{ echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5
-echo "${ECHO_T}$ac_cv_sys_large_files" >&6; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
+$as_echo "$ac_cv_sys_large_files" >&6; }
 case $ac_cv_sys_large_files in #(
   no | unknown) ;;
   *)
@@ -10471,12 +7711,20 @@ cat >>confdefs.h <<_ACEOF
 _ACEOF
 ;;
 esac
-rm -f conftest*
+rm -rf conftest*
   fi
+
+
+fi
+
+
+if test x"$DEJAGNU" = x
+then
+  DEJAGNU="\$(top_srcdir)/testsuite/global-conf.exp"
 fi
 
 
-ac_config_files="$ac_config_files Makefile doc/Makefile src/Makefile icons/Makefile po/Makefile.in"
+ac_config_files="$ac_config_files Makefile doc/Makefile src/Makefile icons/Makefile po/Makefile.in testsuite/Makefile"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -10505,12 +7753,13 @@ _ACEOF
     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;} ;;
+      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
-      *) $as_unset $ac_var ;;
+      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
+      *) { eval $ac_var=; unset $ac_var;} ;;
       esac ;;
     esac
   done
@@ -10518,8 +7767,8 @@ echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;;
   (set) 2>&1 |
     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 \).
+      # `set' does not quote correctly, so add quotesdouble-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \.
       sed -n \
        "s/'/'\\\\''/g;
          s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
@@ -10541,13 +7790,24 @@ echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&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
+    if test "x$cache_file" != "x/dev/null"; then
+      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+$as_echo "$as_me: updating cache $cache_file" >&6;}
+      if test ! -f "$cache_file" || test -h "$cache_file"; then
+       cat confcache >"$cache_file"
+      else
+        case $cache_file in #(
+        */* | ?:*)
+         mv -f confcache "$cache_file"$$ &&
+         mv -f "$cache_file"$$ "$cache_file" ;; #(
+        *)
+         mv -f confcache "$cache_file" ;;
+       esac
+      fi
+    fi
   else
-    { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5
-echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
   fi
 fi
 rm -f confcache
@@ -10560,69 +7820,74 @@ DEFS=-DHAVE_CONFIG_H
 
 ac_libobjs=
 ac_ltlibobjs=
+U=
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`echo "$ac_i" | sed "$ac_script"`
+  ac_i=`$as_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'
+  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
+  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
 done
 LIBOBJS=$ac_libobjs
 
 LTLIBOBJS=$ac_ltlibobjs
 
 
+ if test -n "$EXEEXT"; then
+  am__EXEEXT_TRUE=
+  am__EXEEXT_FALSE='#'
+else
+  am__EXEEXT_TRUE='#'
+  am__EXEEXT_FALSE=
+fi
+
 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"AMDEP\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
-fi
-if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${WANT_TIMEOUT_STAT_TRUE}" && test -z "${WANT_TIMEOUT_STAT_FALSE}"; then
+  as_fn_error $? "conditional \"WANT_TIMEOUT_STAT\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${WANT_FUSER_TRUE}" && test -z "${WANT_FUSER_FALSE}"; then
+  as_fn_error $? "conditional \"WANT_FUSER\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${WANT_PEEKFD_I386_TRUE}" && test -z "${WANT_PEEKFD_I386_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"WANT_PEEKFD_I386\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"WANT_PEEKFD_I386\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"WANT_PEEKFD_I386\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${WANT_PEEKFD_X86_64_TRUE}" && test -z "${WANT_PEEKFD_X86_64_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"WANT_PEEKFD_X86_64\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"WANT_PEEKFD_X86_64\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"WANT_PEEKFD_X86_64\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 if test -z "${WANT_PEEKFD_PPC_TRUE}" && test -z "${WANT_PEEKFD_PPC_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"WANT_PEEKFD_PPC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"WANT_PEEKFD_PPC\" was never defined.
-Usually this means the macro was only invoked conditionally." >&2;}
-   { (exit 1); exit 1; }; }
+  as_fn_error $? "conditional \"WANT_PEEKFD_PPC\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${WANT_PEEKFD_ARM_TRUE}" && test -z "${WANT_PEEKFD_ARM_FALSE}"; then
+  as_fn_error $? "conditional \"WANT_PEEKFD_ARM\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
+if test -z "${WANT_PEEKFD_MIPS_TRUE}" && test -z "${WANT_PEEKFD_MIPS_FALSE}"; then
+  as_fn_error $? "conditional \"WANT_PEEKFD_MIPS\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
 
-: ${CONFIG_STATUS=./config.status}
+: "${CONFIG_STATUS=./config.status}"
+ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-echo "$as_me: creating $CONFIG_STATUS" >&6;}
-cat >$CONFIG_STATUS <<_ACEOF
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+as_write_fail=0
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 #! $SHELL
 # Generated by $as_me.
 # Run this file to recreate the current configuration.
@@ -10632,59 +7897,79 @@ cat >$CONFIG_STATUS <<_ACEOF
 debug=false
 ac_cs_recheck=false
 ac_cs_silent=false
-SHELL=\${CONFIG_SHELL-$SHELL}
-_ACEOF
 
-cat >>$CONFIG_STATUS <<\_ACEOF
-## --------------------- ##
-## M4sh Initialization.  ##
-## --------------------- ##
+SHELL=\${CONFIG_SHELL-$SHELL}
+export SHELL
+_ASEOF
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
+## -------------------- ##
+## M4sh Initialization. ##
+## -------------------- ##
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+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
+  # Pre-4.2 versions of Zsh do 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 ;;
+  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=';'
+as_nl='
+'
+export as_nl
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
+# Prefer a ksh shell builtin over an external printf program on Solaris,
+# but without wasting forks for bash or zsh.
+if test -z "$BASH_VERSION$ZSH_VERSION" \
+    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='print -r --'
+  as_echo_n='print -rn --'
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
+  as_echo='printf %s\n'
+  as_echo_n='printf %s'
+else
+  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
+    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
+    as_echo_n='/usr/ucb/echo -n'
   else
-    PATH_SEPARATOR=:
+    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
+    as_echo_n_body='eval
+      arg=$1;
+      case $arg in #(
+      *"$as_nl"*)
+       expr "X$arg" : "X\\(.*\\)$as_nl";
+       arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
+      esac;
+      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
+    '
+    export as_echo_n_body
+    as_echo_n='sh -c $as_echo_n_body as_echo'
   fi
-  rm -f conf$$.sh
+  export as_echo_body
+  as_echo='sh -c $as_echo_body as_echo'
 fi
 
-# Support unset when possible.
-if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-  as_unset=unset
-else
-  as_unset=false
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  PATH_SEPARATOR=:
+  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
+    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
+      PATH_SEPARATOR=';'
+  }
 fi
 
 
 # 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=
+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
+    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  done
 IFS=$as_save_IFS
 
      ;;
@@ -10717,113 +8001,123 @@ 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; }
+  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  exit 1
 fi
 
-# Work around bugs in pre-3.0 UWIN ksh.
-for as_var in ENV MAIL MAILPATH
-do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var
+# Unset variables that we do not need and which cause bugs (e.g. in
+# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
+# suppresses any "Segmentation fault" message there.  '((' could
+# trigger a bug in pdksh 5.2.14.
+for as_var in BASH_ENV ENV MAIL MAILPATH
+do eval test x\${$as_var+set} = xset \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 done
 PS1='$ '
 PS2='> '
 PS4='+ '
 
 # NLS nuisances.
-for as_var in \
-  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-  LC_TELEPHONE LC_TIME
-do
-  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) >/dev/null 2>&1 && $as_unset $as_var
-  fi
-done
-
-# Required to use basename.
-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
-  as_basename=basename
-else
-  as_basename=false
-fi
-
-
-# Name of the executable.
-as_me=`$as_basename -- "$0" ||
-$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-        X"$0" : 'X\(//\)$' \| \
-        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-echo X/"$0" |
-    sed '/^.*\/\([^/][^/]*\)\/*$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\/\)$/{
-           s//\1/
-           q
-         }
-         /^X\/\(\/\).*/{
-           s//\1/
-           q
-         }
-         s/.*/./; q'`
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
 
 # CDPATH.
-$as_unset CDPATH
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
+# ----------------------------------------
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
+# script with STATUS, using 1 if that was 0.
+as_fn_error ()
+{
+  as_status=$1; test $as_status -eq 0 && as_status=1
+  if test "$4"; then
+    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+  fi
+  $as_echo "$as_me: error: $2" >&2
+  as_fn_exit $as_status
+} # as_fn_error
 
-  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 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
-  # 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
-      :loop
-      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
-      t loop
-      s/-\n.*//
-    ' >$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; }; }
+# as_fn_set_status STATUS
+# -----------------------
+# Set $? to STATUS, without forking.
+as_fn_set_status ()
+{
+  return $1
+} # as_fn_set_status
 
-  # 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 sensitive to this).
-  . "./$as_me.lineno"
-  # Exit status is that of the last command.
-  exit
+# as_fn_exit STATUS
+# -----------------
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
+as_fn_exit ()
+{
+  set +e
+  as_fn_set_status $1
+  exit $1
+} # as_fn_exit
+
+# as_fn_unset VAR
+# ---------------
+# Portably unset VAR.
+as_fn_unset ()
+{
+  { eval $1=; unset $1;}
 }
+as_unset=as_fn_unset
+# as_fn_append VAR VALUE
+# ----------------------
+# Append the text in VALUE to the end of the definition contained in VAR. Take
+# advantage of any shell optimizations that allow amortized linear growth over
+# repeated appends, instead of the typical quadratic growth present in naive
+# implementations.
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+  eval 'as_fn_append ()
+  {
+    eval $1+=\$2
+  }'
+else
+  as_fn_append ()
+  {
+    eval $1=\$$1\$2
+  }
+fi # as_fn_append
+
+# as_fn_arith ARG...
+# ------------------
+# Perform arithmetic evaluation on the ARGs, and store the result in the
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
+# must be portable across $(()) and expr.
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+  eval 'as_fn_arith ()
+  {
+    as_val=$(( $* ))
+  }'
+else
+  as_fn_arith ()
+  {
+    as_val=`expr "$@" || test $? -eq 1`
+  }
+fi # as_fn_arith
+
+
+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
+  as_basename=basename
+else
+  as_basename=false
+fi
 
 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
   as_dirname=dirname
@@ -10831,77 +8125,137 @@ else
   as_dirname=false
 fi
 
+as_me=`$as_basename -- "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+        X"$0" : 'X\(//\)$' \| \
+        X"$0" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$0" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
+           s//\1/
+           q
+         }
+         /^X\/\(\/\/\)$/{
+           s//\1/
+           q
+         }
+         /^X\/\(\/\).*/{
+           s//\1/
+           q
+         }
+         s/.*/./; q'`
+
+# 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
+
 ECHO_C= ECHO_N= ECHO_T=
-case `echo -n x` in
+case `echo -n x` in #(((((
 -n*)
-  case `echo 'x\c'` in
+  case `echo 'xy\c'` in
   *c*) ECHO_T='        ';;     # ECHO_T is single tab character.
-  *)   ECHO_C='\c';;
+  xy)  ECHO_C='\c';;
+  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
+       ECHO_T='        ';;
   esac;;
 *)
   ECHO_N='-n';;
 esac
 
-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
-  as_ln_s='ln -s'
-  # ... 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'
+  mkdir conf$$.dir 2>/dev/null
+fi
+if (echo >conf$$.file) 2>/dev/null; then
+  if ln -s conf$$.file conf$$ 2>/dev/null; then
+    as_ln_s='ln -s'
+    # ... 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 -pR'.
+    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
+      as_ln_s='cp -pR'
+  elif ln conf$$.file conf$$ 2>/dev/null; then
+    as_ln_s=ln
+  else
+    as_ln_s='cp -pR'
+  fi
+else
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
 
+
+# as_fn_mkdir_p
+# -------------
+# Create "$as_dir" as a directory, including parents if necessary.
+as_fn_mkdir_p ()
+{
+
+  case $as_dir in #(
+  -*) as_dir=./$as_dir;;
+  esac
+  test -d "$as_dir" || eval $as_mkdir_p || {
+    as_dirs=
+    while :; do
+      case $as_dir in #(
+      *\'*) as_qdir=`$as_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 ||
+$as_echo X"$as_dir" |
+    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 -z "$as_dirs" || eval "mkdir $as_dirs"
+  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
+
+
+} # as_fn_mkdir_p
 if mkdir -p . 2>/dev/null; then
-  as_mkdir_p=:
+  as_mkdir_p='mkdir -p "$as_dir"'
 else
   test -d ./-p && rmdir ./-p
   as_mkdir_p=false
 fi
 
-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
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # 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'"
@@ -10911,13 +8265,19 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 
 
 exec 6>&1
+## ----------------------------------- ##
+## Main body of $CONFIG_STATUS script. ##
+## ----------------------------------- ##
+_ASEOF
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
 
-# Save the log message, to keep $[0] and so on meaningful, and to
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# 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.
 ac_log="
-This file was extended by psmisc $as_me 22.6, which was
-generated by GNU Autoconf 2.61.  Invocation command line was
+This file was extended by psmisc $as_me 22.20, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -10930,7 +8290,16 @@ on `(hostname || uname -n) 2>/dev/null | sed 1q`
 
 _ACEOF
 
-cat >>$CONFIG_STATUS <<_ACEOF
+case $ac_config_files in *"
+"*) set x $ac_config_files; shift; ac_config_files=$*;;
+esac
+
+case $ac_config_headers in *"
+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
+esac
+
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 # Files that config.status was made for.
 config_files="$ac_config_files"
 config_headers="$ac_config_headers"
@@ -10938,22 +8307,25 @@ config_commands="$ac_config_commands"
 
 _ACEOF
 
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 ac_cs_usage="\
-\`$as_me' instantiates files from templates according to the
-current configuration.
+\`$as_me' instantiates files and other configuration actions
+from templates according to the current configuration.  Unless the files
+and actions are specified as TAGs, all are instantiated by default.
 
-Usage: $0 [OPTIONS] [FILE]...
+Usage: $0 [OPTION]... [TAG]...
 
   -h, --help       print this help, then exit
   -V, --version    print version number and configuration settings, then exit
-  -q, --quiet      do not print progress messages
+      --config     print configuration, then exit
+  -q, --quiet, --silent
+                   do not print progress messages
   -d, --debug      don't remove temporary files
       --recheck    update $as_me by reconfiguring in the same conditions
-  --file=FILE[:TEMPLATE]
-                  instantiate the configuration file FILE
-  --header=FILE[:TEMPLATE]
-                  instantiate the configuration header FILE
+      --file=FILE[:TEMPLATE]
+                   instantiate the configuration file FILE
+      --header=FILE[:TEMPLATE]
+                   instantiate the configuration header FILE
 
 Configuration files:
 $config_files
@@ -10964,16 +8336,17 @@ $config_headers
 Configuration commands:
 $config_commands
 
-Report bugs to <bug-autoconf@gnu.org>."
+Report bugs to the package provider."
 
 _ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-psmisc config.status 22.6
-configured by $0, generated by GNU Autoconf 2.61,
-  with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
+psmisc config.status 22.20
+configured by $0, generated by GNU Autoconf 2.69,
+  with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2006 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -10981,20 +8354,26 @@ ac_pwd='$ac_pwd'
 srcdir='$srcdir'
 INSTALL='$INSTALL'
 MKDIR_P='$MKDIR_P'
+AWK='$AWK'
+test -n "\$AWK" || AWK=awk
 _ACEOF
 
-cat >>$CONFIG_STATUS <<\_ACEOF
-# If no file are specified by the user, then we need to provide default
-# value.  By we need to know if files were specified by the user.
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+# The default lists apply if the user does not specify any file.
 ac_need_defaults=:
 while test $# != 0
 do
   case $1 in
-  --*=*)
+  --*=?*)
     ac_option=`expr "X$1" : 'X\([^=]*\)='`
     ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
     ac_shift=:
     ;;
+  --*=)
+    ac_option=`expr "X$1" : 'X\([^=]*\)='`
+    ac_optarg=
+    ac_shift=:
+    ;;
   *)
     ac_option=$1
     ac_optarg=$2
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
     ac_cs_recheck=: ;;
   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    echo "$ac_cs_version"; exit ;;
+    $as_echo "$ac_cs_version"; exit ;;
+  --config | --confi | --conf | --con | --co | --c )
+    $as_echo "$ac_cs_config"; exit ;;
   --debug | --debu | --deb | --de | --d | -d )
     debug=: ;;
   --file | --fil | --fi | --f )
     $ac_shift
-    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+    case $ac_optarg in
+    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    '') as_fn_error $? "missing file argument" ;;
+    esac
+    as_fn_append CONFIG_FILES " '$ac_optarg'"
     ac_need_defaults=false;;
   --header | --heade | --head | --hea )
     $ac_shift
-    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+    case $ac_optarg in
+    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    esac
+    as_fn_append 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; }; };;
+    as_fn_error $? "ambiguous option: \`$1'
+Try \`$0 --help' for more information.";;
   --help | --hel | -h )
-    echo "$ac_cs_usage"; exit ;;
+    $as_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: error: unrecognized option: $1
-Try \`$0 --help' for more information." >&2
-   { (exit 1); exit 1; }; } ;;
+  -*) as_fn_error $? "unrecognized option: \`$1'
+Try \`$0 --help' for more information." ;;
 
-  *) ac_config_targets="$ac_config_targets $1"
+  *) as_fn_append ac_config_targets " $1"
      ac_need_defaults=false ;;
 
   esac
@@ -11049,27 +8435,29 @@ if $ac_cs_silent; then
 fi
 
 _ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
-  echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
-  CONFIG_SHELL=$SHELL
+  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+  shift
+  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+  CONFIG_SHELL='$SHELL'
   export CONFIG_SHELL
-  exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+  exec "\$@"
 fi
 
 _ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 exec 5>>config.log
 {
   echo
   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 ## Running $as_me. ##
 _ASBOX
-  echo "$ac_log"
+  $as_echo "$ac_log"
 } >&5
 
 _ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 #
 # INIT-COMMANDS
 #
@@ -11084,7 +8472,7 @@ AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
 
 _ACEOF
 
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 
 # Handling of arguments.
 for ac_config_target in $ac_config_targets
@@ -11098,10 +8486,9 @@ do
     "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
     "icons/Makefile") CONFIG_FILES="$CONFIG_FILES icons/Makefile" ;;
     "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
+    "testsuite/Makefile") CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;;
 
-  *) { { 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; }; };;
+  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
   esac
 done
 
 # after its creation but before its name has been assigned to `$tmp'.
 $debug ||
 {
-  tmp=
+  tmp= ac_tmp=
   trap 'exit_status=$?
-  { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status
+  : "${ac_tmp:=$tmp}"
+  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
 ' 0
-  trap '{ (exit 1); exit 1; }' 1 2 13 15
+  trap 'as_fn_exit 1' 1 2 13 15
 }
 # Create a (secure) tmp directory for tmp files.
 
 {
   tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
-  test -n "$tmp" && test -d "$tmp"
+  test -d "$tmp"
 }  ||
 {
   tmp=./conf$$-$RANDOM
   (umask 077 && mkdir "$tmp")
-} ||
-{
-   echo "$me: cannot create a temporary directory in ." >&2
-   { (exit 1); exit 1; }
-}
-
-#
-# Set up the sed scripts for CONFIG_FILES section.
-#
+} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
+ac_tmp=$tmp
 
-# No need to generate the scripts if there are no CONFIG_FILES.
-# This happens for instance when ./config.status config.h
+# Set up the scripts for CONFIG_FILES section.
+# No need to generate them if there are no CONFIG_FILES.
+# This happens for instance with `./config.status config.h'.
 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
-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
-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
-LN_S!$LN_S$ac_delim
-WITH_SELINUX!$WITH_SELINUX$ac_delim
-SELINUX_LIB!$SELINUX_LIB$ac_delim
-WITH_IPV6!$WITH_IPV6$ac_delim
-TERMCAP_LIB!$TERMCAP_LIB$ac_delim
-CPP!$CPP$ac_delim
-GREP!$GREP$ac_delim
-EGREP!$EGREP$ac_delim
-WANT_PEEKFD_I386_TRUE!$WANT_PEEKFD_I386_TRUE$ac_delim
-WANT_PEEKFD_I386_FALSE!$WANT_PEEKFD_I386_FALSE$ac_delim
-WANT_PEEKFD_X86_64_TRUE!$WANT_PEEKFD_X86_64_TRUE$ac_delim
-WANT_PEEKFD_X86_64_FALSE!$WANT_PEEKFD_X86_64_FALSE$ac_delim
-WANT_PEEKFD_PPC_TRUE!$WANT_PEEKFD_PPC_TRUE$ac_delim
-WANT_PEEKFD_PPC_FALSE!$WANT_PEEKFD_PPC_FALSE$ac_delim
-USE_NLS!$USE_NLS$ac_delim
-MSGFMT!$MSGFMT$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
 
-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`
+ac_cr=`echo X | tr X '\015'`
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
+# But we know of no other shell where ac_cr would be empty at this
+# point, so we can use a bashism as a fallback.
+if test "x$ac_cr" = x; then
+  eval ac_cr=\$\'\\r\'
+fi
+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
+  ac_cs_awk_cr='\\r'
+else
+  ac_cs_awk_cr=$ac_cr
 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 <conf$$subs.sed
-rm -f conf$$subs.sed
-cat >>$CONFIG_STATUS <<_ACEOF
-CEOF$ac_eof
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
 _ACEOF
 
 
+{
+  echo "cat >conf$$subs.awk <<_ACEOF" &&
+  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
+  echo "_ACEOF"
+} >conf$$subs.sh ||
+  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
-  cat >conf$$subs.sed <<_ACEOF
-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
-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
-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
-LIBOBJS!$LIBOBJS$ac_delim
-LTLIBOBJS!$LTLIBOBJS$ac_delim
-_ACEOF
+  . ./conf$$subs.sh ||
+    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 23; then
+  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
+  if test $ac_delim_n = $ac_delim_num; 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; }; }
+    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
   else
     ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
   fi
 done
+rm -f conf$$subs.sh
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
+_ACEOF
+sed -n '
+h
+s/^/S["/; s/!.*/"]=/
+p
+g
+s/^[^!]*!//
+:repl
+t repl
+s/'"$ac_delim"'$//
+t delim
+:nl
+h
+s/\(.\{148\}\)..*/\1/
+t more1
+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
+p
+n
+b repl
+:more1
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t nl
+:delim
+h
+s/\(.\{148\}\)..*/\1/
+t more2
+s/["\\]/\\&/g; s/^/"/; s/$/"/
+p
+b
+:more2
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
+p
+g
+s/.\{148\}//
+t delim
+' <conf$$subs.awk | sed '
+/^[^""]/{
+  N
+  s/\n//
+}
+' >>$CONFIG_STATUS || ac_write_fail=1
+rm -f conf$$subs.awk
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+_ACAWK
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
+  for (key in S) S_is_set[key] = 1
+  FS = "\a"
 
-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
+}
+{
+  line = $ 0
+  nfields = split(line, field, "@")
+  substed = 0
+  len = length(field[1])
+  for (i = 2; i < nfields; i++) {
+    key = field[i]
+    keylen = length(key)
+    if (S_is_set[key]) {
+      value = S[key]
+      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
+      len += length(value) + length(field[++i])
+      substed = 1
+    } else
+      len += 1 + keylen
+  }
+
+  print line
+}
 
-cat >>$CONFIG_STATUS <<_ACEOF
-cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof
-/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
+_ACAWK
 _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 <conf$$subs.sed
-rm -f conf$$subs.sed
-cat >>$CONFIG_STATUS <<_ACEOF
-:end
-s/|#_!!_#|//g
-CEOF$ac_eof
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
+  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
+else
+  cat
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
+  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
 _ACEOF
 
-
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
+# ${srcdir} and @srcdir@ entries 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/
+  ac_vpsub='/^[         ]*VPATH[        ]*=[    ]*/{
+h
+s///
+s/^/:/
+s/[     ]*$/:/
+s/:\$(srcdir):/:/g
+s/:\${srcdir}:/:/g
+s/:@srcdir@:/:/g
+s/^:*//
 s/:*$//
+x
+s/\(=[  ]*\).*/\1/
+G
+s/\n//
 s/^[^=]*=[      ]*$//
 }'
 fi
 
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 fi # test -n "$CONFIG_FILES"
 
+# Set up the scripts for CONFIG_HEADERS section.
+# No need to generate them if there are no CONFIG_HEADERS.
+# This happens for instance with `./config.status Makefile'.
+if test -n "$CONFIG_HEADERS"; then
+cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
+BEGIN {
+_ACEOF
+
+# Transform confdefs.h into an awk script `defines.awk', embedded as
+# here-document in config.status, that substitutes the proper values into
+# config.h.in to produce config.h.
+
+# Create a delimiter string that does not exist in confdefs.h, to ease
+# handling of long lines.
+ac_delim='%!_!# '
+for ac_last_try in false false :; do
+  ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
+  if test -z "$ac_tt"; then
+    break
+  elif $ac_last_try; then
+    as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
+  else
+    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+  fi
+done
+
+# For the awk script, D is an array of macro values keyed by name,
+# likewise P contains macro parameters if any.  Preserve backslash
+# newline sequences.
+
+ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
+sed -n '
+s/.\{148\}/&'"$ac_delim"'/g
+t rset
+:rset
+s/^[    ]*#[    ]*define[       ][      ]*/ /
+t def
+d
+:def
+s/\\$//
+t bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3"/p
+s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2"/p
+d
+:bsnl
+s/["\\]/\\&/g
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[    ]*\(.*\)/P["\1"]="\2"\
+D["\1"]=" \3\\\\\\n"\\/p
+t cont
+s/^ \('"$ac_word_re"'\)[        ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
+t cont
+d
+:cont
+n
+s/.\{148\}/&'"$ac_delim"'/g
+t clear
+:clear
+s/\\$//
+t bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/"/p
+d
+:bsnlc
+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
+b cont
+' <confdefs.h | sed '
+s/'"$ac_delim"'/"\\\
+"/g' >>$CONFIG_STATUS || ac_write_fail=1
+
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+  for (key in D) D_is_set[key] = 1
+  FS = "\a"
+}
+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
+  line = \$ 0
+  split(line, arg, " ")
+  if (arg[1] == "#") {
+    defundef = arg[2]
+    mac1 = arg[3]
+  } else {
+    defundef = substr(arg[1], 2)
+    mac1 = arg[2]
+  }
+  split(mac1, mac2, "(") #)
+  macro = mac2[1]
+  prefix = substr(line, 1, index(line, defundef) - 1)
+  if (D_is_set[macro]) {
+    # Preserve the white space surrounding the "#".
+    print prefix "define", macro P[macro] D[macro]
+    next
+  } else {
+    # 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.
+    if (defundef == "undef") {
+      print "/*", prefix defundef, macro, "*/"
+      next
+    }
+  }
+}
+{ print }
+_ACAWK
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
+  as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
+fi # test -n "$CONFIG_HEADERS"
+
 
-for ac_tag in  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS
+eval set X "  :F $CONFIG_FILES  :H $CONFIG_HEADERS    :C $CONFIG_COMMANDS"
+shift
+for ac_tag
 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; }; };;
+  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
   :[FH]-) ac_tag=-:-;;
   :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
   esac
@@ -11408,7 +8825,7 @@ echo "$as_me: error: Invalid tag $ac_tag." >&2;}
     for ac_f
     do
       case $ac_f in
-      -) ac_f="$tmp/stdin";;
+      -) ac_f="$ac_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 `:'.
@@ -11417,26 +8834,34 @@ echo "$as_me: error: Invalid tag $ac_tag." >&2;}
           [\\/$]*) 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; }; };;
+          as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
       esac
-      ac_file_inputs="$ac_file_inputs $ac_f"
+      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+      as_fn_append 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."
+    configure_input='Generated from '`
+         $as_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;}
+      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+$as_echo "$as_me: creating $ac_file" >&6;}
     fi
+    # Neutralize special characters interpreted by sed in replacement strings.
+    case $configure_input in #(
+    *\&* | *\|* | *\\* )
+       ac_sed_conf_input=`$as_echo "$configure_input" |
+       sed 's/[\\\\&|]/\\\\&/g'`;; #(
+    *) ac_sed_conf_input=$configure_input;;
+    esac
 
     case $ac_tag in
-    *:-:* | *:-) cat >"$tmp/stdin";;
+    *:-:* | *:-) cat >"$ac_tmp/stdin" \
+      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
     esac
     ;;
   esac
@@ -11446,42 +8871,7 @@ $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'`
-  { 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 :; 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 ||
-echo X"$as_dir" |
+$as_echo X"$ac_file" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -11499,20 +8889,15 @@ echo X"$as_dir" |
            q
          }
          s/.*/./; q'`
-      test -d "$as_dir" && break
-    done
-    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; }; }; }
+  as_dir="$ac_dir"; as_fn_mkdir_p
   ac_builddir=.
 
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'`
+  ac_top_builddir_sub=`$as_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/ ;;
@@ -11557,12 +8942,12 @@ ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
   esac
 _ACEOF
 
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # 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/ {
+ac_sed_dataroot='
+/datarootdir/ {
   p
   q
 }
@@ -11570,36 +8955,37 @@ case `sed -n '/datarootdir/ {
 /@docdir@/p
 /@infodir@/p
 /@localedir@/p
-/@mandir@/p
-' $ac_file_inputs` in
+/@mandir@/p'
+case `eval "sed -n \"\$ac_sed_dataroot\" $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;}
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 _ACEOF
-cat >>$CONFIG_STATUS <<_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
   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' ;;
+  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
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
+ac_sed_extra="$ac_vpsub
 $extrasub
 _ACEOF
-cat >>$CONFIG_STATUS <<\_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 :t
 /@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-s&@configure_input@&$configure_input&;t t
+s|@configure_input@|$ac_sed_conf_input|;t t
 s&@top_builddir@&$ac_top_builddir_sub&;t t
+s&@top_build_prefix@&$ac_top_build_prefix&;t t
 s&@srcdir@&$ac_srcdir&;t t
 s&@abs_srcdir@&$ac_abs_srcdir&;t t
 s&@top_srcdir@&$ac_top_srcdir&;t t
@@ -11610,135 +8996,66 @@ 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
+"
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
+  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
 
 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;}
-
-  rm -f "$tmp/stdin"
+  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
+  { ac_out=`sed -n '/^[         ]*datarootdir[  ]*:*=/p' \
+      "$ac_tmp/out"`; test -z "$ac_out"; } &&
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+which seems to be undefined.  Please make sure it is defined" >&5
+$as_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;}
+
+  rm -f "$ac_tmp/stdin"
   case $ac_file in
-  -) cat "$tmp/out"; rm -f "$tmp/out";;
-  *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;;
-  esac
+  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
+  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
+  esac \
+  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
  ;;
   :H)
   #
   # CONFIG_HEADER
   #
-_ACEOF
-
-# 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
-
-# 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.
-# (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
-  sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS
-  echo 'CEOF
-    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 conftest.tail
-
-echo "ac_result=$ac_in" >>$CONFIG_STATUS
-cat >>$CONFIG_STATUS <<\_ACEOF
   if test x"$ac_file" != x-; 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;}
+    {
+      $as_echo "/* $configure_input  */" \
+      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
+    } >"$ac_tmp/config.h" \
+      || as_fn_error $? "could not create $ac_file" "$LINENO" 5
+    if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
+      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+$as_echo "$as_me: $ac_file is unchanged" >&6;}
     else
-      rm -f $ac_file
-      mv "$tmp/config.h" $ac_file
+      rm -f "$ac_file"
+      mv "$ac_tmp/config.h" "$ac_file" \
+       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     fi
   else
-    echo "/* $configure_input  */"
-    cat "$ac_result"
+    $as_echo "/* $configure_input  */" \
+      && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
+      || as_fn_error $? "could not create -" "$LINENO" 5
   fi
-  rm -f "$tmp/out12"
-# Compute $ac_file's index in $config_headers.
+# Compute "$ac_file"'s index in $config_headers.
+_am_arg="$ac_file"
 _am_stamp_count=1
 for _am_header in $config_headers :; do
   case $_am_header in
-    $ac_file | $ac_file:* )
+    $_am_arg | $_am_arg:* )
       break ;;
     * )
       _am_stamp_count=`expr $_am_stamp_count + 1` ;;
   esac
 done
-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 ||
-echo X$ac_file |
+echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
+$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+        X"$_am_arg" : 'X\(//\)[^/]' \| \
+        X"$_am_arg" : 'X\(//\)$' \| \
+        X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$_am_arg" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -11758,30 +9075,40 @@ echo X$ac_file |
          s/.*/./; q'`/stamp-h$_am_stamp_count
  ;;
 
-  :C)  { echo "$as_me:$LINENO: executing $ac_file commands" >&5
-echo "$as_me: executing $ac_file commands" >&6;}
+  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+$as_echo "$as_me: executing $ac_file commands" >&6;}
  ;;
   esac
 
 
   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.
-  # We used to match only the files named `Makefile.in', but
-  # 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.
-  # 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" ||
+    "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
+  # Autoconf 2.62 quotes --file arguments for eval, but not when files
+  # are listed without --file.  Let's play safe and only enable the eval
+  # if we detect the quoting.
+  case $CONFIG_FILES in
+  *\'*) eval set x "$CONFIG_FILES" ;;
+  *)   set x $CONFIG_FILES ;;
+  esac
+  shift
+  for mf
+  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.
+    # We used to match only the files named `Makefile.in', but
+    # 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.
+    # 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 -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/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 ||
-echo X"$mf" |
+$as_echo X"$mf" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -11799,68 +9126,33 @@ echo X"$mf" |
            q
          }
          s/.*/./; q'`
-  else
-    continue
-  fi
-  # Extract the definition of DEPDIR, am__include, and am__quote
-  # from the Makefile without running `make'.
-  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-  test -z "$DEPDIR" && continue
-  am__include=`sed -n 's/^am__include = //p' < "$mf"`
-  test -z "am__include" && continue
-  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-  # When using ansi2knr, U may be empty or an underscore; expand it
-  U=`sed -n 's/^U = //p' < "$mf"`
-  # Find all dependency output files, they are included files with
-  # $(DEPDIR) in their names.  We invoke sed twice because it is the
-  # simplest approach to changing $(DEPDIR) to its actual value in the
-  # expansion.
-  for file in `sed -n "
-    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-    # Make sure the directory exists.
-    test -f "$dirpart/$file" && continue
-    fdir=`$as_dirname -- "$file" ||
+    else
+      continue
+    fi
+    # Extract the definition of DEPDIR, am__include, and am__quote
+    # from the Makefile without running `make'.
+    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+    test -z "$DEPDIR" && continue
+    am__include=`sed -n 's/^am__include = //p' < "$mf"`
+    test -z "am__include" && continue
+    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+    # When using ansi2knr, U may be empty or an underscore; expand it
+    U=`sed -n 's/^U = //p' < "$mf"`
+    # Find all dependency output files, they are included files with
+    # $(DEPDIR) in their names.  We invoke sed twice because it is the
+    # simplest approach to changing $(DEPDIR) to its actual value in the
+    # expansion.
+    for file in `sed -n "
+      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+      # Make sure the directory exists.
+      test -f "$dirpart/$file" && continue
+      fdir=`$as_dirname -- "$file" ||
 $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
         X"$file" : 'X\(//\)[^/]' \| \
         X"$file" : 'X\(//\)$' \| \
         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
-         }
-         s/.*/./; q'`
-    { 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 :; 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 ||
-echo X"$as_dir" |
+$as_echo X"$file" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
            s//\1/
            q
@@ -11878,16 +9170,12 @@ echo X"$as_dir" |
            q
          }
          s/.*/./; q'`
-      test -d "$as_dir" && break
+      as_dir=$dirpart/$fdir; as_fn_mkdir_p
+      # echo "creating $dirpart/$file"
+      echo '# dummy' > "$dirpart/$file"
     done
-    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
+}
  ;;
     "po-directories":C)
     for ac_file in $CONFIG_FILES; do
@@ -12007,11 +9295,13 @@ done
 done # for ac_tag
 
 
-{ (exit 0); exit 0; }
+as_fn_exit 0
 _ACEOF
-chmod +x $CONFIG_STATUS
 ac_clean_files=$ac_clean_files_save
 
+test $ac_write_fail = 0 ||
+  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
+
 
 # configure is writing to config.log, and then calls config.status.
 # config.status does its own redirection, appending to config.log.
@@ -12031,6 +9321,10 @@ if test "$no_create" != yes; then
   exec 5>>config.log
   # Use ||, not &&, to avoid exiting from the if with $? = 1, which
   # would make configure fail if this is the last instruction.
-  $ac_cs_success || { (exit 1); exit 1; }
+  $ac_cs_success || as_fn_exit 1
+fi
+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 fi
 
index 07a9824..9df639d 100644 (file)
@@ -1,19 +1,21 @@
 dnl Process this file with autoconf to produce a configure script.
-AC_PREREQ(2.61)
-AC_INIT([psmisc],[22.6])
+AC_PREREQ([2.68])
+AC_CONFIG_MACRO_DIR([m4])
+AC_INIT([psmisc],[22.20])
 AC_CONFIG_SRCDIR([src/comm.h])
 AC_CONFIG_HEADER([config.h])
 AC_CONFIG_AUX_DIR([config])
+AC_CANONICAL_TARGET
 AM_INIT_AUTOMAKE([1.10])
+AC_LANG([C])
 
 dnl Checks for programs.
-AC_PROG_CXX
 AC_PROG_CC
-#AC_PROG_CPP
 AC_PROG_MAKE_SET
 AC_PROG_LN_S
 
 dnl checks for options
+# SELinux support - off by default
 AC_SUBST([WITH_SELINUX])
 AC_ARG_ENABLE([selinux],
   [AS_HELP_STRING([--enable-selinux], [Enable Security-Enhanced Linux features])],
@@ -26,6 +28,26 @@ if test "$enable_selinux" = "yes"; then
 fi
 AC_SUBST([SELINUX_LIB])
 
+# Call fork before all stat calls to stop hanging on NFS mounts
+AC_SUBST([WITH_TIMEOUT_STAT])
+AC_ARG_ENABLE([timeout_stat],
+  [AS_HELP_STRING([--enable-timeout-stat], [Use a timeout on stat calls (optional with argument "static" for a static background process)])],
+  [enable_timeout_stat=$enableval],
+  [enable_timeout_stat="no"])
+if test "$enable_timeout_stat" = "yes"; then
+  AC_DEFINE([WITH_TIMEOUT_STAT], [1], [Use timeout on stat calls])
+fi
+if test "$enable_timeout_stat" = "static"; then
+  AC_DEFINE([WITH_TIMEOUT_STAT], [2], [Use timeout on stat calls])
+fi
+AM_CONDITIONAL([WANT_TIMEOUT_STAT], [test "$enable_timeout_stat" = "static"])
+
+# Enable hardened compile and link flags
+AC_ARG_ENABLE([harden_flags],
+  [AS_HELP_STRING([--disable-harden-flags], [disable hardened compilier and linker flags])],
+  [enable_harden_flags=$enableval],
+  [enable_harden_flags="yes"])
+
 dnl ipv4 only option
 AC_SUBST([WITH_IPV6])
 AC_ARG_ENABLE([ipv6],
@@ -58,6 +80,26 @@ AC_TYPE_PID_T
 AC_TYPE_SIZE_T
 AC_CHECK_MEMBERS([struct stat.st_rdev])
 AC_TYPE_UID_T
+
+# Check that harden CFLAGS will compile
+AS_IF([test "$enable_harden_flags" = "yes"],
+  HARDEN_CFLAGS="-fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security"
+  [ AC_MSG_CHECKING([compiler supports harden flags])
+  save_harden_cflags="$CFLAGS"
+  CFLAGS="$CFLAGS $HARDEN_CFLAGS"
+  AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,,)],
+      [AC_MSG_RESULT([yes])],
+     [AC_MSG_RESULT([no]); HARDEN_CFLAGS='']
+    )
+  CFLAGS="$save_harden_cflags"],
+  [HARDEN_CFLAGS=""])
+AC_SUBST([HARDEN_CFLAGS])
+
+dnl Check for language stuff
+AM_GNU_GETTEXT_VERSION([0.16.1])
+AM_GNU_GETTEXT([external])
+
+dnl Must be after the gettext stuff as it sets build_cpu
 AC_CHECK_MEMBERS([struct user_regs_struct.orig_eax,
                struct user_regs_struct.eax,
                struct user_regs_struct.ebx,
@@ -67,9 +109,25 @@ AC_CHECK_MEMBERS([struct user_regs_struct.orig_eax,
                struct user_regs_struct.rax,
                struct user_regs_struct.rdi,
                struct user_regs_struct.rsi,
-               struct user_regs_struct.rdx], [],[], [#include <linux/user.h>])
+               struct user_regs_struct.rdx], [],[],
+    [#include <bits/types.h>
+     #include <sys/user.h>])
 AC_CHECK_MEMBERS([struct pt_regs.orig_gpr3,
                struct pt_regs.gpr], [],[], [#include <linux/ptrace.h>])
+AC_CHECK_MEMBERS([struct pt_regs.uregs],[],[], [#include <asm/ptrace.h>])
+AC_CHECK_MEMBERS([struct pt_regs.regs,
+                  struct pt_regs.cp0_status],[],[], [#include <asm/ptrace.h>])
+
+case ${target_os} in
+  gnu*)
+    want_fuser=no
+    ;;
+  *)
+    want_fuser=yes
+       ;;
+esac
+AM_CONDITIONAL(WANT_FUSER, test $want_fuser = yes)
+
 AM_CONDITIONAL(WANT_PEEKFD_I386,
  test $ac_cv_member_struct_user_regs_struct_orig_eax = yes &&
    test $ac_cv_member_struct_user_regs_struct_eax = yes &&
@@ -85,10 +143,12 @@ AM_CONDITIONAL(WANT_PEEKFD_X86_64,
 AM_CONDITIONAL(WANT_PEEKFD_PPC,
    test $ac_cv_member_struct_pt_regs_orig_gpr3 = yes &&
    test $ac_cv_member_struct_pt_regs_gpr = yes )
-
-dnl Check for language stuff
-AM_GNU_GETTEXT([external])
-AM_GNU_GETTEXT_VERSION([0.16.1])
+AM_CONDITIONAL(WANT_PEEKFD_ARM,
+   test $ac_cv_member_struct_pt_regs_uregs = yes)
+AM_CONDITIONAL(WANT_PEEKFD_MIPS,
+   test $build_cpu = mipsel &&
+   test $ac_cv_member_struct_pt_regs_regs = yes &&
+   test $ac_cv_member_struct_pt_regs_cp0_status = yes)
 
 dnl Checks for library functions.
 AC_FUNC_CLOSEDIR_VOID
@@ -100,14 +160,21 @@ AC_FUNC_MALLOC
 AC_FUNC_MEMCMP
 AC_FUNC_REALLOC
 AC_FUNC_STAT
-AC_CHECK_FUNCS([atexit getmntent memset nl_langinfo regcomp rpmatch setlocale socket strcasecmp strchr strdup strerror strpbrk strrchr strtoul])
+AC_CHECK_FUNCS([atexit getmntent memset nl_langinfo rawmemchr regcomp rpmatch setlocale socket strcasecmp strchr strdup strerror strpbrk strrchr strtoul])
 
 dnl Checks for Large File System
 AC_SYS_LARGEFILE
 
+if test x"$DEJAGNU" = x
+then
+  DEJAGNU="\$(top_srcdir)/testsuite/global-conf.exp"
+fi
+AC_SUBST(DEJAGNU)
+       
 AC_CONFIG_FILES([Makefile
                 doc/Makefile
                 src/Makefile
                 icons/Makefile
-                po/Makefile.in])
+                po/Makefile.in
+                testsuite/Makefile])
 AC_OUTPUT
index 1185f82..541637f 100644 (file)
@@ -1,4 +1,11 @@
 
-man_MANS = fuser.1 killall.1 peekfd.1 pstree.1
+man_MANS = killall.1 peekfd.1 prtstat.1 pstree.1
+EXTRA_MANS = 
 
-EXTRA_DIST = $(man_MANS)
+if WANT_FUSER
+  man_MANS += fuser.1
+else
+  EXTRA_MANS += fuser.1
+endif
+
+EXTRA_DIST = $(man_MANS) $(EXTRA_MANS)
index 96ba66e..35224c5 100644 (file)
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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.
 
 @SET_MAKE@
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -31,6 +50,9 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+target_triplet = @target@
+@WANT_FUSER_TRUE@am__append_1 = fuser.1
+@WANT_FUSER_FALSE@am__append_2 = fuser.1
 subdir = doc
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -41,11 +63,44 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
        $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+    *) f=$$p;; \
+  esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+  for p in $$list; do echo "$$p $$p"; done | \
+  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+    if (++n[$$2] == $(am__install_max)) \
+      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+    END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
 man1dir = $(mandir)/man1
 am__installdirs = "$(DESTDIR)$(man1dir)"
 NROFF = nroff
@@ -62,11 +117,9 @@ CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
+DEJAGNU = @DEJAGNU@
 DEPDIR = @DEPDIR@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -76,6 +129,7 @@ EXEEXT = @EXEEXT@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GREP = @GREP@
+HARDEN_CFLAGS = @HARDEN_CFLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -103,6 +157,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 POSUB = @POSUB@
@@ -115,6 +170,7 @@ USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 WITH_IPV6 = @WITH_IPV6@
 WITH_SELINUX = @WITH_SELINUX@
+WITH_TIMEOUT_STAT = @WITH_TIMEOUT_STAT@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
 abs_builddir = @abs_builddir@
@@ -122,7 +178,6 @@ 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@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
@@ -164,11 +219,17 @@ sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
+target = @target@
 target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-man_MANS = fuser.1 killall.1 peekfd.1 pstree.1
-EXTRA_DIST = $(man_MANS)
+man_MANS = killall.1 peekfd.1 prtstat.1 pstree.1 $(am__append_1)
+EXTRA_MANS = $(am__append_2)
+EXTRA_DIST = $(man_MANS) $(EXTRA_MANS)
 all: all-am
 
 .SUFFIXES:
@@ -176,14 +237,14 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
-             cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-               && exit 0; \
+             ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+               && { if test -f $@; then exit 0; else break; fi; }; \
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  doc/Makefile'; \
-       cd $(top_srcdir) && \
-         $(AUTOMAKE) --gnu  doc/Makefile
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --gnu doc/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
@@ -201,51 +262,50 @@ $(top_srcdir)/configure:  $(am__configure_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-install-man1: $(man1_MANS) $(man_MANS)
+$(am__aclocal_m4_deps):
+install-man1: $(man_MANS)
        @$(NORMAL_INSTALL)
-       test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
-       @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
-       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
-       for i in $$l2; do \
-         case "$$i" in \
-           *.1*) list="$$list $$i" ;; \
-         esac; \
+       @list1=''; \
+       list2='$(man_MANS)'; \
+       test -n "$(man1dir)" \
+         && test -n "`echo $$list1$$list2`" \
+         || exit 0; \
+       echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+       $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+       { for i in $$list1; do echo "$$i"; done;  \
+       if test -n "$$list2"; then \
+         for i in $$list2; do echo "$$i"; done \
+           | sed -n '/\.1[a-z]*$$/p'; \
+       fi; \
+       } | while read p; do \
+         if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+         echo "$$d$$p"; echo "$$p"; \
+       done | \
+       sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+             -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+       sed 'N;N;s,\n, ,g' | { \
+       list=; while read file base inst; do \
+         if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+           echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+           $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+         fi; \
        done; \
-       for i in $$list; do \
-         if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
-         else file=$$i; fi; \
-         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
-         case "$$ext" in \
-           1*) ;; \
-           *) ext='1' ;; \
-         esac; \
-         inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
-         inst=`echo $$inst | sed -e 's/^.*\///'`; \
-         inst=`echo $$inst | sed '$(transform)'`.$$ext; \
-         echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
-         $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
-       done
+       for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+       while read files; do \
+         test -z "$$files" || { \
+           echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+           $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+       done; }
+
 uninstall-man1:
        @$(NORMAL_UNINSTALL)
-       @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
-       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
-       for i in $$l2; do \
-         case "$$i" in \
-           *.1*) list="$$list $$i" ;; \
-         esac; \
-       done; \
-       for i in $$list; do \
-         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
-         case "$$ext" in \
-           1*) ;; \
-           *) ext='1' ;; \
-         esac; \
-         inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
-         inst=`echo $$inst | sed -e 's/^.*\///'`; \
-         inst=`echo $$inst | sed '$(transform)'`.$$ext; \
-         echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
-         rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
-       done
+       @list=''; test -n "$(man1dir)" || exit 0; \
+       files=`{ for i in $$list; do echo "$$i"; done; \
+       l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+         sed -n '/\.1[a-z]*$$/p'; \
+       } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+             -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+       dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
 tags: TAGS
 TAGS:
 
@@ -254,6 +314,19 @@ CTAGS:
 
 
 distdir: $(DISTFILES)
+       @list='$(MANS)'; if test -n "$$list"; then \
+         list=`for p in $$list; do \
+           if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+           if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
+         if test -n "$$list" && \
+           grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
+           echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
+           grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
+           echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
+           echo "       typically \`make maintainer-clean' will remove them" >&2; \
+           exit 1; \
+         else :; fi; \
+       else :; fi
        @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
        list='$(DISTFILES)'; \
@@ -269,13 +342,17 @@ distdir: $(DISTFILES)
          if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
          if test -d $$d/$$file; then \
            dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
            if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-             cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
            fi; \
-           cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
          else \
-           test -f $(distdir)/$$file \
-           || cp -p $$d/$$file $(distdir)/$$file \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
            || exit 1; \
          fi; \
        done
@@ -296,16 +373,22 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -324,6 +407,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -332,18 +417,28 @@ install-data-am: install-man
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man: install-man1
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -379,6 +474,7 @@ uninstall-man: uninstall-man1
        mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
        uninstall-am uninstall-man uninstall-man1
 
+
 # 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.
 .NOEXPORT:
index 8f410b2..e7f0d92 100644 (file)
@@ -1,18 +1,28 @@
-.TH FUSER 1 2005-11-05 "Linux" "User Commands"
+.\"
+.\" Copyright 1993-2005 Werner Almesberger
+.\"           2005-2012 Craig Small
+.\" This program is free software; you can redistribute it and/or modify
+.\" it under the terms of the GNU General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or
+.\" (at your option) any later version.
+.\"
+.TH FUSER 1 "2012-07-28" "psmisc" "User Commands"
 .SH NAME
 fuser \- identify processes using files or sockets
 .SH SYNOPSIS
 .ad l
 .B fuser
-.RB [ \-a | \-s | \-c ]
+.RB [ \-fuv ]
+.RB [ \-a | \-s ]
 .RB [ \-4 | \-6 ]
-.RB [ \-n\ 
-.IR space ]
-.RB [ \-k
+.RB [ \-c | \-m | \-n
+.IR space ]
+.RB [ \ \-k
 .RB [ \-i ]
-.RB [ \- \fIsignal
-] ]
-.RB [ \-muvf ]
+.RB [ \-M ]
+.RB [ \-w ]
+.RB [ \- \fISIGNAL\fR]
+]
 .IR name " ..."
 .br
 .B fuser
@@ -23,152 +33,251 @@ fuser \- identify processes using files or sockets
 .ad b
 .SH DESCRIPTION
 .B fuser
-displays the PIDs of processes using the specified files or file systems.
-In the default display mode, each file name is followed by a letter denoting
-the type of access:
+displays the PIDs of processes using the specified files or file
+systems.  In the default display mode, each file name is followed by a
+letter denoting the type of access:
+.PP
 .RS
-.IP \fBc\fP
+.PD 0
+.TP
+.B c
 current directory.
-.IP \fBe\fP
+.TP
+.B e
 executable being run.
-.IP \fBf\fP
-open file. \fBf\fP is omitted in default display mode.
-.IP \fBF\fP
-open file for writing. \fBF\fP is omitted in default display mode.
-.IP \fBr\fP
+.TP
+.B f
+open file.
+.B f
+is omitted in default display mode.
+.TP
+.B F
+open file for writing.
+.B F
+is omitted in default display mode.
+.TP
+.B r
 root directory.
-.IP \fBm\fP
+.TP
+.B m
 mmap'ed file or shared library.
+.PD
 .RE
 .LP
-\fBfuser\fP returns a non-zero return code if none of the specified files
-is accessed or in case of a fatal error. If at least one access has been
-found, \fBfuser\fP returns zero.
+.B fuser
+returns a non-zero return code if none of the specified files is
+accessed or in case of a fatal error.  If at least one access has been
+found,
+.B fuser
+returns zero.
+.PP
+In order to look up processes using TCP and UDP sockets, the
+corresponding name space has to be selected with the
+.B \-n
+option. By default
+.B fuser
+will look in both IPv6 and IPv4 sockets.  To change the default,
+behavior, use the
+.B \-4
+and
+.B \-6
+options.  The socket(s) can be specified by the local and remote port,
+and the remote address.  All fields are optional, but commas in front
+of missing fields must be present:
+.PP
+\fB[\fR\fIlcl_port\fR\fB][\fR,\fB[\fR\fIrmt_host\fR\fB][\fR,\fB[\fIrmt_port\fR\fB]]]
 .PP
-In order to look up processes using TCP and UDP sockets, the corresponding
-name space has to be selected with the \fB\-n\fP option. By default
-\fBfuser\fP will look in both IPv6 and IPv4 sockets. To change the default,
-behavior, use the \fB\-4\fP and \fB\-6\fP options. The socket(s) can
-be specified by the local and remote port, and the remote address. All fields
-are optional, but commas in front of missing fields must be present:
-
-.RB \fB[\fP\fIlcl_port\fP\fB][\fP,\fB[\fP\fIrmt_host\fP\fB][\fP,\fB[\fIrmt_port\fP\fB]]]
-
 Either symbolic or numeric values can be used for IP addresses and port
 numbers.
 .PP
-\fBfuser\fP outputs only the PIDs to stdout, everything else is sent to stderr.
+.B fuser
+outputs only the PIDs to stdout, everything else is sent to stderr.
 .SH OPTIONS
-.IP \fB\-a\fP
-Show all files specified on the command line. By default, only files that are
-accessed by at least one process are shown.
-.IP \fB\-c\fP
+.TP
+\fB\-a\fR, \fB\-\-all\fR
+Show all files specified on the command line.  By default, only files
+that are accessed by at least one process are shown.
+.TP
+\fB\-c\fR
 Same as \-m option, used for POSIX compatibility.
-.IP \fB\-f\fP
+.TP
+\fB\-f\fR
 Silently ignored, used for POSIX compatibility.
-.IP \fB\-k\fP
-Kill processes accessing the file. Unless changed with \fB\-\fP\fIsignal\fP,
-SIGKILL is sent. An \fBfuser\fP process never kills itself, but may kill
-other \fBfuser\fP processes. The effective user ID of the process executing
-\fBfuser\fP is set to its real user ID before attempting to kill.
-.IP \fB\-i\fP
+.TP
+\fB\-k\fR, \fB\-\-kill\fR
+Kill processes accessing the file.  Unless changed with
+\fB\-\fR\fISIGNAL\fR, SIGKILL is sent.  An
+.B fuser
+process never kills itself, but may kill other
+.B fuser
+processes.  The effective user ID of the process executing
+.B fuser
+is set to its real user ID before attempting to kill.
+.TP
+\fB\-i\fR, \fB\-\-interactive\fR
 Ask the user for confirmation before killing a process. This option is
-silently ignored if \fB\-k\fP is not present too.
-.IP \fB\-l\fP
+silently ignored if
+.B \-k
+is not present too.
+.TP
+\fB\-l\fR, \fB\-\-list\-signals\fR
 List all known signal names.
-.IP \fB\-m\fP
-\fIname\fP specifies a file on a mounted file system or a block device that
-is mounted. All processes accessing files on that file system are listed.
+.TP
+\fB\-m\fR \fINAME\fR, \fB\-\-mount\fR \fINAME\fR
+.I NAME
+specifies a file on a mounted file system or a block device that is
+mounted.  All processes accessing files on that file system are listed.
 If a directory file is specified, it is automatically changed to
-\fIname\fP/. to use any file system that might be mounted on that
-directory.
-.IP \fB\-n\ \fIspace\fP
-Select a different name space. The name spaces \fBfile\fP (file names, the
-default), \fBudp\fP (local UDP ports), and \fBtcp\fP (local TCP ports) are
-supported. For ports, either the port number or the symbolic name can be
-specified. If there is no ambiguity, the shortcut notation
-\fIname\fB/\fPIspace\fR (e.g. \fI80\fB/\fPtcp\fR ) can be used.
-.IP \fB\-s\fP
-Silent operation. \fB\-u\fP and \fB\-v\fP are ignored in this mode.
-\fB\-a\fP must not be used with \fB\-s\fP.
-.IP \fB\-\fIsignal\fP
-Use the specified signal instead of SIGKILL when killing processes. Signals
-can be specified either by name (e.g. \fB\-HUP\fP) or by number
-(e.g. \fB\-1\fP). This option is silently ignored if the \fB\-k\fP option
-is not used.
-.IP \fB\-u\fP
+.IR NAME /.
+to use any file system that might be mounted on that directory.
+.TP
+\fB\-M\f, \fB\-\-ismountpoint\fR
+Request will be fulfilled only if
+.I NAME
+specifies a mountpoint.  This is an invaluable seatbelt which prevents
+you from killing the machine if
+.I NAME
+happens to not be a filesystem.
+.TP
+\fB\-w\fP
+Kill only processes which have write access.  This option is silently
+ignored if
+.B \-k
+is not present too.
+.TP
+\fB\-n \fISPACE\fR, \fB\-\-namespace\fR \fISPACE\fR
+Select a different name space.  The name spaces
+.B file
+(file names, the default),
+.B udp
+(local UDP ports), and
+.B tcp
+(local TCP ports) are supported.  For ports, either the port number or
+the symbolic name can be specified.  If there is no ambiguity, the
+shortcut notation \fIname\fB/\fIspace\fR (e.g. \fI80\fB/\fItcp\fR)
+can be used.
+.TP
+\fB\-s\fR, \fB\-\-silent\fR
+Silent operation.
+.B  \-u
+and
+.B \-v
+are ignored in this mode.
+.B \-a
+must not be used with
+.BR \-s .
+.TP
+\fB\-\fISIGNAL\fR
+Use the specified signal instead of SIGKILL when killing processes.
+Signals can be specified either by name (e.g.
+.BR \-HUP ) or by
+number (e.g.
+.BR \-1 ).
+This option is silently ignored if the
+.B \-k
+option is not used.
+.TP
+\fB\-u\fR, \fB\-\-user\fR
 Append the user name of the process owner to each PID.
-.IP \fB\-v\fP
-Verbose mode. Processes are shown in a \fBps\fP-like style. The fields PID,
-USER and COMMAND are similar to \fBps\fP. ACCESS shows how the process
-accesses the file. If the access is by the kernel (e.g. in the case of a
-mount point, a swap file, etc.), \fBkernel\fP is shown instead of the PID.
-.IP \fB\-V\fP
+.TP
+\fB\-v\fR, \fB\-\-verbose\fR
+
+Verbose mode.  Processes are shown in a
+.BR  ps -like
+style.  The fields PID, USER and COMMAND are similar to
+.BR ps .
+ACCESS shows how the process accesses the file.  Verbose mode will also
+show when a particular file is being access as a mount point, knfs
+export or swap file.  In this case
+.B kernel
+is shown instead of the PID.
+.TP
+\fB\-V\fR, \fB\-\-version\fR
 Display version information.
-.IP \fB\-4\fP
-Search only for IPv4 sockets. This option must not be used with the
-\fB\-6\fP option and only has an effect with the tcp and udp namespaces.
-.IP \fB\-6\fP
-Search only for IPv6 sockets. This option must not be used with the \fB\-4\fP
+.TP
+\fB\-4\fR, \fB\-\-ipv4\fR
+Search only for IPv4 sockets.  This option must not be used with the
+.B \-6
+option and only has an effect with the tcp and udp namespaces.
+.TP
+\fB\-6\fR, \fB\-\-ipv6\fR
+Search only for IPv6 sockets.  This option must not be used with the
+.B \-4
 option and only has an effect with the tcp and udp namespaces.
-.IP \fB\-\fP
+.IP \fB\-\fR
 Reset all options and set the signal back to SIGKILL.
 .SH FILES
-.nf
-/proc  location of the proc file system
-.fi
+.TP
+/proc
+location of the proc file system
 .SH EXAMPLES
-\fBfuser \-km /home\fP kills all processes accessing the file system /home
-in any way.
-.LP
-\fBif fuser \-s /dev/ttyS1; then :; else \fIsomething\fP; fi\fR invokes
-\fIsomething\fP if no other process is using /dev/ttyS1.
-.LP
-\fBfuser telnet/tcp\fP shows all processes at the (local) TELNET port.
+.TP
+.B fuser \-km /home
+kills all processes accessing the file system /home in any way.
+.TP
+\fBif fuser \-s /dev/ttyS1; then :; else \fIsomething\fB; fi\fR
+invokes
+.I something
+if no other process is using /dev/ttyS1.
+.TP
+.B fuser telnet/tcp
+shows all processes at the (local) TELNET port.
 .SH RESTRICTIONS
-Processes accessing the same file or file system several times in the same way
-are only shown once.
+Processes accessing the same file or file system several times in the
+same way are only shown once.
 .PP
-If the same object is specified several times on the command line, some of
-those entries may be ignored.
+If the same object is specified several times on the command line, some
+of those entries may be ignored.
 .PP
-\fBfuser\fP may only be able to gather partial information unless run with
-privileges. As a consequence, files opened by processes belonging to other
-users may not be listed and executables may be classified as mapped only.
-.PP
-Installing \fBfuser\fP SUID root will avoid problems associated with
-partial information, but may be undesirable for security and privacy
-reasons.
+.B fuser
+may only be able to gather partial information unless run with
+privileges.  As a consequence, files opened by processes belonging to
+other users may not be listed and executables may be classified as
+mapped only.
 .PP
-\fBudp\fP and \fBtcp\fP name spaces, and UNIX domain sockets can't be
-searched with kernels older than 1.3.78.
+Installing
+.B fuser
+SUID root will avoid problems associated with partial information, but
+may be undesirable for security and privacy reasons.
 .PP
-\fBudp\fP and \fBtcp\fP currently  work with IPv6 and IPv4, but the
-address fields can only be IPv4 addresses.
+.B udp
+and
+.B tcp
+name spaces, and UNIX domain sockets can't be searched with kernels
+older than 1.3.78.
 .PP
-Accesses by the kernel are only shown with the \fB\-v\fP option.
+Accesses by the kernel are only shown with the
+.B \-v
+option.
 .PP
-The \fB\-k\fP option only works on processes. If the user is the kernel,
-\fBfuser\fP will print an advice, but take no action beyond that.
+The
+.B \-k
+option only works on processes.  If the user is the kernel,
+.B fuser
+will print an advice, but take no action beyond that.
 .SH BUGS
 .PP
-fuser \-m /dev/sgX will show (or kill with the \-k flag) all processes, even
-if you don't have that device configured. There may be other devices it
-does this for too.
+fuser \-m /dev/sgX will show (or kill with the \-k flag) all processes,
+even if you don't have that device configured.  There may be other
+devices it does this for too.
 .PP
 .B fuser
-cannot report on any processes that it doesn't have permission to look at
-the file descriptor table for.  The most common time this problem occurs
-is when looking for TCP or UDP sockets when running
+cannot report on any processes that it doesn't have permission to look
+at the file descriptor table for.  The most common time this problem
+occurs is when looking for TCP or UDP sockets when running
 .B fuser
-as a non-root user. In this case 
+as a non-root user.  In this case
 .B fuser
 will report no access
-.SH AUTHORS
-.PP
-Werner Almesberger <werner@almesberger.net>
 .PP
-Craig Small <csmall@small.dropbear.id.au>
+The mount \-m option will match any file within the save device as the
+specified file, use the \-M option as well if you mean to specify only
+the mount point.
 .SH "SEE ALSO"
-.BR kill "(1), " killall "(1), " lsof "(8), " ps "(1), " kill (2).
-.\"{{{}}}
+.BR kill (1),
+.BR killall (1),
+.BR lsof (8),
+.BR pkill (1),
+.BR ps (1),
+.BR kill (2).
+.\{{{}}}
index 61951fe..00065e2 100644 (file)
@@ -1,24 +1,36 @@
-.TH KILLALL 1 2007-08-09 "Linux" "User Commands"
+.\"
+.\" Copyright 1993-2002 Werner Almesberger
+.\"           2002-2012 Craig Small
+.\" This program is free software; you can redistribute it and/or modify
+.\" it under the terms of the GNU General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or
+.\" (at your option) any later version.
+.\"
+.TH KILLALL 1 "2012-7-28" "psmisc" "User Commands"
 .SH NAME
 killall \- kill processes by name
 .SH SYNOPSIS
 .ad l
 .B killall
-.RB [ \-Z , \-\-context 
+.RB [ \-Z , \ \-\-context
 .IR pattern ]
-.RB [ \-e , \-\-exact ]
-.RB [ \-g , \-\-process\-group ]
-.RB [ \-i , \-\-interactive ]
-.RB [ \-q , \-\-quiet ]
-.RB [ \-r , \-\-regexp ]
-.RB [ \-s , \-\-signal
+.RB [ \-e , \ \-\-exact ]
+.RB [ \-g , \ \-\-process\-group ]
+.RB [ \-i , \ \-\-interactive ]
+.RB [ \-o , \ \-\-older\-than
+.IR TIME ]
+.RB [ \-q , \ \-\-quiet ]
+.RB [ \-r , \ \-\-regexp ]
+.RB [ \-s , \ \-\-signal
 .IR signal ]
-.RB [ \-u , \-\-user 
+.RB [ \-u , \ \-\-user
 .IR user ]
-.RB [ \-v , \-\-verbose ]
-.RB [ \-w , \-\-wait ]
-.RB [ \-I , \-\-ignore-case ]
-.RB [ \-V, \-\-version ]
+.RB [ \-v , \ \-\-verbose ]
+.RB [ \-w , \ \-\-wait ]
+.RB [ \-y , \ \-\-younger\-than
+.IR TIME ]
+.RB [ \-I , \ \-\-ignore-case ]
+.RB [ \-V, \ \-\-version ]
 .RB [ \-\- ]
 .I name ...
 .br
@@ -26,45 +38,71 @@ killall \- kill processes by name
 .RB \-l
 .br
 .B killall
-.RB \-V, \-\-version
+.RB \-V, \ \-\-version
 .ad b
 .SH DESCRIPTION
 .B killall
-sends a signal to all processes running any of the specified commands. If no
-signal name is specified, SIGTERM is sent.
+sends a signal to all processes running any of the specified commands.
+If no signal name is specified, SIGTERM is sent.
 .PP
-Signals can be specified either by name (e.g. \fB\-HUP\fP or \fB-SIGHUP\fP )
-or by number (e.g. \fB\-1\fP) or by option \fB-s\fP.
+Signals can be specified either by name (e.g.
+.B \-HUP
+or
+.BR -SIGHUP )
+or by number (e.g.
+.BR \-1 )
+or by option
+.BR -s .
 .PP
-If the command name is not regular expression (option \fB-r\fP)
-and contains a slash (\fB/\fP), processes executing that
-particular file will be selected for killing, independent of their name.
+If the command name is not regular expression (option
+.BR -r )
+and contains a slash
+.RB ( / ),
+processes executing that particular file will be selected for killing,
+independent of their name.
 .PP
-\fBkillall\fP returns a zero return code if at least one process has been
-killed for each listed command, or no commands were listed and at least
-one process matched the -u and -Z search criteria. \fBkillall\fP returns
-non-zero otherwise.
+.B killall
+returns a zero return code if at least one process has been killed for
+each listed command, or no commands were listed and at least one
+process matched the -u and -Z search criteria.
+.B killall
+returns non-zero otherwise.
 .PP
-A \fBkillall\fP process never kills itself (but may kill other \fBkillall\fP
+A
+.B killall
+process never kills itself (but may kill other
+.B killall
 processes).
 .SH OPTIONS
 .IP "\fB\-e\fP, \fB\-\-exact\fP"
-Require an exact match for very long names. If a command name is longer
-than 15 characters, the full name may be unavailable (i.e. it is swapped
-out). In this case, \fBkillall\fP will kill everything that matches within
-the first 15 characters. With \fB\-e\fP, such entries are skipped.
-\fBkillall\fP prints a message for each skipped entry
-if \fB\-v\fP is specified in addition to \fB\-e\fP,
+Require an exact match for very long names.  If a command name is
+longer than 15 characters, the full name may be unavailable (i.e.  it
+is swapped out).  In this case,
+.B killall
+will kill everything that matches within the first 15 characters.  With
+.BR \-e ,
+such entries are skipped.
+.B killall
+prints a message for each skipped entry
+if
+.B \-v
+is specified in addition to
+.BR \-e ,
 .IP "\fB\-I\fP, \fB\-\-ignore\-case\fP"
 Do case insensitive process name match.
 .IP "\fB\-g\fP, \fB\-\-process\-group\fP"
-Kill the process group to which the process belongs. The kill signal is only
-sent once per group, even if multiple processes belonging to the same process
-group were found.
+Kill the process group to which the process belongs.  The kill signal
+is only sent once per group, even if multiple processes belonging to
+the same process group were found.
 .IP "\fB\-i\fP, \fB\-\-interactive\fP"
 Interactively ask for confirmation before killing.
 .IP "\fB\-l\fP, \fB\-\-list\fP"
 List all known signal names.
+.IP "\fB\-o\fP, \fB\-\-older\-than\fP"
+Match only processes that are older (started before) the time
+specified.  The time is specified as a float then a unit.  The units
+are s,m,h,d,w,M,y for seconds, minutes, hours, days, weeks, Months and
+years respectively.
 .IP "\fB\-q\fP, \fB\-\-quiet\fP"
 Do not complain if no processes were killed.
 .IP "\fB\-r\fP, \fB\-\-regexp\fP"
@@ -72,42 +110,63 @@ Interpret process name pattern as an extended regular expression.
 .IP "\fB\-s\fP, \fB\-\-signal\fP"
 Send this signal instead of SIGTERM.
 .IP "\fB\-u\fP, \fB\-\-user\fP"
-Kill only processes the specified user owns. Command names are optional.
+Kill only processes the specified user owns.  Command names are
+optional.
 .IP "\fB\-v\fP, \fB\-\-verbose\fP"
 Report if the signal was successfully sent.
 .IP "\fB\-V\fP, \fB\-\-version\fP"
 Display version information.
 .IP "\fB\-w\fP, \fB\-\-wait\fP"
-Wait for all killed processes to die. \fBkillall\fP checks once per second if
-any of the killed processes still exist and only returns if none are left.
-Note that \fBkillall\fP may wait forever if the signal was ignored, had no
-effect, or if the process stays in zombie state.
+Wait for all killed processes to die.
+.B killall
+checks once per second if any of the killed processes still exist and
+only returns if none are left.  Note that
+.B killall
+may wait forever if the signal was ignored, had no effect, or if the
+process stays in zombie state.
+.IP "\fB\-y\fP, \fB\-\-younger\-than\fP"
+Match only processes that are younger (started after) the time
+specified.  The time is specified as a float then a unit.  The units
+are s,m,h,d,w,M,y for seconds, minutes, hours, days, weeks, Months and
+years respectively.
 .IP "\fB\-Z\fP, \fB\-\-context\fP"
-(SELinux Only) Specify security context: kill only processes having security 
-context that match with given expended regular expression pattern. Must precede 
-other arguments on the command line. Command names are optional.
+(SELinux Only) Specify security context: kill only processes having
+security context that match with given expended regular expression
+pattern.  Must precede other arguments on the command line.  Command
+names are optional.
 .SH FILES
-.nf
-/proc  location of the proc file system
-.fi
+.TP
+/proc
+location of the proc file system
 .SH "KNOWN BUGS"
 Killing by file only works for executables that are kept open during
 execution, i.e. impure executables can't be killed this way.
 .PP
-Be warned that typing \fBkillall\fP \fIname\fP may not have the desired
-effect on non-Linux systems, especially when done by a privileged
-user.
+Be warned that typing
+.B killall
+.I name
+may not have the desired effect on non-Linux systems, especially when
+done by a privileged user.
+.PP
+.B killall \-w
+doesn't detect if a process disappears and is replaced by a new process
+with the same PID between scans.
 .PP
-\fBkillall \-w\fP doesn't detect if a process disappears and is replaced by
-a new process with the same PID between scans.
+If processes change their name,
+.B killall
+may not be able to match them correctly.
 .PP
-If processes change their name, \fBkillall\fP may not be able to match 
-them correctly.
-.SH AUTHORS
-Werner Almesberger <werner@almesberger.net> wrote the original version
-of psmisc. Since version 20 Craig Small <csmall@small.dropbear.id.au>
-can be blamed.
+.B killall
+has a limit of names that can be specified on the command line.  This
+figure is the size of an unsigned long multiplied by 8.  For most 32
+bit systems the limit is 32 and similarly for a 64 bit system the limit
+is usually 64.
 .SH "SEE ALSO"
-.BR kill "(1), " fuser "(1), " pgrep "(1), " pidof "(1), " pkill "(1), "
-.BR ps "(1), " kill (2).
-.\"{{{}}}
+.BR kill (1),
+.BR fuser (1),
+.BR pgrep (1),
+.BR pidof (1),
+.BR pkill (1),
+.BR ps (1),
+.BR kill (2).
+.\{{{}}}
index eaaed1e..a1dbddf 100644 (file)
@@ -1,7 +1,12 @@
-.\" Process this file with
-.\" groff -man -Tascii foo.1
 .\"
-.TH PEEKFD 1 "APRIL 2007" Linux "User Commands"
+.\" Copyright 2007 Trent Waddington <trent.waddington@gmail.com>
+.\"
+.\" This program is free software; you can redistribute it and/or modify
+.\" it under the terms of the GNU General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or
+.\" (at your option) any later version.
+.\"
+.TH PEEKFD 1 "2012-07-28" "psmisc" "User Commands"
 .SH NAME
 peekfd \- peek at file descriptors of running processes
 .SH SYNOPSIS
@@ -18,18 +23,20 @@ peekfd \- peek at file descriptors of running processes
 .B ...
 .SH DESCRIPTION
 .B peekfd
-attaches to a running process and intercepts all reads 
-and writes to file descriptors.  You can specify the 
-desired file descriptor numbers or dump all of them.
+attaches to a running process and intercepts all reads and writes to
+file descriptors.  You can specify the desired file descriptor numbers
+or dump all of them.
 .SH OPTIONS
 .IP -8
 Do no post-processing on the bytes being read or written.
 .IP -n
 Do not display headers indicating the source of the bytes dumped.
 .IP -c
-Also dump the requested file descriptor activity in any new child processes that are created.
+Also dump the requested file descriptor activity in any new child
+processes that are created.
 .IP -d
-Remove duplicate read/writes from the output.  If you're looking at a tty with echo, you might want this.
+Remove duplicate read/writes from the output.  If you're looking at a
+tty with echo, you might want this.
 .IP -v
 Display a version string.
 .IP -h
@@ -37,19 +44,22 @@ Display a help message.
 .SH FILES
 .I /proc/*/fd
 .RS
-Not used but useful for the user to look at to get good file descriptor numbers.
+Not used but useful for the user to look at to get good file descriptor
+numbers.
 .SH ENVIRONMENT
 None.
 .SH DIAGNOSTICS
 The following diagnostics may be issued on stderr:
-
-.B 
-Error attaching to pid ...
-.RS
-An unknown error occured while attempted to attach to a process.. you may need to be root.
+.TP
+.B Error attaching to pid ...
+An unknown error occurred while attempted to attach to a process..  you
+may need to be root.
 .SH BUGS
-Probably lots.  Don't be surprised if the process you are monitoring dies.
+Probably lots.  Don't be surprised if the process you are monitoring
+dies.
 .SH AUTHOR
-Trent Waddington <trent.waddington@gmail.com>
+.MT trent.waddington@gmail.com
+Trent Waddington
+.ME
 .SH "SEE ALSO"
 .BR ttysnoop (8)
diff --git a/doc/prtstat.1 b/doc/prtstat.1
new file mode 100644 (file)
index 0000000..4752bf8
--- /dev/null
@@ -0,0 +1,48 @@
+.\"
+.\" Copyright 2009-2012 Craig Small
+.\"
+.\" This program is free software; you can redistribute it and/or modify
+.\" it under the terms of the GNU General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or
+.\" (at your option) any later version.
+.\"
+.TH PRTSTAT 1 "2012-07-28" "psmisc" "User Commands"
+.SH NAME
+prtstat \- print statistics of a process
+.SH SYNOPSIS
+.ad l
+.B prtstat
+.RB [ \-r | \-\-raw ]
+.I pid
+.br
+.B prtstat
+.RB \-V | \-\-version
+.ad b
+.SH DESCRIPTION
+.B prtstat
+prints the statistics of the specified process.  This information comes
+from the
+.I /proc/PID/stat
+file.
+.SH OPTIONS
+.TP
+.BR \-r , \ \-\-raw
+Print the information in raw format.
+.TP
+.BR \-V , \ \-\-version
+Show the version information for
+.BR prtstat .
+.SH OPTIONS
+.TP
+.BR \-r , \ \-\-raw
+Print the information in raw format.
+.TP
+.BR \-V , \ \-\-version
+Show the version information for
+.BR prtstat .
+.SH FILES
+.TP
+/proc/<PID>/stat
+source of the information
+.B prtstat
+uses
index c7b122c..fea80b6 100644 (file)
@@ -1,31 +1,47 @@
-.TH PSTREE 1 2004-11-09 "Linux" "User Commands"
+.\"
+.\" Copyright 1993-2002 Werner Almesberger
+.\"           2002-2012 Craig Small
+.\" This program is free software; you can redistribute it and/or modify
+.\" it under the terms of the GNU General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or
+.\" (at your option) any later version.
+.\"
+.TH PSTREE 1 "2012-07-28" "psmisc" "User Commands"
 .SH NAME
 pstree \- display a tree of processes
 .SH SYNOPSIS
 .ad l
 .B pstree
-.RB [ \-a ]
-.RB [ \-c ]
-.RB [ \-h | \-H \fIpid\fB ]
-.RB [ \-l ]
-.RB [ \-n ]
-.RB [ \-p ]
-.RB [ \-u ]
-.RB [ \-Z ]
-.RB [ \-A | \-G | \-U ]
-.RB [ \fIpid\fB | \fIuser\fB]
+.RB [ \-a  , \ \-\-arguments ]
+.RB [ \-c  , \ \-\-compact ]
+.RB [ \-h  , \ \-\-highlight\-all  , \ \-H \fIpid\fB  , \ \-\-highlight\-pid\ \fIpid\fB ]
+.RB [ \-g  ] \ \-\-show\-pgids ]
+.RB [ \-l  , \ \-\-long ]
+.RB [ \-n  , \ \-\-numeric\-sort ]
+.RB [ \-p  , \ \-\-show\-pids ]
+.RB [ \-s  , \ \-\-show\-parents ]
+.RB [ \-u  , \ \-\-uid\-changes ]
+.RB [ \-Z  , \ \-\-security\-context ]
+.RB [ \-A  , \ \-\-ascii  , \ \-G  , \ \-\-vt100  , \ \-U  , \ \-\-unicode ]
+.RB [ \fIpid\fB  , \ \fIuser\fB]
 .br
 .B pstree
-.RB \-V
+.RB \-V  , \ \-\-version
 .ad b
 .SH DESCRIPTION
 .B pstree
-shows running processes as a tree. The tree is rooted at either
-\fIpid\fP or \fBinit\fP if \fIpid\fP is omitted. If a user name is specified,
-all process trees rooted at processes owned by that user are shown.
+shows running processes as a tree.  The tree is rooted at either
+.I pid
+or
+.B init
+if
+.I pid
+is omitted.  If a user name is specified, all process trees rooted at
+processes owned by that user are shown.
 .PP
-\fBpstree\fP visually merges identical branches by putting them in square
-brackets and prefixing them with the repetition count, e.g.
+.B pstree
+visually merges identical branches by putting them in square brackets
+and prefixing them with the repetition count, e.g.
 .nf
 .sp
     init\-+\-getty
@@ -42,67 +58,98 @@ becomes
 .fi
 .PP
 .PP
-Child threads of a process are found under the parent process and are shown
-with the process name in curly braces, e.g.
+Child threads of a process are found under the parent process and are
+shown with the process name in curly braces, e.g.
 .nf
 .sp
     icecast2\-\-\-13*[{icecast2}]
 .sp
 .fi
 .PP
-If \fBpstree\fR is called as \fBpstree.x11\fR then it will prompt the user
-at the end of the line to press return and will not return until that
-has happened. This is useful for when \fBpstree\fR is run in a xterminal.
+If
+.B pstree
+is called as
+.B pstree.x11
+then it will prompt the user at the end of the line to press return and
+will not return until that has happened.  This is useful for when
+.B pstree
+is run in a xterminal.
+.PP
+Certain kernel or mount parameters, such as the hidepid option for procfs,
+will hide information for some processes. In these situations
+.B pstree
+will attempt to build the tree without this information, showing process
+names as question marks.
 
 .SH OPTIONS
 .IP \fB\-a\fP
-Show command line arguments. If the command line of a process is swapped out,
-that process is shown in parentheses. \fB\-a\fP implicitly disables compaction.
+Show command line arguments.  If the command line of a process is
+swapped out, that process is shown in parentheses.
+.B \-a
+implicitly disables compaction for processes but not threads.
 .IP \fB\-A\fP
 Use ASCII characters to draw the tree.
 .IP \fB\-c\fP
-Disable compaction of identical subtrees. By default, subtrees are compacted
-whenever possible.
+Disable compaction of identical subtrees.  By default, subtrees are
+compacted whenever possible.
 .IP \fB\-G\fP
 Use VT100 line drawing characters.
 .IP \fB\-h\fP
-Highlight the current process and its ancestors. This is a no-op if the
-terminal doesn't support highlighting or if neither the current process
-nor any of its ancestors are in the subtree being shown.
+Highlight the current process and its ancestors.  This is a no-op if
+the terminal doesn't support highlighting or if neither the current
+process nor any of its ancestors are in the subtree being shown.
 .IP \fB\-H\fP
-Like \fB\-h\fP, but highlight the specified process instead. Unlike with
-\fB\-h\fP, \fBpstree\fP fails when using \fB\-H\fP if highlighting is not
+Like
+.BR \-h ,
+but highlight the specified process instead.  Unlike with
+.BR \-h ,
+.B pstree
+fails when using
+.B \-H
+if highlighting is not
 available.
+.IP \fB\-g\fP
+Show PGIDs.  Process Group IDs are shown as decimal numbers in
+parentheses after each process name.
+.B \-p
+implicitly disables compaction.  If both PIDs and PGIDs are displayed
+then PIDs are shown first.
 .IP \fB\-l\fP
-Display long lines. By default, lines are truncated to the display width or
-132 if output is sent to a non-tty or if the display width is unknown.
+Display long lines.  By default, lines are truncated to the display
+width or 132 if output is sent to a non-tty or if the display width is
+unknown.
 .IP \fB\-n\fP
-Sort processes with the same ancestor by PID instead of by name. (Numeric
-sort.)
+Sort processes with the same ancestor by PID instead of by name. 
+(Numeric sort.)
 .IP \fB\-p\fP
-Show PIDs. PIDs are shown as decimal numbers in parentheses after each
-process name. \fB\-p\fP implicitly disables compaction.
+Show PIDs.  PIDs are shown as decimal numbers in parentheses after each
+process name.
+.B \-p
+implicitly disables compaction.
+.IP \fB\-s\fP
+Show parent processes of the specified process.
 .IP \fB\-u\fP
-Show uid transitions. Whenever the uid of a process differs from the uid of
-its parent, the new uid is shown in parentheses after the process name.
+Show uid transitions.  Whenever the uid of a process differs from the
+uid of its parent, the new uid is shown in parentheses after the
+process name.
 .IP \fB\-U\fP
-Use UTF-8 (Unicode) line drawing characters. Under Linux 1.1-54 and above,
-UTF-8 mode is entered on the console with \fBecho \-e '\\033%8'\fP and left
-with \fBecho \-e '\\033%@'\fP
+Use UTF-8 (Unicode) line drawing characters.  Under Linux 1.1-54 and
+above, UTF-8 mode is entered on the console with
+.B echo \-e '\\033%8'
+and left with
+.B echo \-e '\\033%@'
 .IP \fB\-V\fP
 Display version information.
 .IP \fB\-Z\fP
-(SELinux) Show security context for each process.
+(SELinux) Show security context for each process.  This flag will only
+work if pstree is compilied with SELinux support.
 .SH FILES
-.nf
-/proc  location of the proc file system
-.fi
-.SH AUTHORS
-Werner Almesberger <werner@almesberger.net>
-Craig Small <csmall@small.dropbear.id.au>
+.TP
+/proc
+location of the proc file system
 .SH BUGS
 Some character sets may be incompatible with the VT100 characters.
-
 .SH "SEE ALSO"
-.BR ps "(1), " top (1).
+.BR ps (1),
+.BR top (1).
 .\"{{{}}}
index 7180ea4..6999f91 100644 (file)
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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.
 
 @SET_MAKE@
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -31,6 +50,7 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
+target_triplet = @target@
 subdir = icons
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -41,11 +61,17 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
        $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AMTAR = @AMTAR@
@@ -58,11 +84,9 @@ CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
+DEJAGNU = @DEJAGNU@
 DEPDIR = @DEPDIR@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -72,6 +96,7 @@ EXEEXT = @EXEEXT@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GREP = @GREP@
+HARDEN_CFLAGS = @HARDEN_CFLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -99,6 +124,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 POSUB = @POSUB@
@@ -111,6 +137,7 @@ USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 WITH_IPV6 = @WITH_IPV6@
 WITH_SELINUX = @WITH_SELINUX@
+WITH_TIMEOUT_STAT = @WITH_TIMEOUT_STAT@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
 abs_builddir = @abs_builddir@
@@ -118,7 +145,6 @@ 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@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
@@ -160,7 +186,12 @@ sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
+target = @target@
 target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
 EXTRA_DIST = psmisc16.gif  psmisc32.gif  pstree16.xpm  pstree32.xpm
@@ -171,14 +202,14 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
-             cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-               && exit 0; \
+             ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+               && { if test -f $@; then exit 0; else break; fi; }; \
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  icons/Makefile'; \
-       cd $(top_srcdir) && \
-         $(AUTOMAKE) --gnu  icons/Makefile
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu icons/Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --gnu icons/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
@@ -196,6 +227,7 @@ $(top_srcdir)/configure:  $(am__configure_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 tags: TAGS
 TAGS:
 
@@ -219,13 +251,17 @@ distdir: $(DISTFILES)
          if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
          if test -d $$d/$$file; then \
            dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
            if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-             cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
            fi; \
-           cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
          else \
-           test -f $(distdir)/$$file \
-           || cp -p $$d/$$file $(distdir)/$$file \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
            || exit 1; \
          fi; \
        done
@@ -243,16 +279,22 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -271,6 +313,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -279,18 +323,28 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am:
 
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -323,6 +377,7 @@ uninstall-am:
        maintainer-clean maintainer-clean-generic mostlyclean \
        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.
 .NOEXPORT:
diff --git a/packaging/psmisc.manifest b/packaging/psmisc.manifest
new file mode 100644 (file)
index 0000000..75b0fa5
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+    <request>
+        <domain name="_"/>
+    </request>
+</manifest>
index b8660e7..7667459 100644 (file)
@@ -1,15 +1,21 @@
-Name:           psmisc
-Version:        22.6
-Release:        1
-License:        BSD/GPLv2+
-Summary:        Utilities for managing processes on your system
-Url:            http://psmisc.sourceforge.net
-Group:          Applications/System
-Source:         http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
-
-BuildRequires:  autoconf
-BuildRequires:  automake
-BuildRequires:  pkgconfig(ncurses)
+Name: psmisc
+Version: 22.20
+Release: 2
+License: GPLv2+
+Summary: Utilities for managing processes on your system
+Group: Applications/System
+URL: http://sourceforge.net/projects/psmisc
+Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
+Source1001: %{name}.manifest
+
+BuildRequires: gettext
+BuildRequires: ncurses-devel
+BuildRequires: autoconf automake
+
+#The following has been reworked by upstream in a different way ... we'll see
+#Patch1: psmisc-22.13-fuser-silent.patch
+
+# Patch sent upstream 2012-10-08.
 
 %description
 The psmisc package contains utilities for managing processes on your
@@ -23,26 +29,44 @@ of processes that are using specified files or filesystems.
 %setup -q
 
 %build
-%configure --prefix=/usr
+cp %{SOURCE1001} .
+%configure \
+        --prefix=%{_prefix} \
+        --disable-nls
 make %{?_smp_mflags}
 
 %install
-%make_install
+make install DESTDIR="$RPM_BUILD_ROOT"
 
-mkdir -p %{buildroot}/bin
-mv %{buildroot}%{_bindir}/fuser %{buildroot}/bin/
-mkdir -p %{buildroot}/usr/share/pixmaps/
-install -m 644 icons/pstree16.xpm %{buildroot}/usr/share/pixmaps/
-install -m 644 icons/pstree32.xpm %{buildroot}/usr/share/pixmaps/
+mkdir -p $RPM_BUILD_ROOT/sbin
+mv $RPM_BUILD_ROOT%{_bindir}/fuser $RPM_BUILD_ROOT/sbin
 
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/license
+for keyword in LICENSE COPYING COPYRIGHT;
+do
+        for file in `find %{_builddir} -name $keyword`;
+        do
+                cat $file >> $RPM_BUILD_ROOT%{_datadir}/license/%{name};
+                echo "";
+        done;
+done
 
-%remove_docs
-
-%files 
-/bin/fuser
+%files
+%manifest %{name}.manifest
+%{_datadir}/license/%{name}
+/sbin/fuser
 %{_bindir}/killall
-%{_bindir}/oldfuser
 %{_bindir}/pstree
 %{_bindir}/pstree.x11
-%{_prefix}/share/locale/*/LC_MESSAGES/*
-%{_prefix}/share/pixmaps/pstree*.xpm
+%{_bindir}/prtstat
+%{_mandir}/man1/fuser.1*
+%{_mandir}/man1/killall.1*
+%{_mandir}/man1/pstree.1*
+%{_mandir}/man1/prtstat.1*
+%ifarch %{ix86} x86_64 ppc ppc64 %{arm} mipsel
+%{_bindir}/peekfd
+%endif
+%{_mandir}/man1/peekfd.1*
+%doc AUTHORS ChangeLog COPYING README
+
+%changelog
index 1c5cc6b..c33047a 100644 (file)
@@ -1,2 +1,2 @@
 # Enabled languages
-bg ca de eu fi fr hu it ja nb nl pl pt ru ro sv vi zh_CN
+bg ca cs da de el eo eu fi fr hr hu id it ja nb nl pl pt pt_BR ro ru sr sv uk vi zh_CN zh_TW 
index c437b71..bec4ab5 100644 (file)
@@ -1,5 +1,7 @@
-src/killall.c
 src/fuser.c
+src/killall.c
 src/peekfd.c
+src/killall.c
+src/prtstat.c
 src/pstree.c
 src/signals.c
index 57534a7..4dcdc46 100644 (file)
Binary files a/po/bg.gmo and b/po/bg.gmo differ
index 53c1b77..69b1922 100644 (file)
--- a/po/bg.po
+++ b/po/bg.po
@@ -9,193 +9,39 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psmisc 22.2pre1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: 2006-03-07 11:49+0200\n"
 "Last-Translator: Anton Zinoviev <zinoviev@debian.org>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
+"Language: bg\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Да се убие ли %s(%s%d) ? (д/Н) "
-
-#: src/killall.c:77
+#: src/fuser.c:133
 #, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Да се убие ли %s(%s%d) ? (д/Н) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr ""
-"Въз основа на състоянието на процеса не може да се установи потребителят "
-"собственик\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Неправилен регулярен израз: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "пропуска се частичнотото съвпадение %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) се убива със сигнал %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: никой процес не е убит\n"
-
-#: src/killall.c:497
-#, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
-msgstr ""
-"Използване: pidof [ -eg ] ИМЕ...\n"
-"            pidof -V\n"
-"\n"
-"    -e      изисква точно съвпадение при много дълги имена;\n"
-"            пропускане, ако командният ред не е достъпен\n"
-"    -g      показва групата на процеса вместо собственика\n"
-"    -V      извежда информация за версията\n"
-"\n"
-
-#: src/killall.c:511
-#, c-format
-msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
-msgstr ""
-"Използване: killall [-Z КОНТЕКСТ] [-u ПОТРЕБ] [ -eIgiqrvw ] [ -СИГНАЛ ] "
-"ИМЕ...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Използвване: killall [ОПЦИЯ]... [--] ИМЕ...\n"
-
-#: src/killall.c:517
-#, c-format
-msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
-msgstr ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact          изисква точно съвпадение при много дълги имена\n"
-"  -I,--ignore-case    нечувствително към малки/големи букви сравнение с "
-"името\n"
-"  -g,--process-group  убива групата на процеса вместо самия процес\n"
-"  -i,--interactive    пита за потвърждение преди да убие\n"
-"  -l,--list           извежда всички познати имена на сигнали\n"
-"  -q,--quiet          да не протестира (например ако никой процес не е "
-"убит)\n"
-"  -r,--regexp         използва ИМЕ като разширен регулярен израз\n"
-"  -s,--signal СИГНАЛ  изпраща този сигнал вместо SIGTERM\n"
-"  -u,--user ПОТРЕБ    убива само процес(и), изпълнявани от ПОТРЕБителя\n"
-"  -v,--verbose        съобщава, ако успешно е изпратен сигнал\n"
-"  -V,--version        извежда информация за версията\n"
-"  -w,--wait           чака докато процесът умре\n"
-
-#: src/killall.c:533
-#, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context РЕГИЗР убива само процес(и) от посочения контекст на "
-"сигурност\n"
-"                      (трябва да предхожда останалите аргументи)\n"
-
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
-#, c-format
-msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
-"\n"
-msgstr ""
-"Copyright © 1993-2005 Werner Almesberger и Craig Small\n"
-"\n"
-
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"PSmisc се разпространява без АБСОЛЮТНО НИКАКВИ ГАРАНЦИИ.\n"
-"Това е свободен софтуер и вие може да го разпространявате свободно съгласно\n"
-"условията на Основната общодостъпна лицензия на ГНУ.\n"
-"За повече информация относно това, погледнете файловете с име COPYING.\n"
-
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Не може да бъде намерен потребител с име %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Максималният брой имена е %d\n"
-
-# Мисля, че става въпрос за /proc (Антон Зиновиев)
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s е празна (не е монтирана?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
 "       fuser -l\n"
 "       fuser -V\n"
 "Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
 "Използване: fuser [ -a | -s | -c ] [ -n ВИДИМЕ ] [ -СИГНАЛ ] [ -kimuv ] "
 "ИМЕ...\n"
@@ -226,154 +72,307 @@ msgstr ""
 "[отдалечен_порт]]]\n"
 "\n"
 
-#: src/fuser.c:109
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
 
-#: src/fuser.c:113
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"    -         reset options\n"
+"  -                     reset options\n"
 "\n"
 "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
 msgstr ""
 
-#: src/fuser.c:120
+#: src/fuser.c:160
 #, c-format
 msgid "fuser (PSmisc) %s\n"
 msgstr "fuser (PSmisc) %s\n"
 
-#: src/fuser.c:147
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2005 Werner Almesberger и Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc се разпространява без АБСОЛЮТНО НИКАКВИ ГАРАНЦИИ.\n"
+"Това е свободен софтуер и вие може да го разпространявате свободно съгласно\n"
+"условията на Основната общодостъпна лицензия на ГНУ.\n"
+"За повече информация относно това, погледнете файловете с име COPYING.\n"
+
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "Каталогът /proc не може да се отвори: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "Не може да се задели памет за съответстващ процес: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Не може да се достигне мястото на монтиране %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "Не може да се достигне %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "Не може да се определи локалният порт %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "Непознат вид адрес на локалния порт %d (unknown local port AF)\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "Не може да се отвори файлът за протокол „%s“: %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "Опцията за вид име изисква аргумент."
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "Неправилен вид имена"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/fuser.c:1102
+#, fuzzy
+msgid "You can only use files with mountpoint options"
 msgstr "При опцията за файлова система може да се посочват само файлове"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Не е зададена спецификация на процес"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Не може да използвате едновременно опциите -m и -c"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "опцията -a не може да се използва едновременно с -q"
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "Не може да търсите само IPv4-гнезда и в същото време само IPv6-гнезда"
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, fuzzy, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr ""
 "\n"
 "%*s ПОТРЕБИТЕЛ Пот№ ДОСТЪП КОМАНДА\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(неизвест)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "Файлът %s не може да се достигне: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "Не може да се отвори /proc/net/unix: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Не може да се отвори /etc/mtab: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "Да се убие ли процесът %d? (д/Н) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "Процесът %d не може да бъде убит: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "Не може да се отвори мрежово гнездо.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "Не може да бъде намерен номерът на устройството на гнездото.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Да се убие ли %s(%s%d) ? (д/Н) "
+
+#: src/killall.c:103
+#, fuzzy, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Да се убие ли %s(%s%d) ? (д/Н) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr ""
+"Въз основа на състоянието на процеса не може да се установи потребителят "
+"собственик\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Неправилен регулярен израз: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "пропуска се частичнотото съвпадение %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) се убива със сигнал %d\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: никой процес не е убит\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Използване: killall [-Z КОНТЕКСТ] [-u ПОТРЕБ] [ -eIgiqrvw ] [ -СИГНАЛ ] "
+"ИМЕ...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Използвване: killall [ОПЦИЯ]... [--] ИМЕ...\n"
+
+#: src/killall.c:621
+#, fuzzy, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          изисква точно съвпадение при много дълги имена\n"
+"  -I,--ignore-case    нечувствително към малки/големи букви сравнение с "
+"името\n"
+"  -g,--process-group  убива групата на процеса вместо самия процес\n"
+"  -i,--interactive    пита за потвърждение преди да убие\n"
+"  -l,--list           извежда всички познати имена на сигнали\n"
+"  -q,--quiet          да не протестира (например ако никой процес не е "
+"убит)\n"
+"  -r,--regexp         използва ИМЕ като разширен регулярен израз\n"
+"  -s,--signal СИГНАЛ  изпраща този сигнал вместо SIGTERM\n"
+"  -u,--user ПОТРЕБ    убива само процес(и), изпълнявани от ПОТРЕБителя\n"
+"  -v,--verbose        съобщава, ако успешно е изпратен сигнал\n"
+"  -V,--version        извежда информация за версията\n"
+"  -w,--wait           чака докато процесът умре\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context РЕГИЗР убива само процес(и) от посочения контекст на "
+"сигурност\n"
+"                      (трябва да предхожда останалите аргументи)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2005 Werner Almesberger и Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Не може да бъде намерен потребител с име %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Неправилен регулярен израз: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Максималният брой имена е %d\n"
+
+# Мисля, че става въпрос за /proc (Антон Зиновиев)
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s е празна (не е монтирана?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, fuzzy, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -387,31 +386,168 @@ msgid ""
 "  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "Вътрешна грешка: стойността на MAX_DEPTH не е достатъчно голяма.\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2005 Werner Almesberger и Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+#, fuzzy
+msgid "unknown"
+msgstr "(неизвест)"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
 
-#: src/pstree.c:750
+#: src/prtstat.c:317
 #, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+# Мисля, че става въпрос за /proc (Антон Зиновиев)
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s е празна (не е монтирана?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "Използване: pstree [ -a ] [ -c ] [ -h | -H ПРОЦЕС ] [ -l ] [ -n ] [ -p ] [ -"
 "u ]\n"
@@ -432,48 +568,57 @@ msgstr ""
 "    -U        използва псевдографичните знаци на UTF-8 (Уникод)\n"
 "    -V        извежда информация за версията на pstree\n"
 
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
+#: src/pstree.c:850
+#, fuzzy, c-format
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr "    -Z     показва контекста на сигурност за SELinux\n"
 
-#: src/pstree.c:771
-#, c-format
+#: src/pstree.c:852
+#, fuzzy, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 "    ПРОЦЕС    започва от този номер на процес; по подразбиране от 1 (init)\n"
 "    ПОТРЕБ    показва само поддърветата, основани от този потребител\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2005 Werner Almesberger и Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "Не е зададена стойност на TERM\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Не може да се определят възможностите на терминала\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Няма такъв потребител: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Не е намерен нито един процес.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Натиснете Return, за да се завърши\n"
@@ -483,5 +628,36 @@ msgstr "Натиснете Return, за да се завърши\n"
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: непознат сигнал; %s -l извежда познатите сигнали.\n"
 
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Използване: pidof [ -eg ] ИМЕ...\n"
+#~ "            pidof -V\n"
+#~ "\n"
+#~ "    -e      изисква точно съвпадение при много дълги имена;\n"
+#~ "            пропускане, ако командният ред не е достъпен\n"
+#~ "    -g      показва групата на процеса вместо собственика\n"
+#~ "    -V      извежда информация за версията\n"
+#~ "\n"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Не може да се достигне мястото на монтиране %s: %s\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "Не може да използвате едновременно опциите -m и -c"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Не може да се отвори /etc/mtab: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "Вътрешна грешка: стойността на MAX_DEPTH не е достатъчно голяма.\n"
+
 #~ msgid "Cannot open protocol file \"%s\": %s"
 #~ msgstr "Не може да се отвори файлът за протокол „%s“: %s"
index ec626cd..e11a404 100644 (file)
Binary files a/po/ca.gmo and b/po/ca.gmo differ
index 4b27edd..4a550a8 100644 (file)
--- a/po/ca.po
+++ b/po/ca.po
@@ -7,83 +7,263 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psmisc 21.6cvs\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: 2004-12-08 12:46+0100\n"
 "Last-Translator: Guillem Jover <guillem@debian.org>\n"
 "Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
+"Language: ca\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Forma d'ús:\n"
+"    fuser [ -a | -s | -c ] [ -n espai ] [ -senyal ] [ -kimuv ] nom ...\n"
+"          [ - ] [ -n espai ] [ -senyal ] [ -kimuv ] nom ...\n"
+"    fuser -l\n"
+"    fuser -V\n"
+"\n"
+"    -a        mostra també fitxers no usats\n"
+"    -c        sistemes de fitxers muntats\n"
+"    -f        ignorat silenciosament (per compatibilitat amb POSIX)\n"
+"    -k        matar els processos que accedeixen a aquest fitxer\n"
+"    -i        pregunta abans de matar (ignorat sense -k)\n"
+"    -l        llista els noms dels senyals\n"
+"    -m        sistema de fitxers muntat\n"
+"    -n espai  busca en l'espai de noms especificat (file, udp o tcp)\n"
+"    -s        operació silenciosa\n"
+"    -senyal   envia «senyal» en comptes de SIGKILL\n"
+"    -u        mostra ids d'usuari\n"
+"    -v        mode verbal\n"
+"    -V        mostra informació de la versió\n"
+"    -4        busca només sòcols IPv4\n"
+"    -6        busca només sòcols IPv6\n"
+"    -         inicialitza opcions\n"
+"\n"
+"  noms udp/tcp: [port_local][,[hoste_remot][,[port_remot]]]\n"
+"\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+
+#: src/fuser.c:160
+#, fuzzy, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (psmisc) %s\n"
+
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2002 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc ve ABSOLUTAMENT SENSE CAP GARANTIA.\n"
+"Això és software lliure, i esteu convidats a redistribuir-lo sota els "
+"termes\n"
+"de la llicencia publica general de GNU.\n"
+"Per a més informació sobre aquests assumptes, vegeu el fitxer COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr ""
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr ""
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr ""
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr ""
+
+#: src/fuser.c:972
+#, fuzzy, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s/%s: especificació no vàlida\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr ""
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr ""
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr ""
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr ""
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr ""
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+
+#: src/fuser.c:1246
+#, fuzzy, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr ""
+"\n"
+"%*s USUARI      PID ACCÉS  ORDRE\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr ""
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr ""
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Voleu matar el procés %d? (s/N)"
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr ""
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr ""
+
+#: src/fuser.c:1671
+#, fuzzy, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "no s'ha pogut trobar el nombre de dispositiu del sòcol"
+
+#: src/killall.c:100
 #, c-format
 msgid "Kill %s(%s%d) ? (y/N) "
 msgstr "Voleu matar %s(%s%d)? (s/N) "
 
-#: src/killall.c:77
+#: src/killall.c:103
 #, fuzzy, c-format
 msgid "Signal %s(%s%d) ? (y/N) "
 msgstr "Voleu matar %s(%s%d)? (s/N) "
 
-#: src/killall.c:121
+#: src/killall.c:211
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid "killall: Cannot get UID from process status\n"
 msgstr ""
 
-#: src/killall.c:147 src/killall.c:682
+#: src/killall.c:237
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid "killall: Bad regular expression: %s\n"
 msgstr ""
 
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
 msgstr "s'evitarà la coincidència parcial %s(%d)\n"
 
-#: src/killall.c:445
+#: src/killall.c:562
 #, c-format
 msgid "Killed %s(%s%d) with signal %d\n"
 msgstr "S'ha matat %s(%s%d) amb el senyal %d\n"
 
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: no s'ha matat cap procés\n"
-
-#: src/killall.c:497
+#: src/killall.c:576
 #, fuzzy, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
-msgstr ""
-"Forma d'ús: pidof [ -eg ] nom ...\n"
-"            pidof -V\n"
-"\n"
-"    -e      requereix coincidència exacta per a noms molt llargs;\n"
-"            s'eviten si la línia d'ordres no està disponible\n"
-"    -g      mostra l'ID del grup de procés en comptes de l'ID de procés\n"
-"    -V      mostra informació de versió\n"
-"\n"
+msgid "%s: no process found\n"
+msgstr "%s: no s'ha matat cap procés\n"
 
-#: src/killall.c:511
+#: src/killall.c:615
 #, fuzzy, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
 "Forma d'ús: killall [-s sid] [-c context] [ -egiqvw ] [ -senyal ] nom ...\n"
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, fuzzy, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
 msgstr "Forma d'ús: killall [ OPCIONS ] [ -- ] nom ...\n"
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, fuzzy, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -92,6 +272,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -117,7 +299,7 @@ msgstr ""
 "  -w,--wait           espera fins que el procés mori\n"
 "\n"
 
-#: src/killall.c:533
+#: src/killall.c:639
 #, fuzzy, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
@@ -128,279 +310,231 @@ msgstr ""
 "   (-s, -c són mútuament excloents i han de precedir altres arguments)\n"
 "\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, fuzzy, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
 "Copyright (C) 1993-2002 Werner Almesberger i Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
 msgstr ""
-"PSmisc ve ABSOLUTAMENT SENSE CAP GARANTIA.\n"
-"Això és software lliure, i esteu convidats a redistribuir-lo sota els "
-"termes\n"
-"de la llicencia publica general de GNU.\n"
-"Per a més informació sobre aquests assumptes, vegeu el fitxer COPYING.\n"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
 msgstr ""
 
-#: src/killall.c:715
+#: src/killall.c:798
 #, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "El nombre màxim de noms és %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s és buit (no s'ha muntat?)\n"
+msgid "Bad regular expression: %s\n"
+msgstr ""
 
-#: src/fuser.c:89
+#: src/killall.c:830
 #, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Forma d'ús:\n"
-"    fuser [ -a | -s | -c ] [ -n espai ] [ -senyal ] [ -kimuv ] nom ...\n"
-"          [ - ] [ -n espai ] [ -senyal ] [ -kimuv ] nom ...\n"
-"    fuser -l\n"
-"    fuser -V\n"
-"\n"
-"    -a        mostra també fitxers no usats\n"
-"    -c        sistemes de fitxers muntats\n"
-"    -f        ignorat silenciosament (per compatibilitat amb POSIX)\n"
-"    -k        matar els processos que accedeixen a aquest fitxer\n"
-"    -i        pregunta abans de matar (ignorat sense -k)\n"
-"    -l        llista els noms dels senyals\n"
-"    -m        sistema de fitxers muntat\n"
-"    -n espai  busca en l'espai de noms especificat (file, udp o tcp)\n"
-"    -s        operació silenciosa\n"
-"    -senyal   envia «senyal» en comptes de SIGKILL\n"
-"    -u        mostra ids d'usuari\n"
-"    -v        mode verbal\n"
-"    -V        mostra informació de la versió\n"
-"    -4        busca només sòcols IPv4\n"
-"    -6        busca només sòcols IPv6\n"
-"    -         inicialitza opcions\n"
-"\n"
-"  noms udp/tcp: [port_local][,[hoste_remot][,[port_remot]]]\n"
-"\n"
+msgid "killall: Maximum number of names is %d\n"
+msgstr "El nombre màxim de noms és %d\n"
 
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s és buit (no s'ha muntat?)\n"
 
-#: src/fuser.c:113
+#: src/peekfd.c:96
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/fuser.c:120
+#: src/peekfd.c:104
 #, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/fuser.c:147
-#, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "pstree (psmisc) %s\n"
 
-#: src/fuser.c:283
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
 
-#: src/fuser.c:316
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
 
-#: src/fuser.c:476
-#, c-format
-msgid "Cannot resolve local port %s: %s\n"
-msgstr ""
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (psmisc) %s\n"
 
-#: src/fuser.c:492
-#, c-format
-msgid "Unknown local port AF %d\n"
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 1993-2002 Werner Almesberger i Craig Small\n"
+"\n"
 
-#: src/fuser.c:553
-#, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+#: src/prtstat.c:78
+msgid "running"
 msgstr ""
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
+#: src/prtstat.c:80
+msgid "sleeping"
 msgstr ""
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
+#: src/prtstat.c:82
+msgid "disk sleep"
 msgstr ""
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/prtstat.c:84
+msgid "zombie"
 msgstr ""
 
-#: src/fuser.c:840
-msgid "No process specification given"
+#: src/prtstat.c:86
+msgid "traced"
 msgstr ""
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
+#: src/prtstat.c:88
+msgid "paging"
 msgstr ""
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
+#: src/prtstat.c:90
+msgid "unknown"
 msgstr ""
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
 
-#: src/fuser.c:901
-#, fuzzy, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
 "\n"
-"%*s USUARI      PID ACCÉS  ORDRE\n"
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
 msgstr ""
 
-#: src/fuser.c:1019
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
 
-#: src/fuser.c:1113
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
 
-#: src/fuser.c:1149
+#: src/prtstat.c:189
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
 msgstr ""
 
-#: src/fuser.c:1198
+#: src/prtstat.c:199
 #, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "Voleu matar el procés %d? (s/N)"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
 
-#: src/fuser.c:1222
-#, c-format
-msgid "Could not kill process %d: %s\n"
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
 msgstr ""
 
-#: src/fuser.c:1237
+#: src/prtstat.c:226
 #, c-format
-msgid "Cannot open a network socket.\n"
+msgid "Process with pid %d does not exist.\n"
 msgstr ""
 
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "no s'ha pogut trobar el nombre de dispositiu del sòcol"
-
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
+msgid "Unable to open stat file for pid %d (%s)\n"
 msgstr ""
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "pstree (psmisc) %s\n"
+#: src/prtstat.c:308
+#, fuzzy
+msgid "Invalid option"
+msgstr "%s/%s: especificació no vàlida\n"
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
 msgstr ""
 
-#: src/pstree.c:374
-#, fuzzy, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "MAX_DEPTH no és prou gran.\n"
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s és buit (no s'ha muntat?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, fuzzy, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "Forma d'ús: pstree [ -a ] [ -c ] [ -h | -H pid ] [ -l ] [ -n ] [ -p ] [ -"
 "u ]\n"
@@ -418,18 +552,18 @@ msgstr ""
 "    -p     mostra els PID; implica -c\n"
 "    -u     mostra transicions de uid\n"
 
-#: src/pstree.c:768
+#: src/pstree.c:850
 #, fuzzy, c-format
-msgid "    -Z     show SELinux security contexts\n"
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr ""
 "    -s     mostra els SID de Flask\n"
 "    -x     mostra els contextes de seguretat de Flask\n"
 
-#: src/pstree.c:771
+#: src/pstree.c:852
 #, fuzzy, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 "    -U     usar caràcters de dibuix de línia UTF-8 (Unicode)\n"
@@ -438,32 +572,41 @@ msgstr ""
 "    user   només mostra arbres amb arrel en processos d'aquest usuari\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, fuzzy, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (psmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2002 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM no està especificada\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "No s'han pogut obtenir les capacitats\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "No existeix aquest nom d'usuari: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "No s'han trobat processos.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Premeu retorn per a tancar\n"
@@ -473,6 +616,38 @@ msgstr "Premeu retorn per a tancar\n"
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: senyal desconegut. «%s -l» llista els senyals.\n"
 
+#, fuzzy
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Forma d'ús: pidof [ -eg ] nom ...\n"
+#~ "            pidof -V\n"
+#~ "\n"
+#~ "    -e      requereix coincidència exacta per a noms molt llargs;\n"
+#~ "            s'eviten si la línia d'ordres no està disponible\n"
+#~ "    -g      mostra l'ID del grup de procés en comptes de l'ID de procés\n"
+#~ "    -V      mostra informació de versió\n"
+#~ "\n"
+
+#, fuzzy
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright (C) 1993-2002 Werner Almesberger i Craig Small\n"
+#~ "\n"
+
+#, fuzzy
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "MAX_DEPTH no és prou gran.\n"
+
 #~ msgid "%s: SID (%s) must be numeric\n"
 #~ msgstr "%s: el SID (%s) ha de ser numèric\n"
 
@@ -507,6 +682,3 @@ msgstr "%s: senyal desconegut. 
 
 #~ msgid "ignoring -m in name space \"%s\"\n"
 #~ msgstr "s'està ignorant -m en l'espai de noms «%s»\n"
-
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: especificació no vàlida\n"
diff --git a/po/cs.gmo b/po/cs.gmo
new file mode 100644 (file)
index 0000000..22bd015
Binary files /dev/null and b/po/cs.gmo differ
diff --git a/po/cs.po b/po/cs.po
new file mode 100644 (file)
index 0000000..0ca32b3
--- /dev/null
+++ b/po/cs.po
@@ -0,0 +1,690 @@
+# Czech translation of psmisc.
+# Copyright (C) 2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Petr Pisar <petr.pisar@atlas.cz>, 2009, 2010, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.20rc1\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-03 08:33+0200\n"
+"Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n"
+"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
+"Language: cs\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Použití: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n PROSTOR] [-k [-i] [-"
+"SIGNÁL]]\n"
+"               NÁZEV…\n"
+"         fuser -l\n"
+"         fuser -V\n"
+"Ukáže, které procesy používají vyjmenované soubory, sockety nebo souborové\n"
+"systémy.\n"
+"\n"
+"  -a,--all              zobrazí rovněž nepoužité soubory\n"
+"  -i,--interactive      před zabitím se dotáže (ignorováno bez -k)\n"
+"  -k,--kill             zabije procesy přistupující k zadanému souboru\n"
+"  -l,--list-signals     vypíše seznam názvů dostupných signálů\n"
+"  -m,--mount            zobrazí všechny procesy používající zadané "
+"souborové\n"
+"                        systémy nebo bloková zařízení\n"
+"  -M,--ismountpoint     vyhoví požadavku, pouze když NÁZEV je bod připojení "
+"FS\n"
+"  -n,--namespace PROSTOR    hledá v tomto jmenném prostoru\n"
+"                        (file [soubor], udp, nebo tcp)\n"
+"  -s,--silent           tichý běh\n"
+"  -SIGNÁL               namísto SIGKILL pošle tento signál\n"
+"  -u,--user             zobrazí ID uživatelů\n"
+"  -v,--verbose          podrobný výstup\n"
+"  -w,--writeonly        zabije jen procesy přistupující kvůli zápisu\n"
+"  -V,--version          zobrazí informace o verzi\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             hledá pouze mezi IPv4 sockety\n"
+"  -6,--ipv6             hledá pouze mezi IPv6 sockety\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     konec přepínačů\n"
+"\n"
+"  Názvy UDP/TCP: [místní_port][,[vzdálený_stroj][,[vzdálený_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993–2010 Werner Almesberger a Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc je dodáván BEZ ABSOLUTNĚ ŽÁDNÉ ZÁRUKY.\n"
+"Toto je svobodné programové vybavení, můžete jej šířit podle podmínek\n"
+"GNU Obecné veřejné licence (GPL).\n"
+"Podrobnosti v této záležitosti naleznete v souborech pojmenovaných COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Adresář /proc nelze otevřít: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Paměť pro odpovídající proc nelze alokovat: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "Soubor zadaného názvu %s neexistuje.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Nelze získat informace (stat(2)) o %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Místní port %s nelze přeložit: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Neznámá rodina adres %d místního portu\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Soubor s protokoly „%s“ nelze otevřít: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Neplatný přepínač %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Přepínač jmenného prostoru vyžaduje argument."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Neplatný název jmenného prostoru"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Spolu s přepínači bodů připojení lze použít jen soubory"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Žádné kritérium procesu nebylo zadáno"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "Přepínač -a nelze použít spolu s přepínačem -s."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Nelze současně hledat jen v IPv4 a jen v IPv6 socketech."
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s UŽIVATEL    PID PŘÍSTUP PŘÍKAZ\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(neznámo)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "O souboru %s nelze získat informace: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "/proc/net/unix nelze otevřít: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Zabít proces %d? (a/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Proces %d nebylo možné zabít: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Síťový socket nelze otevřít.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Nelze nalézt číslo zařízení socketu.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Zabít %s(%s%d)? (a/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Zaslat signál %s(%s%d) ? (a/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Z procesového souboru „status“ nelze získat UID\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Chybný regulární výraz: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: částečná shoda %s(%d) se vynechá\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) zabit signálem %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: žádný proces nenalezen\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Usage: killall [-Z KONTEXT] [-u UŽIVATEL] [-eIgiqrvw] [-SIGNÁL] NÁZEV…\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Použití: killall [PŘEPÍNAČ…] [--] NÁZEV…\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"         killall -l, --list\n"
+"         killall -V, --version\n"
+"\n"
+"  -e,--exact          u velmi dlouhých názvu vyžaduje přesnou shodu\n"
+"  -I,--ignore-case    porovnávání názvů procesů nebere ohled na velikost "
+"písmen\n"
+"  -g,--process-group  zabije skupinu procesů namísto procesu\n"
+"  -y,--younger-than   zabije procesy mladší než ČAS\n"
+"  -o,--older-than     zabije procesy starší než ČAS\n"
+"  -i,--interactive    před zabitím se zeptá\n"
+"  -l,--list           vypíše názvy všech známých signálů\n"
+"  -q,--quiet          nevypisuje stížnosti\n"
+"  -r,--regexp         s NÁZVEM zachází jako s rozšířeným regulárním výrazem\n"
+"  -s,--signal SIGNÁL  odešle tento signál namísto SIGTERM\n"
+"  -u,--user UŽIVATEL  zabije pouze proces(y) bežící jako UŽIVATEL\n"
+"  -v,--verbose        ohlásí úspěšně odeslaný signál\n"
+"  -V,--version        zobrazí informace o verzi\n"
+"  -w,--wait           čeká, dokud proces nezemře\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGVÝR zabije jen proces(y) mající kontext\n"
+"                      (musí předcházet ostatním argumentům)\n"
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993–2012 Werner Almesberger a Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Neplatný formát času"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Uživatele %s nelze nalézt\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Chybný regulární výraz: %s\n"
+
+#: src/killall.c:830
+#, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Maximální počet názvů je %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s postrádá záznamy procesů (není připojen?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Chyba při připojování se na PID %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Copyright © 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Použití: peekfd [-8] [-n] [-c] [-d] [-V] [-h] PID [FD…]\n"
+"      -8 na výstupu neodstraňuje z datových proudů osmý bit.\n"
+"      -n nezobrazuje čtení/zápis z hlaviček FD.\n"
+"      -c špehuje též nové potomky.\n"
+"      -d odstraňuje duplicitní čtení/zápisy z výstupu.\n"
+"      -V vypíše informaci o verzi.\n"
+"      -h vypíše tuto nápovědu.\n"
+"\n"
+"  Výstup ukončíte stiskem Ctrl-C.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Použití: prtstat [PŘEPÍNAČE] PID…\n"
+"         prtstat -V\n"
+"Zobrazí informace o procesu\n"
+"    -r,--raw       Neopracovaný výstup\n"
+"    -V,--version   Zobrazí informace o verzi a skončí\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "běží"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "spí"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "čeká na disk"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "trasován"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "odstránkován"
+
+# `uknown' state
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "neznámý"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Proces: %-14s\t\tStav: %c (%s)\n"
+"  CPU č.:  %-3d\t\tTTY: %s\tVláken: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"ID procesu, skupiny a relace\n"
+"      ID procesu: %d\t\t ID rodiče: %d\n"
+"      ID skupiny: %d\t\t ID relace: %d\n"
+"  ID skupiny vl.: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Výpadky stránek\n"
+"  Tento proces    (menší větší): %8lu  %8lu\n"
+"  Procesy potomků (menší větší): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Časy CPU\n"
+"  Tento proces    (uživ systém host blokI/O): %6.2f %6.2f %6.2f %6.2f\n"
+"  Procesy potomků (uživ systém host):         %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Paměť\n"
+"  Vvelikost:   %-10s\n"
+"  RSS:         %-10s \t\t Omezení RSS: %s\n"
+"  Začátek kódu:      %#-10lx\t\t Konec kódu:  %#-10lx\n"
+"  Začátek zásobníku: %#-10lx\n"
+"  Ukazatel na zásobník (ESP): %#10lx  Ukazatel na kód (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Plánování\n"
+"  Politika %s\n"
+"  Nice:   %ld \t\t Priorita reálného času: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf v print_stat selhala.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Proces s PID %d neexistuje.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Soubor se statistikou PID %d nelze otevřít (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Neplatný přepínač"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Je třeba zadat alespoň jedno PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc není připojen, nelze získat informace o /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s je prázdný (není připojen?)\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Použití: pstree [-a] [-c] [-h|-H PID] [-l] [-n] [-p] [-g] [-u]\n"
+"                [-A|-G|-U] [PID|USER]\n"
+"         pstree -V\n"
+"Zobrazí strom procesů.\n"
+"\n"
+"  -a, --arguments      zobrazí argumenty příkazového řádku\n"
+"  -A, --ascii          použije znaky ASCII pro kreslení čar\n"
+"  -c, --compact        neslučuje identické podstromy\n"
+"  -h, --highlight-all  zvýrazní současný proces a jeho předchůdce\n"
+"  -H PID,\n"
+"  --highlight-pid=PID  zvýrazní tento proces a jeho předchůdce\n"
+"  -g, --show-pgids     zobrazí ID skupin procesů; implikuje -c\n"
+"  -G, --vt100          použije znaky VT100 pro kreslení čar\n"
+"  -l, --long           nezkracuje dlouhé řádky\n"
+"  -n, --numeric-sort   seřadí výstup podle PID\n"
+"  -p, --show-pids      zobrazí PID; implikuje -c\n"
+"  -s, --show-parents   zobrazí rodiče vybraného procesu\n"
+"  -u, --uid-changes    zobrazí přechody UID\n"
+"  -U, --unicode        použije znaky UTF-8 (Unicode) pro kreslení čar\n"
+"  -V, --version        zobrazí informace o verzi\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z                   zobrazí bezpečnostní kontext SELinuxu\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  PID       začne na tomto PID; implicitní je 1 (init)\n"
+"  UŽIVATEL  zobrazí jen stromy, jejichž kořeny náleží tomuto uživateli\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993–2009 Werner Almesberger a Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "Proměnná TERM není nastavena\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Nelze zjistit schopnosti terminálu\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Žádný uživatel se jménem: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Žádný proces nenalezen.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Uzavřete klávesou Enter\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: neznámý signál, %s -l vypíše signály.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Použití: pidof [-eg] NÁZEV…\n"
+#~ "         pidof -V\n"
+#~ "\n"
+#~ "    -e      u velmi dlouhých názvů vyžaduje přesnou shodu;\n"
+#~ "            vynechá, pokud příkazový řádek není dostupný\n"
+#~ "    -g      zobrazí ID skupiny procesů namísto ID procesu\n"
+#~ "    -V      zobrazí informace o verzi\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright © 1993–2005 Werner Almesberger a Craig Small\n"
+#~ "\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "Příznaky připojený a bod připojení nelze použít současně"
diff --git a/po/da.gmo b/po/da.gmo
new file mode 100644 (file)
index 0000000..155ba2a
Binary files /dev/null and b/po/da.gmo differ
diff --git a/po/da.po b/po/da.po
new file mode 100644 (file)
index 0000000..5c12e3d
--- /dev/null
+++ b/po/da.po
@@ -0,0 +1,684 @@
+# Danish translation of psmisc.
+# Copyright (C) 2011 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Aputsiaq Niels Janussen <aj@isit.gl>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.12\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2011-10-02 18:11+0200\n"
+"Last-Translator: Aputsiaq Niels Janussen <aj@isit.gl>\n"
+"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
+"Language: da\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Virtaal 0.6.1\n"
+
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Anvendelse: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-"
+"SIGNAL]]\n"
+"NAVN...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Vis hvilke processer der bruger de navngivne filer, sokler eller "
+"filsystemer.\n"
+"\n"
+"  -a,--all              vis også ubrugte filer\n"
+"  -i,--interactive      spørg før der dræbes (ignoreres uden -k)\n"
+"  -k,--kill             dræb processer som tilgår den navngivne fil\n"
+"  -l,--list-signals     vis tilgængelige signalnavne\n"
+"  -m,--mount            vis alle processer med brug af de navngivne "
+"filsystemer eller blokenhed\n"
+"  -M,--ismountpoint     udfør kun forespørgsel hvis NAVN er et "
+"monteringspunkt\n"
+"  -n,--namespace SPACE  søg i dette navneområde (file, udp eller tcp)\n"
+"  -s,--silent           stille kørsel\n"
+"  -SIGNAL               send dette signal i stedet for SIGKILL\n"
+"  -u,--user             vis ID for brugere\n"
+"  -v,--verbose          udførlige uddata\n"
+"  -V,--version          vis information om version\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             søg kun IPv4-sokler\n"
+"  -6,--ipv6             søg kun IPv6-sokler\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     nulstil tilvalg\n"
+"\n"
+"  udp/tcp-navne: [lokal_port][,[rmt_vært][,[rmt_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc leveres med absolut ingen garanti.\n"
+"Dette er fri software, og du er velkommen til at videredistribuere\n"
+"det under vilkårene i GNU General Public License.\n"
+"Yderligere oplysninger om disse sager, se filerne med navnene COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Kan ikke åbne kataloget /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Kan ikke allokere hukommelse til matchede proc: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "Angivne filnavn %s findes ikke.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Kan ikke udføre stat %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Kan ikke løse lokal port %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Ukendt lokal port AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Kan ikke åbne protokolfil \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Ugyldigt tilvalg %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Tilvalg for navneområde kræver et argument."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Ugyldigt navn på navneområde"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Du kan kun bruge filer med et angivet monteringspunkt"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Ingen specifikation angivet for proces"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "tilvalget --all kan ikke anvendes med tilvalget --silent."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+"Du kan ikke begrænse søgning til blot IPv4- og IPv6-sokler på samme tid"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s BRUGER      PID ADGANG KOMMANDO\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(ukendt)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Kan ikke danne stat-fil %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Kan ikke åbne /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Dræb proces %d ? (j/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Kunne ikke dræbe proces %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Kan ikke åbne en netværkssokkel.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Kan ikke finde sokkels enhedsnummer.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Dræb %s(%s%d) ? (j/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Signal %s(%s%d) ? (j/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Kan ikke hente UID fra status for proces\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Ugyldigt regulært udtryk: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "springer over delvist match %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Dræbte %s(%s%d) med signal %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: ingen proces fundet\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Anvendelse: killall [-Z KONTEKST] [-u BRUGER] [ -eIgiqrvw ] [ -SIGNAL ] "
+"NAVN...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Anvendelse: killall [TILVALG]... [--] NAVN...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          kræver eksakt match for meget lange navne\n"
+"  -I,--ignore-case    ikke-versalfølsom match af navn på proces\n"
+"  -g,--process-group  dræb proces-gruppe i stedet for proces\n"
+"  -y,--younger-than   dræb processer yngre end TID\n"
+"  -o,--older-than     dræb processer ældre end TID\n"
+"  -i,--interactive    spørg efter bekræftelse før der dræbes\n"
+"  -l,--list           vis alle kendte signalnavne\n"
+"  -q,--quiet          udskriv ikke reklamationer\n"
+"  -r,--regexp         fortolk NAVN som et udvidet regulært udtryk\n"
+"  -s,--signal SIGNAL  send dette signal i stedet for SIGTERM\n"
+"  -u,--user BRUGER    dræb kun proces(ser) som kører som BRUGER\n"
+"  -v,--verbose        rapportér hvis signalet blev sendt med succes\n"
+"  -V,--version        vis information om version\n"
+"  -w,--wait           vent på at processer dør\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGUDTRYK dræb kun proces(ser) som har kontekst\n"
+"                         (skal stå før andre argumenter)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Ugyldigt tidsformat"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Kan ikke finde brugeren %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Ugyldigt regulært udtryk: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Maksimalt antal navne er %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s er tom (ikke monteret)?\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Fejl ved tilslutning til pid %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Anvendelse: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 giver uddata i rene 8-bit strømme.\n"
+"    -n vis ikke læsning/skrivning fra fd-headere.\n"
+"    -c smugkig også på alle nye barneprocesser.\n"
+"    -d fjern duplikerede læsninger/skrivninger fra uddata.\n"
+"    -V udskriver versionsinfo.\n"
+"    -h udskriver denne hjælp.\n"
+"\n"
+"  Tryk CTRL-C for at stoppe uddata.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Anvendelse: prtstat [tilvalg] PID ...\n"
+"            prtstat -V\n"
+"Udskriv information om en proces\n"
+"    -r,--raw       Rå visning af information\n"
+"    -V,--version   Vis information om version og afslut\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "kører"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "sover"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "disk sover"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "spores"
+
+# Denne har jeg ladet stå uoversat, måske paginering eller side
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "paging"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "ukendt"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Proces:  %-14s\t\tTilstand: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tTråde: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Proces, Gruppe og Sessions-ID'er\n"
+"    Proces ID: %d\t\t  Forælder-ID: %d\n"
+"    Gruppe-ID: %d\t\t  Sessions-ID: %d\n"
+"  T Gruppe-ID: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Sidefejl\n"
+"  Denne proces   (minor major): %8lu  %8lu\n"
+"  Barneprocesser (minor major): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"CPU-tider\n"
+"  Denne proces   (bruger system gæst blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Barneprocesser (bruger system gæst):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Hukommelse\n"
+"  Vstørrelse:  %-10s\n"
+"  RSS:         %-10s \t\t RSS-grænse: %s\n"
+"  Kodestart:   %#-10lx\t\t Kodestop:   %#-10lx\n"
+"  Stakstart:   %#-10lx\n"
+"  Stakpeger (ESP): %#10lx\t Inst-peger (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Skedulering\n"
+"  Politik: %s\n"
+"  Venlig:  %ld \t\t RT-prioritet: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf i print_stat mislykkedes.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Processen med pid %d findes ikke.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Ikke i stand til at åbne stat-fil for pid %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Ugyldigt tilvalg"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Du skal mindst angive én PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc er ikke monteret, kan ikke udføre stat for /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s er tom (ikke monteret)?\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Anvend: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"               [ -A | -G | -U ] [ PID | BRUGER ]\n"
+"       pstree -V\n"
+"Vis en træstruktur over processer.\n"
+"\n"
+"  -a, --arguments     vis kommandolinje-argumenter\n"
+"  -A, --ascii         anvend ASCII-linjetegnede skrifttegn\n"
+"  -c, --compact       undlad at sammenpakke identiske understrukturer\n"
+"  -h, --highlight-all fremhæv nuværende proces og dens forfædre\n"
+"  -H PID,\n"
+"  --highlight-pid=PID fremhæv denne proces og dens forfædre\n"
+"  -G, --vt100         anvend VT100-linjetegnede skrifttegn\n"
+"  -l, --long          undlad at afkorte lange linjer\n"
+"  -n, --numeric-sort  sortér uddata ved PID\n"
+"  -p, --show-pids     vis PID'er; implicerer -c\n"
+"  -u, --uid-changes   vis uid-overgange\n"
+"  -U, --unicode       anvend UTF-8 (Unicode) linjetegnede skrifttegn\n"
+"  -V, --version       vis information om  version\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     vis          SELinux-sikkerhedskontekster\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  PID    start ved denne PID; standard er 1 (init)\n"
+"  USER   vis kun træstrukturer som har denne bruger som rod\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "TERM er ikke angivet\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Kan ikke skaffe oplysninger om terminalens funktioner\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Brugernavnet findes ikke: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Fandt ingen processer.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Tryk retur for at lukke\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: ukendt signal; %s -l viser signaler.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Anvendelse: pidof [ -eg ] NAVN...\n"
+#~ "            pidof -V\n"
+#~ "\n"
+#~ "    -e      kræver eksakt match for meget lange navne\n"
+#~ "            spring over hvis kommandolinje er utilgængelig\n"
+#~ "    -g      vis gruppe-ID for proces i stedet for proces-ID\n"
+#~ "    -V      vis information om version\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger og Craig Small\n"
+#~ "\n"
index 003bf84..a0b796d 100644 (file)
Binary files a/po/de.gmo and b/po/de.gmo differ
index 19d97b2..c98751f 100644 (file)
--- a/po/de.po
+++ b/po/de.po
-# German Translation for psmisc files
-# Copyright (C) 2002 Free Software Foundation, Inc.
+# German translation for PSmisc programs.
+# Copyright (C) 2002, 2007 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
 # Wolfgang Schorer <wcc@wolfgangs.com>, 2002.
+# Benno Schulenberg <benno@vertaalt.nl>, 2007.
+# Roland Illig <roland.illig@gmx.de>, 2009.
+# Roland Illig <roland.illig@gmx.de>, 2010.
+# Roland Illig <roland.illig@gmx.de>, 2012.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 20.1\n"
+"Project-Id-Version: psmisc 22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2004-11-02 13:36-0500\n"
-"Last-Translator: Wolfgang Schorer <wcc@wolfgangs.com>\n"
-"Language-Team: woolfy <woolfy@users.sourceforge.net>\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-01 11:08+0100\n"
+"Last-Translator: Roland Illig <roland.illig@gmx.de>\n"
+"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Transfer-Encoding: 8bit\n"
 
-# "abbrechen" wird für "kill" verwendet
-#: src/killall.c:74
+#: src/fuser.c:133
 #, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) abbrechen? (y/N) "
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Aufruf: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n RAUM] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"        fuser -l\n"
+"        fuser -V\n"
+"Zeigt an, welche Prozesse die angegebenen Dateien, Sockets oder Dateisysteme "
+"benutzen.\n"
+"\n"
+"  -a,--all             zeige auch die ungenutzten Dateien an\n"
+"  -i,--interactive     vor dem Abschießen nachfragen (ohne -k wirkungslos)\n"
+"  -k,--kill            schieße Prozesse ab, die auf die angegebene Datei "
+"zugreifen\n"
+"  -l,--list-signals    liste die Signalnamen auf\n"
+"  -m,--mount           zeige alle Prozesse an, die auf die angegebenen "
+"Dateisysteme oder Blockgeräte zugreifen\n"
+"  -M,--ismountpoint    Operation nur durchführen, wenn NAME ein "
+"Einhängepunkt ist\n"
+"  -n,--namespace RAUM  suche in angegebenem Namensraum (file, udp oder tcp)\n"
+"  -s,--silent          stille Operation\n"
+"  -SIGNAL              sende 'SIGNAL' anstatt SIGKILL\n"
+"  -u,--user            zeige die Benutzer-IDs an\n"
+"  -v,--verbose         ausführliche Ausgabe\n"
+"  -w,--writeonly       nur Prozesse mit Schreibzugriff beenden\n"
+"  -V,--version         zeige Versionsinformationen an\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             suche nur IPv4-Sockets\n"
+"  -6,--ipv6             suche nur IPv6-Sockets\n"
 
-# "abbrechen" wird für "kill" verwendet
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) abbrechen? (y/N) "
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     Zurücksetzen der Optionen\n"
+"\n"
+"  udp/tcp-Namen: [lokaler_port][,[entfernter_rechner][,[entfernter_port]]]\n"
+"\n"
 
-#: src/killall.c:121
+#: src/fuser.c:160
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger und Craig Small\n"
+"\n"
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
 msgstr ""
+"Für PSmisc gibt es KEINERLEI GARANTIE.\n"
+"Es ist freie Software und Sie dürfen sie gern gemäß den Bedingungen\n"
+"der GNU General Public License (GPL) weiter vertreiben.\n"
+"Zusätzliche Informationen dazu finden Sie in der Datei namens COPYING.\n"
 
-#: src/killall.c:343
+#: src/fuser.c:184
 #, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "überspringe teilweise Übereinstimmung von %s(%d)\n"
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Verzeichnis /proc kann nicht geöffnet werden: %s\n"
 
-#: src/killall.c:445
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) mit dem Signal %d abgebrochen\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Kein Speicher mehr verfügbar für zugehöriges Prozess: %s\n"
 
-#: src/killall.c:459
+#: src/fuser.c:478
 #, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: Kein Prozess abgebrochen\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Angegebener Dateiname %s existiert nicht.\n"
 
-#: src/killall.c:497
+#: src/fuser.c:481
 #, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+msgid "Cannot stat %s: %s\n"
+msgstr "Kann Status von \"%s\" nicht ermitteln: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Kann lokalen Port %s nicht auflösen: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Unbekannter lokaler Port AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Kann Protokolldatei »%s« nicht öffnen: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Ungültige Option %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Die Namensraum-Option benötigt ein Argument."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Ungültiger Namensraum"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Dateien können nur mit der Einhängepunkt-Option verwendet werden"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Keine Prozessspezifikation angegeben"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "Option -a kann nicht mit der Option -s kombiniert werden."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr ""
+"Sie können nicht gleichzeitig ausschließlich nach IPv4 und ausschließlich "
+"nach IPv6-Sockets suchen."
 
-#: src/killall.c:511
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s BEN.        PID ZUGR.  BEFEHL\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(unbekannt)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Status der Datei %s kann nicht ermittelt werden: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "/proc/net/unix kann nicht geöffnet werden: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Prozess %d abbrechen? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Kann Prozess %d nicht abbrechen: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Kann keine Netzwerkverbindung öffnen.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Kann die Gerätenummer der Sockets nicht finden.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "%s(%s%d) abbrechen? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Signal %s(%s%d) senden? (y/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Kann keine UID vom Prozessstatus erhalten\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Ungültiger regulärer Ausdruck: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: Überspringe teilweise Übereinstimmung von %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) mit Signal %d beendet\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: Kein Prozess gefunden\n"
+
+#: src/killall.c:615
 #, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
+"Aufruf: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [-SIGNAL] NAME...\n"
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr ""
+msgstr "Aufruf: killall - [OPTION]... [--]NAME...\n"
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -84,6 +279,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -94,367 +291,414 @@ msgid ""
 "  -V,--version        display version information\n"
 "  -w,--wait           wait for processes to die\n"
 msgstr ""
-
-#: src/killall.c:533
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          verlange genaue Übereinstimmung für sehr lange Namen\n"
+"  -I,--ignore-case    Groß- und Kleinschreibung nicht beachten\n"
+"  -g,--process-group  breche Prozessgruppe statt Einzelprozess ab\n"
+"  -y,--younger-than   Prozesse jünger als ZEIT abbrechen\n"
+"  -o,--older-than     Prozesse älter als ZEIT abbrechen\n"
+"  -i,--interactive    verlange vor Abbruch Bestätigung des Benutzers\n"
+"  -l,--list           liste alle bekannten Signalnamen auf\n"
+"  -q,--quiet          keine Warnungen und Fehler ausgeben\n"
+"  -r,--regexp         NAME ist ein erweiteter regulärer Ausdruck\n"
+"  -s,--signal SIGNAL  sende benutzerdefiniertes Signal anstatt SIGTERM\n"
+"  -u,--user USER      nur Prozesse von angegebenem Benutzer abbrechen\n"
+"  -v,--verbose        berichte, falls das Signal erfolgreich gesendet wurde\n"
+"  -V,--version        zeige Version\n"
+"  -w,--wait           warte auf das Ende der Prozesse\n"
+
+#: src/killall.c:639
 #, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
+"  -Z,--context REGEXP breche nur Prozesse ab, die einen Kontext haben\n"
+"                        (muss vor anderen Argumenten stehen)\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2002 Werner Almesberger und Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger und Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"PSmisc kommt mit KEINERLEI GARANTIE.\n"
-"Dies ist freie Software, und Sie können sie gerne unter den GNU-Termen\n"
-" (General Public License) weitervertreiben.\n"
-"Für weitere Informationen über diese Angelegenheit sehen Sie bitte in die "
-"Dateien, die\n"
-" COPYING genannt werden.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Ungültiges Zeitformat"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
-msgstr ""
+msgstr "Kann Benutzer %s nicht finden!\n"
 
-#: src/killall.c:715
+#: src/killall.c:798
 #, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Die maximale Anzahl der Namen ist %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s ist leer (nicht gemountet?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Gebrauch: fuser [ -a | -s ] [ -n Raum ] [ -signal ] [ -kimuv ] Name ...\n"
-"             [ - ] [ -n Raum ] [ -signal ] [ -kimuv ] Name ...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"\n"
-"    -a        Zeige auch die nicht genutzten Dateien an\n"
-"    -k        Breche die Prozesse ab, die auf diese Datei zugreifen\n"
-"    -i        Frage bevor abgebrochen wird (dies wird ignoriert ohne -k)\n"
-"    -l        Liste die Signalnamen auf\n"
-"    -m        mounted FS\n"
-"    -n Raum   Suche in dem angegebenen Namensraum (file, udp, or tcp)\n"
-"    -s        Stille Operation\n"
-"    -signal   Sende 'signal' anstatt SIGKILL\n"
-"    -u        Zeige die Benutzer IDs an\n"
-"    -v        Ausführliche Ausgabe\n"
-"    -V        Zeige Versionsinformationen an\n"
-"    -4        Suche nur IPv4 sockets\n"
-"    -6        Suche nur IPv6 sockets\n"
-"    -         Rücksetzen der Optionen\n"
-"\n"
-"  udp/tcp Namen: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+msgid "Bad regular expression: %s\n"
+msgstr "Ungültiger regulärer Ausdruck: %s\n"
 
-#: src/fuser.c:109
+#: src/killall.c:830
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Die maximale Anzahl von Namen ist %d\n"
 
-#: src/fuser.c:113
+#: src/killall.c:835
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+msgid "killall: %s lacks process entries (not mounted ?)\n"
 msgstr ""
+"killall: Bei %s fehlen die Prozesseinträge (Dateisystem möglicherweise nicht "
+"eingehängt?)\n"
 
-#: src/fuser.c:120
-#, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/peekfd.c:96
 #, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
+msgid "Error attaching to pid %i\n"
+msgstr "Fehler beim Anhängen an PID %i\n"
 
-#: src/fuser.c:283
+#: src/peekfd.c:104
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
 
-#: src/fuser.c:316
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
+"Aufruf: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 8-Bit-Ausgabe erzwingen.\n"
+"    -n Header für Lesen/Schreiben aus FDs nicht anzeigen.\n"
+"    -c Auch nach neuen Kindprozessen Ausschau halten.\n"
+"    -d Doppeltes Lesen/Schreiben nicht ausgeben.\n"
+"    -V Versionsinformationen ausgeben.\n"
+"    -h Diese Hilfe ausgeben.\n"
+"\n"
+"  Drücken Sie Strg-C, um die Ausgabe zu beenden.\n"
 
-#: src/fuser.c:476
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot resolve local port %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
+"Aufruf: prtstat [Optionen] PID ...\n"
+"        prtstat -V\n"
+"Informationen über einen Prozess ausgeben\n"
+"    -r,--raw       Rohe Ausgabe der Informationen\n"
+"    -V,--version   Versionsinformationen anzeigen und beenden\n"
 
-#: src/fuser.c:492
+#: src/prtstat.c:65
 #, c-format
-msgid "Unknown local port AF %d\n"
-msgstr ""
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/fuser.c:553
+#: src/prtstat.c:66
 #, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
-msgstr ""
+#: src/prtstat.c:78
+msgid "running"
+msgstr "läuft"
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
-msgstr ""
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "schläft"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr ""
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "schläft (Disk)"
 
-#: src/fuser.c:840
-msgid "No process specification given"
-msgstr ""
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "schritt"
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
-msgstr ""
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "auslagerung"
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
-msgstr ""
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "unbekannt"
 
-#: src/fuser.c:901
+#: src/prtstat.c:164
 #, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
+"Prozess: %-14s\t\tZustand: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 
-#: src/fuser.c:1019
+#: src/prtstat.c:169
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
 msgstr ""
+"Prozess-, Gruppen- und Session-IDs\n"
+"  Prozess-ID: %d\t\t  Eltern-ID: %d\n"
+"  Gruppen-ID: %d\t\t Session-ID: %d\n"
+"T-Gruppen-ID: %d\n"
+"\n"
 
-#: src/fuser.c:1113
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
+"Seitenfehler\n"
+"  Dieser Prozess  (klein groß): %8lu  %8lu\n"
+"  Kindprozesse    (klein groß): %8lu  %8lu\n"
 
-#: src/fuser.c:1149
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
+"CPU-Zeiten\n"
+"  Dieser Prozess  (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Kindprozesse    (user system guest):       %6.2f %6.2f %6.2f\n"
 
-#: src/fuser.c:1198
+#: src/prtstat.c:189
 #, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "Prozess %d abbrechen? (y/N) "
-
-#: src/fuser.c:1222
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Speicher\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS-Grenzwert: %s\n"
+"  Code-Start:  %#-10lx\t\t Code-Ende:  %#-10lx\n"
+"  Stack-Start: %#-10lx\n"
+"  Stackzeiger (ESP): %#10lx\t Befehlszeiger (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
 #, c-format
-msgid "Could not kill process %d: %s\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
 msgstr ""
+"Prozessplanung\n"
+"  Richtlinie: %s\n"
+"  Nett:   %ld \t\t RT-Priorität: %ld %s\n"
 
-#: src/fuser.c:1237
-#, c-format
-msgid "Cannot open a network socket.\n"
-msgstr ""
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf in print_stat fehlgeschlagen.\n"
 
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "Kann die Gerätenummer der Sockets nicht finden"
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Prozess mit PID %d existiert nicht.\n"
 
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
-msgstr ""
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Konnte Stat-Datei für PID %d nicht öffnen: %s\n"
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Ungültige Option"
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
-msgstr ""
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Sie müssen mindestens eine PID angeben."
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
-msgstr ""
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc ist nicht eingehängt, kann /proc/self/stat nicht lesen.\n"
 
-#: src/pstree.c:374
+#: src/pstree.c:794
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr ""
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s ist leer (Dateisystem möglicherweise nicht eingebunden?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Aufruf: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"        pstree -V\n"
+"Zeigt einen Prozessbaum an.\n"
+"\n"
+"    -a, --arguments       zeige Kommandozeilenargumente an\n"
+"    -A, --ascii           benutze ASCII-Zeichen für die Ausgabe\n"
+"    -c, --compact         identische Unterbäume werden nicht "
+"zusammengefasst\n"
+"    -h, --highlight all   hebe den aktuellen Prozess und seine Ahnen hervor\n"
+"    -H PID,    --highlight-pid=PID   hebe diesen Prozess und seine Ahnen "
+"hervor\n"
+"    -g, --show-pids       zeige Prozessgruppen-IDs an; impliziert -c\n"
+"    -G, --vt100           benutze VT100-Zeichen für die Ausgabe\n"
+"    -l, --long            kein Abschneiden langer Zeilen\n"
+"    -n, --numeric-sort    Ausgabe nach PID sortieren\n"
+"    -p, --show-pids       zeige PIDs an; enthält Option -c\n"
+"    -u, --uid-changes     zeige UID-Wechsel an\n"
+"    -U, --unicode         benutze UTF-8 (Unicode) für die Ausgabe\n"
+"    -V, --version         Ausgabe der verwendeten Version\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "    -Z     zeige SELinux-Sicherheitskontext\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
 msgstr ""
+"    PID       mit dieser PID starten; Vorgabewert ist 1 (init)\n"
+"    BENUTZER  zeige nur Prozessbäume, deren Wurzeln Prozesse dieses "
+"Benutzers sind\n"
+"\n"
 
-#: src/pstree.c:768
+#: src/pstree.c:859
 #, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr ""
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:771
+#: src/pstree.c:862
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
 
-#: src/pstree.c:778
-#, fuzzy, c-format
-msgid "pstree (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/pstree.c:871
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr ""
+msgstr "TERM ist nicht gesetzt\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
-msgstr ""
+msgstr "Kann die Fähigkeiten des Terminals nicht erkennen\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
-msgstr ""
+msgstr "Kein Benutzer mit dem Namen »%s«\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
-msgstr ""
+msgstr "Keine Prozesse gefunden.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
-msgstr ""
+msgstr "Drücken Sie Enter zum Schließen\n"
 
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr ""
-
-#~ msgid "-4 flag used but proc file %s is not readable\n"
-#~ msgstr "-4 Flag verwendet, die Proc Datei %s ist aber nicht lesbar\n"
-
-#~ msgid "-6 flag used but proc file %s is not readable\n"
-#~ msgstr "-6 Flag verwendet, die Proc Datei %s ist aber nicht lesbar\n"
-
-#~ msgid "kill %d"
-#~ msgstr "Abbruch von %d"
-
-#~ msgid "No automatic removal. Please use  umount %s\n"
-#~ msgstr "Keine automatische Löschung. Bitte verwenden Sie umount %s\n"
-
-#~ msgid "No automatic removal. Please use  swapoff %s\n"
-#~ msgstr "Keine automatische Löschung. Bitte verwenden Sie swapoff %s\n"
-
-#~ msgid "Internal error (type %d)\n"
-#~ msgstr "Interner Fehler (Typ %d)\n"
-
-#~ msgid "kernel mount  "
-#~ msgstr "Kernel mount  "
-
-#~ msgid "kernel loop   "
-#~ msgstr "Kernel-Schleife (loop)   "
-
-#~ msgid "kernel swap   "
-#~ msgstr "Kernel swap   "
+msgstr "%s: unbekanntes Signal; %s -l listet die Signale auf.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Aufruf: pidof [-eg] NAME...\n"
+#~ "        pidof -V\n"
+#~ "\n"
+#~ "    -e   exakte Übereinstimmung für sehr lange Namen erforderlich;\n"
+#~ "           ignorieren, wenn die Kommandozeile nicht verfügbar ist\n"
+#~ "    -g   zeige Prozessgruppen-ID statt der Prozess-ID\n"
+#~ "    -V   zeige Version\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger und Craig Small\n"
+#~ "\n"
 
-#~ msgid "ignoring -m in name space \"%s\"\n"
-#~ msgstr "-m wird ignoriert im Namensraum \"%s\"\n"
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr ""
+#~ "Die Flags gemounted und mount-Punkt können nicht gleichzeitig verwendet "
+#~ "werden."
 
-#, fuzzy
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: Falsche Spezifikation\n"
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Kann Status von Einhängepunkt \"%s\" nicht ermitteln: %s\n"
 
-#~ msgid "No process references; use -v for the complete list\n"
-#~ msgstr ""
-#~ "Keine Prozess Referenzen; verwenden Sie -v für die komplette Liste\n"
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "/etc/mtab kann nicht geöffnet werden: %s\n"
diff --git a/po/el.gmo b/po/el.gmo
new file mode 100644 (file)
index 0000000..0858613
Binary files /dev/null and b/po/el.gmo differ
diff --git a/po/el.po b/po/el.po
new file mode 100644 (file)
index 0000000..10a8e93
--- /dev/null
+++ b/po/el.po
@@ -0,0 +1,661 @@
+# translation of psmisc-22.6.po to Greek
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+#
+# Lefteris Dimitroulakis <edimitro@tee.gr>, 2008.
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc-22.6\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2008-06-15 18:31+0300\n"
+"Last-Translator: Lefteris Dimitroulakis <edimitro@tee.gr>\n"
+"Language-Team: Greek <team@lists.gnome.gr>\n"
+"Language: el\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Χρήση: fuser [ -a | -s | -c ] [ -n SPACE ] [ -ΣΗΜΑ ] [ -kimuv ] ΟΝΟΜΑ...\n"
+"             [ - ] [ -n SPACE ] [ -ΣΗΜΑ ] [ -kimuv ] ΟΝΟΜΑ...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Οι διεργασίες που χρησιμοποιούν τα δεδομένα αρχεία, sockets, ή συστήματα "
+"αρχείων.\n"
+"\n"
+"    -a        εμφάνιση επίσης των μη χρησιμοποιουμένων αρχείων \n"
+"    -c        προσαρτημένο FS\n"
+"    -f        αγνοήθηκε σιωπηλά (για λόγους συμβατότητας με POSIX)\n"
+"    -i        ερώτηση πριν τον τερματισμό (ignored without -k)\n"
+"    -k        τερματισμός διεργασιών που χρησιμοποιούν το δεδομένο αρχείο\n"
+"    -l        λίστα διαθεσίμων σημάτων\n"
+"    -m        οι διεργασίες που χρησιμοποιούν τα δεδομένα συστήματα αρχείων\n"
+"    -n SPACE  αναζήτηση σε αυτόν την ομάδα ονομάτων (file, udp, ή tcp)\n"
+"    -s        σιωπηλή λειτουργία\n"
+"    -ΣΗΜΑ   αποστολή αυτού του σήματος αντί του SIGKILL\n"
+"    -u        εμφάνιση ID χρήστη\n"
+"    -v        έξοδος με πολλά λόγια\n"
+"    -V        εμφάνιση πληροφοριών έκδοσης\n"
+
+#: src/fuser.c:150
+#, fuzzy, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"    -4        αναζήτηση μόνο IPv4 sockets\n"
+"    -6        αναζήτηση μόνο IPv6 sockets\n"
+
+#: src/fuser.c:153
+#, fuzzy, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"    -         επανάταξη επιλογών\n"
+"\n"
+"  ονόματα udp/tcp: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger και Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Αδυναμία ανοίγματος καταλόγου /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Αδύνατη η εκχώρηση μνήμης στην αντίστοιχη διεργασία: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Αδύνατον να προσδιορίσω %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Δεν μπορώ να βρω την τοπική θύρα %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Άγνωστη τοπική θύρα AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Δεν μπορώ να ανοίξω αρχείο πρωτοκόλλου \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Η επιλογή του πίνακα ονομάτων απαιτεί όρισμα"
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Λάθος όνομα"
+
+#: src/fuser.c:1102
+#, fuzzy
+msgid "You can only use files with mountpoint options"
+msgstr ""
+"Δεν μπορείτε να χρησιμοποιήσετε παρά τα αρχεία με την επιλογή σημείου "
+"προσάρτησης"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Ουδεμία προδιαγραφή διεργασίας δόθηκε"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "Η επιλογή all δεν μπορεί να χρησιμοποιηθεί με την επιλογή silent."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+"Δεν μπορείτε να ψάξετε συγχρόνως\n"
+"μόνο για sockets IPv4 και μόνο για sockets IPv6."
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s USER        PID ACCESS COMMAND\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(άγνωστο)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Αδύνατον να προσδιορίσω το αρχείο %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Αδυναμία ανοίγματος του /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Kill process %d ? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Αδύνατον να τερματίσω τη διεργασία %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Δεν μπορώ να ανοίξω ένα δικτυακό socket.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Αδύνατον να βρω τον αριθμό της συσκευής του socket.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Kill %s(%s%d) ? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Signal %s(%s%d) ? (y/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Δεν μπορώ να πάρω UID από την κατάσταση της διεργασίας\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Κακή κανονική έκφραση: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "παράβλεψη μερικού ταιριάσματος %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Τερματίστηκε %s(%s%d) με το σήμα %d\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: ουδεμία διεργασία τερματίστηκε\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Χρήση: killall [-Z CONTEXT] [-u ΧΡΗΣΤΗΣ] [ -eIgiqrvw ] [ -ΣΗΜΑ ] ΟΝΟΜΑ...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Χρήση: killall [ΕΠΙΛΟΓΗ]... [--] ΟΝΟΜΑ...\n"
+
+#: src/killall.c:621
+#, fuzzy, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          απαιτεί ακριβές ταίριασμα για πολύ μεγάλα ονόματα\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           λίστα με όλα τα γνωστά σήματα\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        εμφάνιση πληροφορίας έκδοσης\n"
+"  -w,--wait           wait for processes to die\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP τερματίζει μόνο την/τις διεργασία(ες) με context\n"
+"                      (πρέπει να προηγείται των άλλων ορισμάτων)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger και Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Δεν μπορώ να βρω το χρήστη %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Κακή κανονική έκφραση: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Μέγιστος αριθμός ονομάτων είναι %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s είναι άδειο (μή προσαρτημένο ;)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Σφάλμα κατά την πρόσδεση στη διεργασία με pid %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Χρήση: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 καθαρή 8μπιτη έξοδος.\n"
+"    -n δεν εμφανίζει αναγνώσεις/εγγραφές from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d αφαιρεί διπλές αναγνώσεις/εγγραφές από την έξοδο.\n"
+"    -V εμφανίζει πληροφορίες έκδοσης.\n"
+"    -h εμφανίζει αυτήν εδώ τη βοήθεια.\n"
+"\n"
+"  Πάτησε CTRL-C to end output.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+#, fuzzy
+msgid "unknown"
+msgstr "(άγνωστο)"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s είναι άδειο (μή προσαρτημένο ;)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Χρήση: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"              [ -A | -G | -U ] [ PID | ΧΡΗΣΤΗΣ ]\n"
+"       pstree -V\n"
+"Εμφανίζει το δέντρο διεργασιών.\n"
+"\n"
+"    -a     εμφανίζει τα ορίσματα της γραμμής διαταγών\n"
+"    -A     χρησιμοποίησε τους χαρακτήρες ASCII line drawing\n"
+"    -c     don't compact identical subtrees\n"
+"    -h     υπογράμμισε την τρέχουσα διεργασία και τις γονικές της\n"
+"    -H PID highlight αυτή την διεργασία και τις γονικές της\n"
+"    -G     use VT100 line drawing characters\n"
+"    -l     don't truncate long lines\n"
+"    -n     ταξινόμηση εξόδου κατά PID\n"
+"    -p     εμφανίζει τις PID; implies -c\n"
+"    -u     show uid transitions\n"
+"    -U     χρήση UTF-8 (Unicode) line drawing characters\n"
+"    -V     εμφανίζει πληροφορίες έκδοσης\n"
+
+#: src/pstree.c:850
+#, fuzzy, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "    -Z     εμφάνιση SELinux security contexts\n"
+
+#: src/pstree.c:852
+#, fuzzy, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"    PID    εκκίνηση σε αυτό το PID; η προεπιλογή είναι 1 (init)\n"
+"    USER   εμφάνιση μόνο δέντρων rooted at processes of this user\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger και Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "Η μεταβλητή TERM δεν έχει καθοριστεί\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Δεν μπορώ να πάρω τις ικανότητες τερματικού\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Δεν υπάρχει τέτοιο όνομα χρήστη: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Δεν βρέθηκαν διεργασίες.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Πάτησε return για κλείσιμο\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: άγνωστο σήμα; %s -l εμφανίζει όλα τα σήματα.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Χρήση: pidof [ -eg ] ΟΝΟΜΑ...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      απαιτεί ακριβές ταίριασμα για πολύ μεγάλα ονόματα;\n"
+#~ "            παράβλεψη αν η γραμμή διαταγών δεν είναι διαθέσημη\n"
+#~ "    -g      εμφάνιση process group ID αντί της ID διεργασίας\n"
+#~ "    -V      εμφάνιση πληροφοριών εκδόσεως\n"
+#~ "\n"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Σημείο προσάρτησης %s απροσδιόριστο: %s\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr ""
+#~ "Αδύνατη η ταυτόχρονη χρήση των σημαιών προσαρτημένο και σημείο προσάρτησης"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Αδυναμία ανοίγματος του  αρχείου /etc/mtab: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "Εσωτερικό σφάλμα: MAX_DEPTH όχι αρκετά μεγάλο.\n"
diff --git a/po/eo.gmo b/po/eo.gmo
new file mode 100644 (file)
index 0000000..1448a52
Binary files /dev/null and b/po/eo.gmo differ
diff --git a/po/eo.po b/po/eo.po
new file mode 100644 (file)
index 0000000..8ff2066
--- /dev/null
+++ b/po/eo.po
@@ -0,0 +1,683 @@
+# Esperanto translation.
+# Copyright (C) 2011, 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Felipe Castro <fefcas@gmail.com>, 2011, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.20rc1\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-03 08:00-0300\n"
+"Last-Translator: Felipe Castro <fefcas@gmail.com>\n"
+"Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
+"Language: eo\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Uzado: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACO] [-k [-i] [-SIGNALO]] "
+"NOMO...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Montras kiujn procezojn uzas la nomitajn dosierojn, ingojn, aŭ "
+"dosiersistemojn.\n"
+"\n"
+"  -a,--all              montrigi ankaŭ neuzatajn dosierojn\n"
+"  -i,--interactive      demandi antaŭ ol mortigi (ne efika sen -k)\n"
+"  -k,--kill             mortigi procezon, kiu aliras la nomitan dosieron\n"
+"  -l,--list-signals     listigi disponeblajn signalo-nomojn\n"
+"  -m,--mount            montri ĉiujn procezojn, kiuj uzas la nomitajn "
+"dosiersistemojn aŭ blok-aparaton\n"
+"  -M,--ismountpoint     plenumigi peton nur se NOMO estas munt-punkto\n"
+"  -n,--namespace SPACO  serĉi en tiu ĉi nom-spaco(file, udp, aŭ tcp)\n"
+"  -s,--silent           silenta funkciado\n"
+"  -SIGNALO              sendi tiun ĉi signalon anstataŭ SIGKILL\n"
+"  -u,--user             montrigi ID de uzantoj\n"
+"  -v,--verbose          detalema eligo\n"
+"  -w,--writeonly        mortigi nur la procezojn kun skrib-permeso\n"
+"  -V,--version          montrigi informon pri versio\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             serĉi nur ingojn IPv4\n"
+"  -6,--ipv6             serĉi nur ingojn IPv6\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     reŝargaj elektiloj\n"
+"\n"
+"  udp/tcp nomoj: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Kopirajto (C) 1993-2010 Werner Almesberger kaj Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc venas kun ABSOLUTE NENIUN GARANTION.\n"
+"Tio ĉi estas libera programaro, kaj vi estas invitata redisdoni ĝin sub\n"
+"la kondiĉoj de la Ĝenerala Publika Permesilo GNU.\n"
+"Por pli da informoj pri tiuj ĉi aferoj, vidu la dosierojn nomitajn COPYING "
+"(angle).\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Ne eblas malfermi dosierujon /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Ne eblas rezervi memoron por kongruinta proc: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "La indikita dosiernomo %s ne ekzistas.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Ne eblas apliki stat %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Ne eblas solvi lokan pordon %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Nekonata loka pordo AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Ne eblas malfermi protokolan dosieron \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Malvalida elektilo %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Nomspaca elektilo postulas unu argumenton."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Malvalida nomo por nomspaco"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Vi nur povas uzi dosierojn kun munt-punktaj elektiloj"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Neniu specifo pri procezo estis donata"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "elektilo 'all' ne povas esti uzata kun silenta elektilo."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Vi ne povas serĉi ingojn nur IPv4 kaj nur IPv6 samtempe"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s UZANTO        PID ALIRO KOMANDO\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(nekonata)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Ne eblas apliki stat en dosiero %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Ne eblas malfermi /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Ĉu mortigi la procezon %d ? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Ne eblis mortigi la procezon %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Ne eblas malfermi retan ingon.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Ne eblas trovi aparat-numeron de ingo.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Ĉu mortigi %s(%s%d) ? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Ĉu signali %s(%s%d) ? (y/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Ne eblas preni UID el procez-stato\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Malĝusta regulesprimo: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: preterpasas ne-kompletan kongruon %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Ni mortigis %s(%s%d) per signalo %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: neniu procezo trovite\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Uzado: killall [-Z KUNTEKSTO] [-u UZANTO] [ -eIgiqrvw ] [ -SIGNALO ] "
+"NOMO...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Uzado: killall [ELEKTILO]... [--] NOMO...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          postuli ĝustan kongruon por tre longaj nomoj\n"
+"  -I,--ignore-case    sen-uskleca procez-noma kongruo\n"
+"  -g,--process-group  mortigi procez-grupon anstataŭ procezon\n"
+"  -y,--younger-than   mortigi procezon pli nova ol TEMPO\n"
+"  -o,--older-than     mortigi procezon pli malnova ol TEMPO\n"
+"  -i,--interactive    peti konfirmon antaŭ ol mortigi\n"
+"  -l,--list           listigi ĉiujn konatajn signal-nomojn\n"
+"  -q,--quiet          ne printi plendojn\n"
+"  -r,--regexp         interpreti NOMO kiel etenditan regul-esprimon\n"
+"  -s,--signal SIGNALO sendi tiun ĉi signalon anstataŭ SIGTERM\n"
+"  -u,--user UZANTO    mortigi nur procezo(j)n rulantajn kiel UZANTO\n"
+"  -v,--verbose        raporti ĉu signalo estis sukcese sendata\n"
+"  -V,--version        montrigi informon pri versio\n"
+"  -w,--wait           atendi ke procezoj mortu\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP mortigi nur procezo(j)n kiuj havu kuntekston\n"
+"                      (devas veni antaŭ aliaj argumentoj)\n"
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Kopirajto (C) 1993-2012 Werner Almesberger kaj Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Malvalida tempo-formo"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Ne eblas trovi la uzanton %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Malĝusta regul-esprimo: %s\n"
+
+#: src/killall.c:830
+#, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Maksimuma nombro da nomoj estas %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s malhavas procezajn informojn (ĉu ne muntita ?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Eraro dum konektiĝo al pid %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Kopirajto (C) 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Uzado: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 eligi 8-bitan purajn fluojn.\n"
+"    -n ne montrigi leg/skribo el kaplinioj fd.\n"
+"    -c rigardeti ankaŭ iun ajn novan idan procezon.\n"
+"    -d forigi duobligitaj leg/skribojn el la eligo.\n"
+"    -V printi information pri versio.\n"
+"    -h printi tiun ĉi helpon.\n"
+"\n"
+"  Premu CTRL-C por ĉesigi eligon.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Uzado: prtstat [elektiloj] PID ...\n"
+"       prtstat -V\n"
+"Printi informon pri procezo\n"
+"    -r,--raw       Kruda montrigo de informaro\n"
+"    -V,--version   Montrigi informon pri versio kaj eligi\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Kopirajto (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "rulanta"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "dormanta"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "disk-dormado"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombia"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "spursekvata"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "paĝiganta"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "nekonata"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Procezo: %-14s\t\tStato: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tFadenoj: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"ID de Procezo, Grupo kaj Seanco\n"
+"  Proceza ID: %d\t\t  Patra ID: %d\n"
+"    Grupa ID: %d\t\t Seanca ID: %d\n"
+"  T Grupa ID: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Paĝ-Eraroj\n"
+"  Tiu ĉi Procezo (malpleja pleja): %8lu  %8lu\n"
+"  Idaj Procezoj  (malpleja pleja): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"CPU-Tempoj\n"
+"  Tiu ĉi Procezo (uzanto sistemo gastigo blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Idaj procezoj  (uzanto sistemo gastigo):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Memoro\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS-Limo: %s\n"
+"  Kod-Komenco: %#-10lx\t\t Kod-Fino: %#-10lx\n"
+"  Stak-Komenco: %#-10lx\n"
+"  Stak-Indikilo (ESP): %#10lx\t Inst-Indikilo (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Planado\n"
+"  Strategio: %s\n"
+"  'Nice':   %ld \t\t RT Prioritato: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf en print_stat malsukcesis.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Procezo kun pid %d ne ekzistas.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Ne eblas malfermi stat-dosiero por pid %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Malvalida elektilo"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Vi devas provizi minimume unu PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc ne estas muntita, ni ne povas apliki stat en /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s estas malplena (ĉu ne muntita ?)\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Uzado: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | UZANTO ]\n"
+"       pstree -V\n"
+"Montrigi arbon de procezoj.\n"
+"\n"
+"  -a, --arguments     montri komand-liniajn argumentojn\n"
+"  -A, --ascii         uzi ASCII-ajn lini-desegnajn signojn\n"
+"  -c, --compact       ne kompaktigi identajn sub-arbojn\n"
+"  -h, --highlight-all reliefigi nunajn procezojn kaj ties praulojn\n"
+"  -H PID,\n"
+"  --highlight-pid=PID reliefigi tiun ĉi procezon kaj ties praulojn\n"
+"  -G, --vt100         uzi VT100-ajn lini-desegnajn signojn\n"
+"  -l, --long          ne tranĉi longajn liniojn\n"
+"  -n, --numeric-sort  ordigi eligon laŭ PID\n"
+"  -p, --show-pids     montri PID-ojn; implikas -c\n"
+"  -s, --show-parents  montri praulojn de la elektita procezo\n"
+"  -u, --uid-changes   montri transigoj de uid\n"
+"  -U, --unicode       uzi UTF-8 (Unikodan) lini-desegnajn signojn\n"
+"  -V, --version       montrigi informon pri versio\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     montri         sekurecajn kuntekstojn SELinux\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  PID    komencas ĉe tiu ĉi PID; apriore estas is 1 (init)\n"
+"  UZANTO montri nur arbojn kiuj havas radikojn ĉe procezoj de tiu ĉi uzanto\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Kopirajto (C) 1993-2009 Werner Almesberger kaj Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "TERM ne estas difinita\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Ne eblas koni la kapablojn de la terminalo\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Neniu uzant-nomo tia: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Neniu procezo trovite.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Premu la enigklavon por fermi\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: nekonata signalo; %s -l listigas la signalojn.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Uzado: pidof [ -eg ] NOMO...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      postuli ĝustan kongruon por tre longaj nomoj;\n"
+#~ "            preterpasas se la komand-linio ne disponeblas\n"
+#~ "    -g      montri procezan grup-ID anstataŭ procezan ID\n"
+#~ "    -V      montrigi informon pri versio\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Kopirajto (C) 1993-2005 Werner Almesberger kaj Craig Small\n"
+#~ "\n"
index 5d33007..7309ba9 100644 (file)
Binary files a/po/eu.gmo and b/po/eu.gmo differ
index be65502..72f3817 100644 (file)
--- a/po/eu.po
+++ b/po/eu.po
 # Basque translation of psmisc.
-# Copyright (C) 2005 Free Software Foundation, Inc.
+# Copyright (C) 2005, 2009, 2010 Free Software Foundation, Inc.
 # This file is distributed under the same license as the psmisc package.
-# Mikel Olasagasti <hey_neken@mundurat.net>, 2004, 2005.
+# Mikel Olasagasti Uranga <hey_neken@mundurat.net>, 2004, 2005, 2009, 2010.
 # , fuzzy
-# 
-# 
+#
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 21.6pre1\n"
+"Project-Id-Version: psmisc 22.11-pre1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2005-02-23 14:55+0100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2010-03-29 10:09+0100\n"
 "Last-Translator: Mikel Olasagasti <hey_neken@mundurat.net>\n"
 "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
+"Language: eu\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Erabilerera: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n EREMUA] [-k[-i] [-"
+"SEINALEA]] IZENA...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Bistaratu zein prozesuk erabiltzen dituzten izendatutako fitxategi, socket "
+"edo fitxategi-sistemak.\n"
+"\n"
+"    -a,--all        erakutsi erabiligabeko fitxategiak ere\n"
+"    -i,--interactive        galdetu hil baina lehenago (ignoratua -k gabe)\n"
+"    -k,--kill        hil fitxategi hori erabiltzen hari diren prozesuak\n"
+"    -l,--list-signals        zerrendatu eskuragarri dauden seinale izenak\n"
+"    -m,--mount        bistaratu izendatutako fitxategi sistema edo bloke "
+"gailua erabiltzen duten prozesu guztiak\n"
+"    -M,--ismountpoint IZENA muntai puntua denean bakarrik burutu eskaera\n"
+"    -n,--namespace EREMUAK  bilatu eremu hauteko batean (fitxategia, udp, "
+"edo tcp)\n"
+"    -s,--silent        operazio ixila\n"
+"    -SEINALEA   bidali seinalea SIGKILL beharrean\n"
+"    -u,--user        erakutsi erabiltzaileen id-ak\n"
+"    -v,--verbose        irteera xehetua\n"
+"    -V,--version        erakutsi bertsio informazioa\n"
+
+#: src/fuser.c:150
 #, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) hil? (y/N) "
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"    -4,--ipv4        bilatu IPv4 socket-ak bakarrik\n"
+"    -6,--ipv6        bilatu IPv6 socket-ak bakarrik\n"
 
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) hil? (y/N) "
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     garbitu aukerak\n"
+"\n"
+"  udp/tcp izenak: [ataka_lokala][,[urruneko_ostalaria][,[urruneko_ataka]]]\n"
+"\n"
 
-#: src/killall.c:121
+#: src/fuser.c:160
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger eta Craig Small\n"
+"\n"
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
 msgstr ""
+"PSmisc-k ez du INONGO BERMERIK.\n"
+"Software librea da, eta berriro bana daiteke GNU Lizentzia Publiko "
+"Orokorrak\n"
+"ezarritako baldintzak betez.\n"
+"Gai honi buruzko informazio gehiagorako, ikusi COPYING izena duten "
+"fitxategiak.\n"
 
-#: src/killall.c:343
+#: src/fuser.c:184
 #, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "baterakuntza partziala saltatzen %s(%d)\n"
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Ezin da /proc direktorioa ireki: %s\n"
 
-#: src/killall.c:445
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) hil da %d seinalearekin\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Ezin da memoria esleitu aurkitutako prozesuarentzat: %s\n"
 
-#: src/killall.c:459
+#: src/fuser.c:478
 #, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: ez da prozesurik hil\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Adierazitako %s fitxategia ez da existitzen.\n"
 
-#: src/killall.c:497
-#, fuzzy, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Ezin da %s identifikatu: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Ezin da %s ataka lokala ebatzi: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "AF ataka lokal ezezaguna %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Ezin izan da \"%s\" protokolo fitxategia ireki: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: %s baliogabeko aukera\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Namespace aukerak argumentua behar du"
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Baliogabeko namespace izena"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "muntai-puntu aukerak dituzten fitxategiak erabil ditzazkezu soilik"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Ez da prozesuaren espezifikaziorik eman"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "aukera guztiak ezin dira ixiltasun aukerarekin erabili."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr ""
-"erabilera: pidof [ -eg ] izena ...\n"
-"       pidof -V\n"
-"\n"
-"    -e      izen oso luzeak berdin idaztera behartu;\n"
-"            jauzi komandoa eskuragarri ez badago\n"
-"    -g      erakutsi prozesu taldearen IDa prozesuenaren ordez\n"
-"    -V      bertsioaren informazioa bistaratu\n"
-"\n"
+"Ezin dituzu IPv4 socket-ak soilik eta IPv6 socket-ak soilik bilatu une berean"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s ERAB.      PID SARRERA KOMANDOA\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(ezezaguna)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Ezin da %s fitxategia identifikatu: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Ezin da /proc/net/unix direktorioa ireki: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "%d prozesua hil? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Ezin izan da %d prozesua hil: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Ezin da sare socket bat ireki.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Ezin izan da socket-aren gailu zenbakia aurkitu.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "%s(%s%d) hil? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Seinala bidali %s(%s%d)? (b/E) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Ezin da UID-a lortu prozesuaren egoeragatik\n"
 
-#: src/killall.c:511
+#: src/killall.c:237
 #, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Expresio erregular okerra: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "baterakuntza partziala saltatzen %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) hil da %d seinalearekin\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: ez da prozesurik aurkitu\n"
+
+#: src/killall.c:615
+#, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
-"erabilera: killall [-s sid] [-c context] [ .egiqvw ] [ -signal ] izena ...\n"
+"Erabilera: killall [-Z KONTESTUA] [-u ERABILTZAILEA] [ -egiqvw ] [ -"
+"SEINALEA ] IZENA ...\n"
 
-#: src/killall.c:514
-#, fuzzy, c-format
+#: src/killall.c:618
+#, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "erabilera: killall [ AUKERAK ] [ -- ] izena ...\n"
+msgstr "erabilera: killall [AUKERAK ] [ -- ] IZENA...\n"
 
-#: src/killall.c:517
-#, fuzzy, c-format
+#: src/killall.c:621
+#, c-format
 msgid ""
 "       killall -l, --list\n"
 "       killall -V, --version\n"
@@ -94,6 +277,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -107,367 +292,370 @@ msgstr ""
 "       killall -l, --list\n"
 "       killall -V --version\n"
 "\n"
-"  -e,--exact          izen oso luzeak berdin idaztera behartu\n"
+"  -e,--exact          izen oso luzeentzat berdin-berdin idaztea behar da\n"
 "  -I,--ignore-case    ez ezberdindu letra maiskula/minuskulak\n"
 "  -g,--process-group  hil prozesu taldea prozesuaren ordez\n"
+"  -y,--younger-than ORDUA baina berriagoak diren prozesuak hil\n"
+"  -o, --older-than   ORDUA baina zaharragoak diren prozesuak hil\n"
 "  -i,--interactive    konfirmazioa eskatu hil aurretik\n"
 "  -l,--list           zerrendatu seinale ezagun guztien izenak\n"
 "  -q,--quiet          ez erakutsi kexuak\n"
-"  -s,--signal         bidali seinalea SIGTERM-ren ordez\n"
+"  -r, --regexp       interpretatu IZENA luzatutako expresio erregular bat "
+"bezala\n"
+"  -s,--signal SEINALEA         bidali seinalea SIGTERM-ren ordez\n"
+"  -u, --user ERABILTZAILEA    hil ERABILTZAILEA bezela exekutatzen hari "
+"diren prozesuak\n"
 "  -v,--verbose        informatu seinalea arrakasterekin bidali bada\n"
 "  -V,--version        bertsioaren informazioa bistaratu\n"
 "  -w,--wait           itxaron prozesuak hil arte\n"
 "\n"
 
-#: src/killall.c:533
-#, fuzzy, c-format
+#: src/killall.c:639
+#, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
-"  -d,--sid            hil sid hori duen/duten prozesuak\n"
-"  -c,--context        hil scontext duten prozesuak bakarrik\n"
-"   (-s, -c elkarren artean esklusiboak dira eta beste argumentuen aurretik "
-"joan behar dute)\n"
-"\n"
+"  -Z,--context REGEXP hil kontestua duten prozesuak bakarrikkill only process"
+"(es)\n"
+"                      (beste argumentu batzuk aurretik izan behar ditu)\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, fuzzy, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2002 Werner Almesberger eta Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger eta Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"PSmisc-k ez du INONGO BERMERIK.\n"
-"Software librea da, eta berriro bana daiteke GNU Lizentzia Publiko "
-"Orokorrak\n"
-"ezarritako baldintzak betez.\n"
-"Gai honi buruzko informazio gehiagorako, ikusi COPYING izena duten "
-"fitxategiak.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Baliogabeko ordu formatua"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
-msgstr ""
+msgstr "Ezin da %s erabiltzailea aurkitu\n"
 
-#: src/killall.c:715
+#: src/killall.c:798
 #, c-format
-msgid "Maximum number of names is %d\n"
+msgid "Bad regular expression: %s\n"
+msgstr "Expresio erregular okerra: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
 msgstr "Izen kopuru gehiengoa %d da\n"
 
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
 msgstr "%s hutsik dago (muntatu gabea?)\n"
 
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"usage: fuser [ -a | -s | -c ] [ -n hutsuneak ] [ -seinalea ] [ -kimuv ] "
-"izena ...\n"
-"             [ - ] [ -n hutsuneak ] [ -seinalea ] [ -kimuv ] izena ...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"\n"
-"    -a        erakutsi erabiligabeko fitxategiak ere\n"
-"    -c        muntatutako fitxategi sistemak\n"
-"    -f        silently ignored (for POSIX compatibility\n"
-"    -k        hil fitxategi hori erabiltzen hari diren prozesuak\n"
-"    -i        galdetu hil baina lehenago (ignoratua -k gabe)\n"
-"    -l        zerrendatu seinale izenak\n"
-"    -m        muntatutako fitxategi sistemak\n"
-"    -n hutsuneak  bilatu hutsunean espezifikatutako izena (fitxategia, udp, "
-"edo tcp)\n"
-"    -s        operazio ixila\n"
-"    -signal   bidali seinalea SIGKILL beharrean\n"
-"    -u        erakutsi erabiltzaileen id-ak\n"
-"    -v        irteera xehetua\n"
-"    -V        erakutsi bertsio informazioa\n"
-"    -4        erakutsi IPv4 socket-ak bakarrik\n"
-"    -6        erakutsi IPv6 socket-ak bakarrik\n"
-"    -         garbitu aukerak\n"
-"\n"
-"  udp/tcp izenak: [ataka_lokala][,[urruneko_ostalaria][,[urruneko_ataka]]]\n"
-"\n"
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Errorea %i prozesura atxikitzen\n"
 
-#: src/fuser.c:109
+#: src/peekfd.c:104
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
 
-#: src/fuser.c:113
+#: src/peekfd.c:106
 #, c-format
 msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"Copyright (C) 2007 Trent Waddington\n"
 "\n"
 msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 
-#: src/fuser.c:120
-#, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/fuser.c:147
-#, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
-
-#: src/fuser.c:283
-#, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr ""
-
-#: src/fuser.c:316
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
+"Erabilera: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 8 bit-eko irteera jario garbiak.\n"
+"    -n ez bistaratu fd goiburuen irakurketa/idazketak.\n"
+"    -c seme-prozesu berriak ere begiratu.\n"
+"    -d ezabatu irteerako irakurketa/idazketa bikoiztuak.\n"
+"    -V bistaratu bertsioaren informazioa.\n"
+"    -h laguntza hau bistaratu.\n"
+"\n"
+"  Sakatu CTR-C amaitzeko.\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
+"Erabilera: prtstat [aukerak] PID ...\n"
+"       prtstat -V\n"
+"Prozesu baten informazioa bistaratu\n"
+"    -r,--raw       Informazioa gordinik bistaratu\n"
+"    -V,--version   Erakutsi bertsio informazioa eta irten\n"
 
-#: src/fuser.c:476
+#: src/prtstat.c:65
 #, c-format
-msgid "Cannot resolve local port %s: %s\n"
-msgstr ""
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/fuser.c:492
+#: src/prtstat.c:66
 #, c-format
-msgid "Unknown local port AF %d\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 
-#: src/fuser.c:553
-#, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
-msgstr ""
+#: src/prtstat.c:78
+msgid "running"
+msgstr "aktibo"
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
-msgstr ""
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "lotan"
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
-msgstr ""
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "lotan (diska)"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr ""
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
 
-#: src/fuser.c:840
-msgid "No process specification given"
-msgstr ""
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "trazeatuta"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "orrikatzen"
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
-msgstr ""
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "ezezaguna"
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
+"Prozesua: %-14s\t\tEgoera: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tHariak: %ld\n"
 
-#: src/fuser.c:901
-#, fuzzy, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
 "\n"
-"%*s ERABILTZAILEA      PID SARRERA KOMANDOA\n"
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
 msgstr ""
+"Prozesua, taldea eta saio IDak\n"
+"  Prozesu IDa: %d\t\t  Aita IDa: %d\n"
+"    Talde IDa: %d\t\t Saio IDa: %d\n"
+"  T Talde IDa: %d\n"
+"\n"
 
-#: src/fuser.c:1019
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
+"Orrikatze hutsegiteak\n"
+"  Prozesu hau    (minor major): %8lu  %8lu\n"
+"  Seme prozesuak (minor major): %8lu  %8lu\n"
 
-#: src/fuser.c:1113
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
+"CPU denborak\n"
+"  Prozesu hau    (erabiltzailea sistema gonbidatua blkio): %6.2f %6.2f %6.2f "
+"%6.2f\n"
+"  Seme prozesuak (erabiltzailea sistema gonbidatua):       %6.2f %6.2f "
+"%6.2f\n"
 
-#: src/fuser.c:1149
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Memoria\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limitea: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
 msgstr ""
+"Antolaketa\n"
+"  Politika: %s\n"
+"  Nice:   %ld \t\t RT Prioritatea: %ld %s\n"
 
-#: src/fuser.c:1198
-#, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "%d prozesua hil? (y/N) "
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf-ek print_stat-en huts egin du.\n"
 
-#: src/fuser.c:1222
+#: src/prtstat.c:226
 #, c-format
-msgid "Could not kill process %d: %s\n"
-msgstr ""
+msgid "Process with pid %d does not exist.\n"
+msgstr "%d pid-a duen prozesua ez da existitzen.\n"
 
-#: src/fuser.c:1237
+#: src/prtstat.c:228
 #, c-format
-msgid "Cannot open a network socket.\n"
-msgstr ""
-
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "ezin da socket gailu zenbakia aurkitu"
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Ezin da stat fitxategia ireki %d (%s) pid-erako\n"
 
-#: src/peekfd.c:75
-#, c-format
-msgid "Error attaching to pid %i\n"
-msgstr ""
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Baliogabeko aukera"
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "pstree (psmisc) %s\n"
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Gutxienez PID bat eman behar duzu"
 
-#: src/peekfd.c:85
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
 msgstr ""
+"/proc ez dago muntatua, ezin da stat egin /proc/self/stat fitxategian.\n"
 
-#: src/peekfd.c:95
+#: src/pstree.c:794
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
-msgstr ""
-
-#: src/pstree.c:374
-#, fuzzy, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "MAX_DEPTH ez da behar bezain handia\n"
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s hutsik dago (muntatu gabea?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, fuzzy, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
-msgstr ""
-"erabilera: pstree [ -a ] [ -c ] [ -h | -H pid ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
-"              [ -A | -G | -U ] [ pid | erabiltzailea]\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Erabilera: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"              [ -A | -G | -U ] [ PID | ERABILTZAILEA]\n"
 "       pstree -V\n"
+"Bistaratu prozesu zuhaitz bat.\n"
 "\n"
-"    -a     erakutsi komando lerroaren argumentoak\n"
-"    -A     erabili ASCII karaktereak\n"
-"    -c     ez trinkotu azpi-zuhaitz berdinak\n"
-"    -h     nabarmentu uneko prozesuak eta honen aurrekoak\n"
-"    -H pid nabarmendu \"pid\" prozesua eta honen aurrekoak\n"
-"    -G     erabili VT100 karaktereak\n"
-"    -l     ez moztu lerro luzeak\n"
-"    -n     sailkatu irteera PIDaren arabera PID\n"
-"    -p     erakutsi PIDak; -c erabiltzea esan nahi du\n"
-"    -u     erakutsi uid transizioak\n"
-
-#: src/pstree.c:768
-#, fuzzy, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr ""
-"    -s     erakutsi SID flaskoaok\n"
-"    -x     erakutsi seguritate testuinguru flaskoak\n"
-
-#: src/pstree.c:771
-#, fuzzy, c-format
+"  -a, --arguments     erakutsi komando lerroaren argumentoak\n"
+"  -A, --ascii     erabili ASCII karaktereak\n"
+"  -c, --compact     ez trinkotu azpi-zuhaitz berdinak\n"
+"  -h, --highlight-all     nabarmentu uneko prozesuak eta honen aurrekoak\n"
+"  -H PID,\n"
+"  --highlight-pid=PID nabarmendu \"pid\" prozesua eta honen aurrekoak\n"
+"  -G, --vt100     erabili VT100 karaktereak\n"
+"  -l, --long     ez moztu lerro luzeak\n"
+"  -n, --numeric-sort     sailkatu irteera PIDaren arabera PID\n"
+"  -p, --show-pids     erakutsi PIDak; -c erabiltzea esan nahi du\n"
+"  -u, --uid-changes     erakutsi uid transizioak\n"
+"  -U, --unicode       erabili  UTF-8 (Unicode) lerro marrazketa karaktereak\n"
+"  -V, --version       erakutsi bertsio informazioa\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     SELinux segurtasun kontestuak bistaratu\n"
+
+#: src/pstree.c:852
+#, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"    -U     erabili UTF-8 (Unicode) lerro karaktereak marrazteko\n"
-"    -V     bertsioaren informazioa bistaratu\n"
-"    pid    zein pid-etan hasi, lehenetsia 1 (init)\n"
-"    user   erakutsi erabiltzaile honen zuahitz prozesuen adarrak\n"
+"    PID    zein PID-etan hasi, lehenetsia 1 (init)\n"
+"    ERABILTZAILEA   erakutsi erabiltzaile honen zuahitz prozesuen adarrak\n"
 "\n"
 
-#: src/pstree.c:778
-#, fuzzy, c-format
+#: src/pstree.c:859
+#, c-format
 msgid "pstree (PSmisc) %s\n"
-msgstr "pstree (psmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM ez dago ezarrita\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Ezin dira terminalaren gaitasunak lortu\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Ez dago honelako erabiltzaile izenik: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Ez da prozesurik aurkitu.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Sakatu 'return' itxitzeko\n"
@@ -477,6 +665,44 @@ msgstr "Sakatu 'return' itxitzeko\n"
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: seinale ezezaguna; %s -l seinaleak zerrendatu.\n"
 
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Erabilera: pidof [ -eg ] IZENA ...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      izen oso luzeentzat berdin-berdin idaztea behar da;\n"
+#~ "            jauzi komandoa-lerroa eskuragarri ez badago\n"
+#~ "    -g      erakutsi prozesu taldearen IDa prozesuearenaren ordez\n"
+#~ "    -V      bertsioaren informazioa bistaratu\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger eta Craig Small\n"
+#~ "\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "Ezin duzu muntai eta muntai puntu banderak batera erabili"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Ezin da %s muntai puntua identifikatu: %s\n"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Ezin da /etc/mtab ireki: %s\n"
+
+#~ msgid "MAX_DEPTH not big enough.\n"
+#~ msgstr "MAX_DEPTH ez da behar bezain handia\n"
+
 #~ msgid "%s: SID (%s) must be numeric\n"
 #~ msgstr "%s: SIDak (%s) zenbakia izan behar du\n"
 
@@ -512,9 +738,6 @@ msgstr "%s: seinale ezezaguna; %s -l seinaleak zerrendatu.\n"
 #~ msgid "ignoring -m in name space \"%s\"\n"
 #~ msgstr "-m ignoratzen \"%s\" izen tartean\n"
 
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: baliogabeko espezifikazioa\n"
-
 #~ msgid ""
 #~ "usage: pstree [ -a ] [ -c ] [ -h | -H pid ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
 #~ msgstr ""
index 0a8e4b6..31864f0 100644 (file)
Binary files a/po/fi.gmo and b/po/fi.gmo differ
index dc88e39..73b84c6 100644 (file)
--- a/po/fi.po
+++ b/po/fi.po
 # Finnish translation for psmisc.
-# Copyright (C) 2004 Free Software Foundation, Inc.
+# Copyright © 2010, 2012 Free Software Foundation, Inc.
 # This file is distributed under the same license as the psmisc package.
 # Lars Wirzenius <liw@iki.fi>, 2004.
+# Jorma Karvonen <karvonen.jorma@gmail.com>, 2008-2010, 2012.
 #
-#, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 21.5\n"
+"Project-Id-Version: psmisc 22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2004-10-29 15:14+0300\n"
-"Last-Translator: Lars Wirzenius <liw@iki.fi>\n"
-"Language-Team: Finnish <fi@li.org>\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-01 14:02+0300\n"
+"Last-Translator: Jorma Karvonen <karvonen.jorma@gmail.com>\n"
+"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
+"Language: fi\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Poedit-Language: Finnish\n"
+"X-Poedit-Country: FINLAND\n"
 
-#: src/killall.c:74
-#, fuzzy, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Lopeta prosessi %s(%s%d)? (y=kyllä, n=ei) "
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Käyttö: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NIMI ...\n"
+"        fuser -l\n"
+"        fuser -V\n"
+"Näytä mitkä prosessit käyttävät nimettyjä tiedostoja, pistokkeita tai "
+"tiedostojärjestelmiä.\n"
+"\n"
+"  -a,--all              näytä myös käyttämättömät tiedostot\n"
+"  -i,--interactive      kysy ennen kill-komennon käyttämistä (ei merkitystä "
+"ilman valitsinta -k)\n"
+"  -k,--kill             lähetä signaali kill-käskyllä prosesseille, jotka "
+"käyttävät tiedostoa\n"
+"  -l,--list-signals     näytä signaalinimien luettelo\n"
+"  -m,--mount            näytä kaikki nimettyjä tiedostojärjestelmiä tai "
+"lohkolaitteita käyttävät prosessit\n"
+"  -M,--ismountpoint     toteuta pyyntö vain jos NIMI on liitäntäpiste\n"
+"  -n,--namespace SPACE  etsi tästä SPACE-nimiavaruudesta (file, udp, tai "
+"tcp)\n"
+"  -s,--silent           vaimennettu toiminta\n"
+"  -SIGNAL               lähetä muu signaali kuin SIGKILL\n"
+"  -u,--user             näytä käyttäjätunnukset\n"
+"  -v,--verbose          laveasti\n"
+"  -w,--writeonly        käytä kill-käskyä vain kirjoitusoikeudella "
+"varustettuihin prosesseihin\n"
+"  -V,--version          näytä versiotiedot\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             etsi vain IPv4-pistokkeita\n"
+"  -6,--ipv6             etsi vain IPv6-pistokkeita\n"
 
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Lopeta prosessi %s(%s%d)? (y=kyllä, n=ei) "
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     nollaa valitsimet\n"
+"\n"
+"  ”udp/tcp”-nimet: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:121
+#: src/fuser.c:163
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
+"Copyright © 1993-2010 Werner Almesberger ja Craig Small\n"
+"\n"
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
 msgstr ""
+"PSmisc-ohjelmistolla EI EHDOTTOMASTI OLE MITÄÄN TAKUUTA.\n"
+"Tämä on vapaa ohjelmisto ja saat kopioida ja levittää sitä GNU General "
+"Public\n"
+"License -lisenssin mukaisesti. Tiedostossa COPYING on tarkemmat tiedot.\n"
 
-#: src/killall.c:343
+#: src/fuser.c:184
 #, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "ohitan osittaisen osuman %s(%d)\n"
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Ei voida avata ”/proc”-hakemistoa: %s\n"
 
-#: src/killall.c:445
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Prosessi %s(%s%d) lopetettu signaalilla %d\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Ei voida varata muistia täsmäävälle ”proc”-hakemistolle: %s\n"
 
-#: src/killall.c:459
+#: src/fuser.c:478
 #, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: ei lopetettuja prosesseja\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Määriteltyä tiedostonimeä %s ei ole olemassa.\n"
 
-#: src/killall.c:497
+#: src/fuser.c:481
 #, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+msgid "Cannot stat %s: %s\n"
+msgstr "Ei voida suorittaa stat-käskyä %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Ei voida ratkaista paikallista porttia %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Tuntematon paikallinen portti AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Ei voida avata yhteyskäytäntötiedostoa ”%s”: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Virheellinen valitsin %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Nimiavaruusvalitsin vaatii argumentin."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Virheellinen nimiavaruusnimi"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Voit käyttää tiedostoja vain ”mountpoint”-valitsimien kanssa"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Prosessimäärittelyä ei ole annettu"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "”all”-valitsinta ei voi käyttää ”silent”-valitsimen kanssa."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Ei voida etsiä ”vain IPv4”- ja ”vain IPv6”-pistokkeita samaan aikaan"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s KÄYTTÄJÄ    PID ACCESS KÄSKY\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(tuntematon)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Ei voida suorittaa stat-käskyä tiedostolle %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Ei voida avata tiedostoa ”/proc/net/unix”: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
 msgstr ""
+"Lähetä signaali prosessille %d? (y=kyllä, N=ei, ”kyllä” yleensä lopettaa "
+"prosessin) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Ei voitu lähettää signaalia prosessille %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Ei voida avata verkkopistoketta.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Pistokkeen laitenumeroa ei löydy.\n"
+
+#  Kill-käskyn käyttämä signaali on tässä SIGTERM (tunnetaan myös nimellä TERM).
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Lopeta prosessi %s(%s%d)? (y=kyllä, N=ei) "
+
+#  Signaali on joku muu kuin SIGTERM
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr ""
+"Signaali prosessille %s(%s%d)? (y=kyllä, N=ei, ”kyllä” yleensä lopettaa "
+"prosessin) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Ei saada UID-käyttäjätunnistetta prosessitilasta\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Virheellinen säännöllinen lauseke: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: ohitetaan osittain vastaava %s(%d)\n"
 
-#: src/killall.c:511
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Prosessille %s(%s%d) lähetetty signaali %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: ei prosesseja\n"
+
+#: src/killall.c:615
 #, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
+"Käyttö: killall [-Z KONTEKSTI] [-u KÄYTTÄJÄ] [ -eIgiqrvw ] [ -SIGNAL ] "
+"NIMI...\n"
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr ""
+msgstr "Käyttö: killall [VALITSIN]... [--] NIMI...\n"
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -84,6 +286,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -94,331 +298,379 @@ msgid ""
 "  -V,--version        display version information\n"
 "  -w,--wait           wait for processes to die\n"
 msgstr ""
-
-#: src/killall.c:533
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact           vaatii täsmällisen vastaavuuden hyvin pitkille "
+"nimille\n"
+"  -I,--ignore-case     merkkikoosta riippumaton prosessinimi täsmää\n"
+"  -g,--process-group   lähetä signaali kill-käskyllä prosessiryhmälle "
+"prosessin sijasta\n"
+"  -y,--younger-than    tapa prosessit, jotka ovat nuorempia kuin TIME\n"
+"  -o,--older-than      tapa prosessit, jotka ovat vanhempia kuin TIME\n"
+"  -i,--interactive     kysy vahvistusta ennen kill-käskyä\n"
+"  -l,--list            luettele kaikki tunnetut signaalinimet\n"
+"  -q,--quiet           älä tulosta valituksia\n"
+"  -r,--regexp          tulkitse NIMI laajennettuna säännöllisenä "
+"lausekkeena\n"
+"  -s,--signal SIGNAALI lähetä tämä SIGNAALI eikä SIGTERM\n"
+"  -u,--user KÄYTTÄJÄ   lähetä signaali kill-käskyllä vain prosesseille, "
+"joita suoritetaan KÄYTTÄJÄnä\n"
+"  -v,--verbose         ilmoita, jos signaalin lähetys onnistui\n"
+"  -V,--version         näytä versiotiedot\n"
+"  -w,--wait            odota prosessien loppumista\n"
+
+#: src/killall.c:639
 #, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
+"  -Z,--context REGEXP lähetä signaali kill-käskyllä vain prosesseille, "
+"joilla on konteksti\n"
+"                      (tämän on oltava muiden argumenttien edellä)\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
-#, fuzzy, c-format
+#: src/killall.c:651
+#, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2002 Werner Almesberger and Craig Small\n"
+"Copyright © 1993-2012 Werner Almesberger ja Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, fuzzy, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"Allaoleva on epävirallinen käännös. Tulkintatilanteissa pätee alkuperäinen\n"
-"englanninkielinen versio.\n"
-"\n"
-"Copyright (C) 1993-2002 Werner Almesberger ja Craig Small\n"
-"\n"
-"PSmisc-ohjelmistolla ei ole mitään takuuta.\n"
-"Tämä vapaa ohjelmisto ja saat kopioida ja levittää sitä GNU General Public\n"
-"License -lisenssin mukaisesti. Tiedostossa COPYING on tarkemmat tiedot.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Virheellinen aikamuoto"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
-msgstr ""
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Suurin sallittu määrä nimiä on %d\n"
+msgstr "Ei löydy käyttäjää %s\n"
 
-#: src/killall.c:720 src/pstree.c:710
+#: src/killall.c:798
 #, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s on tyhjä (ei liitetty?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"käyttö: fuser [ -a | -s | -c ] [ -n nimistö ] [ -signaali ] [ -kimuv ] "
-"nimi ...\n"
-"             [ - ] [ -n nimistö ] [ -signaali ] [ -kimuv ] nimi ...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"\n"
-"    -a        näytä myös käyttämättömät tiedostot\n"
-"    -c        liitetty tiedostojärjestelmä\n"
-"    -f        ei merkitystä (tarvitaan POSIX-yhteensopivuuden takia)\n"
-"    -k        lopeta prosessit, jotka käyttävät tiedostoa\n"
-"    -i        kysy ennen lopetusta (ei merkitystä ilman -k)\n"
-"    -l        näytä signaalinimien luettelo\n"
-"    -m        liitetty tiedostojärjestelmä\n"
-"    -n nimiavaruus  etsi annetusta nimiavaruudesta (file, udp, tai tcp)\n"
-"    -s        ole hiljaa\n"
-"    -signaali lähetä muu signaali kuin SIGKILL\n"
-"    -u        näytä käyttäjätunnukset\n"
-"    -v        kerro paljon ylimääräistä\n"
-"    -V        näytä versio\n"
-"    -4        etsi vain IPv4-pistokkeista\n"
-"    -6        etsi vain IPv6-pistokkeista\n"
-"    -         nollaa optiot\n"
-"\n"
-"  udp/tcp-nimet: [paikallinen_portti][,[etäkone][,[etäkone]]]\n"
-"\n"
+msgid "Bad regular expression: %s\n"
+msgstr "Virheellinen säännöllinen lauseke: %s\n"
 
-#: src/fuser.c:109
+#: src/killall.c:830
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Suurin sallittu määrä nimiä on %d\n"
 
-#: src/fuser.c:113
+#: src/killall.c:835
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s-kohteesta puuttuu prosessirivit (ei ole liitetty?)\n"
 
-#: src/fuser.c:120
-#, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/peekfd.c:96
 #, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
+msgid "Error attaching to pid %i\n"
+msgstr "Virhe liityttäessä pid-tunnukseen %i\n"
 
-#: src/fuser.c:283
+#: src/peekfd.c:104
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
 
-#: src/fuser.c:316
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
+"Copyright © 2007 Trent Waddington\n"
+"\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
+"Käyttö: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 tuloste puhtaina 8-bittisinä virtoina.\n"
+"    -n älä näytä lukemisia ja kirjoittamisia fd-otsakkeista.\n"
+"    -c kurkista myös kaikkien tytärprosessien aikana.\n"
+"    -d poista tulosteesta lukemis- ja kirjoittamistoimintojen "
+"kaksoiskappaleet.\n"
+"    -V tulostaa versiotiedot.\n"
+"    -h tulostaa tämän ohjeen.\n"
+"\n"
+"  Lopeta tulostus painamalla näppäimiä CTRL-C.\n"
 
-#: src/fuser.c:476
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot resolve local port %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
+"Käyttö: prtstat [valitsimet] PID-prosessitunniste ...\n"
+"       prtstat -V\n"
+"Tulosta tiedot prosesseista\n"
+"    -r,--raw       Tietojen raakanäyttö\n"
+"    -V,--version   Näytä versiotiedot ja poistu\n"
 
-#: src/fuser.c:492
+#: src/prtstat.c:65
 #, c-format
-msgid "Unknown local port AF %d\n"
-msgstr ""
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/fuser.c:553
+#: src/prtstat.c:66
 #, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright © 2009 Craig Small\n"
+"\n"
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
-msgstr ""
+#: src/prtstat.c:78
+msgid "running"
+msgstr "suoritetaan"
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
-msgstr ""
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "levätään"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr ""
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "levylepo"
 
-#: src/fuser.c:840
-msgid "No process specification given"
-msgstr ""
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombi"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "jäljitetty"
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
-msgstr ""
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "sivutetaan"
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
-msgstr ""
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "tuntematon"
 
-#: src/fuser.c:901
+#: src/prtstat.c:164
 #, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
+"Prosessi: %-14s\t\tTila: %c (%s)\n"
+"  Suoritinnro:  %-3d\t\tTTY: %s\tSäikeet: %ld\n"
 
-#: src/fuser.c:1019
+#: src/prtstat.c:169
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
 msgstr ""
+"Prosessi-, ryhmä- ja istuntotunnisteet\n"
+"  Prosessitunniste: %d\t\t  Emotunniste: %d\n"
+"    Ryhmätunniste: %d\t\t Istuntotunniste: %d\n"
+"  T-ryhmätunniste: %d\n"
+"\n"
 
-#: src/fuser.c:1113
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
+"Sivuvirheet\n"
+"  Tämä Prosessi    (minor major): %8lu  %8lu\n"
+"  Lapsiprosessit (minor major): %8lu  %8lu\n"
 
-#: src/fuser.c:1149
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
+"Suoritinajat\n"
+"  Tämä prosessi    (käyttäjä järjestelmä vieras blkio): %6.2f %6.2f %6.2f "
+"%6.2f\n"
+"  Lapsiprosessit (käyttäjä järjestelmä vieras blkio): %6.2f %6.2f %6.2f\n"
 
-#: src/fuser.c:1198
+#: src/prtstat.c:189
 #, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "Lopeta prosess %d? (y=kyllä, N=ei) "
-
-#: src/fuser.c:1222
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Muisti\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS-raja: %s\n"
+"  Koodialku:  %#-10lx\t\t Koodiloppu:  %#-10lx\n"
+"  Pinoalku: %#-10lx\n"
+"  Pino-osoitin (ESP): %#10lx\t Käskyosoitin (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
 #, c-format
-msgid "Could not kill process %d: %s\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
 msgstr ""
+"Vuorottaminen\n"
+"  Menettelytapa: %s\n"
+"  Nice:   %ld \t\t RT Prioriteetti: %ld %s\n"
 
-#: src/fuser.c:1237
-#, c-format
-msgid "Cannot open a network socket.\n"
-msgstr ""
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf kutsussa print_stat epäonnistui.\n"
 
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "pistokkeen laitenumeroa ei löydy"
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Ei ole olemassa prosessia, jonka prosessitunniste on %d.\n"
 
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
-msgstr ""
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Ei kyetä avaamaan stat-tiedostoa prosessitunnisteelle %d (%s)\n"
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "pstree (psmisc) %s\n"
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Virheellinen valitsin"
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
-msgstr ""
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Sinun on tarjottava vähintään yksi PID-prosessitunniste."
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
 msgstr ""
+"/proc ei ole liitetty, ei voi suorittaa stat-käskyä tiedostolle /proc/self/"
+"stat.\n"
 
-#: src/pstree.c:374
-#, fuzzy, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "MAX_DEPTH-vakio on liian pieni.\n"
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s on tyhjä (ei liitetty?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Käyttö: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | KÄYTTÄJÄ ]\n"
+"       pstree -V\n"
+"Näytä prosessien puu.\n"
+"\n"
+"  -a, --arguments     näytä komentoriviargumentit\n"
+"  -A, --ascii         käytä ASCII-pseudografiikkamerkkejä\n"
+"  -c, --compact       älä tiivistä identtisiä alipuita\n"
+"  -h, --highlight-all korosta nykyinen prosessi ja sen periytymislähteet\n"
+"  -H PID,\n"
+"  --highlight-pid=PID korosta tämä prosessi ja sen periytymislähteet\n"
+"  -g, --show-pgids    näytä prosessiryhmätunnisteet; edellyttää valitsinta -"
+"c\n"
+"  -G, --vt100         käytä VT100-pseudografiikkamerkkejä\n"
+"  -l, --long          älä typistä pitkiä riviä\n"
+"  -n, --numeric-sort  lajittele tulostus PID-tunnuksen mukaan\n"
+"  -p, --show-pids     näytä PID-tunnukset; epäsuorasti -c\n"
+"  -s, --show-parents  näyttää valitun prosessin vanhemmat\n"
+"  -u, --uid-changes   näytä uid-siirtymät\n"
+"  -U, --unicode       käytä UTF-8 (Unicode)-pseudografiikkamerkkejä\n"
+"  -V, --version       näytä versiotiedot\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     näytä SELinux-turvakontekstit\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
 msgstr ""
+"  PID    aloita tällä PID-prosessitunnisteella; oletus on 1 (init)\n"
+"  USER   näytä vain puita, jotka alkavat käyttäjän omistuksessa\n"
+"\n"
 
-#: src/pstree.c:768
-#, fuzzy, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -x     näytä Flask-kontekstit\n"
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:771
-#, fuzzy, c-format
+#: src/pstree.c:862
+#, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"    kjä    näytä vain puita, jotka alkavat käyttäjän kjä omistuksessa\n"
+"Copyright © 1993-2009 Werner Almesberger ja Craig Small\n"
 "\n"
 
-#: src/pstree.c:778
-#, fuzzy, c-format
-msgid "pstree (PSmisc) %s\n"
-msgstr "pstree (psmisc) %s\n"
-
-#: src/pstree.c:871
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr "TERM ei ole asetettu\n"
+msgstr "TERM-signaali ei ole asetettu\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Päätteen ominaisuudet eivät ole selvillä\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Käyttäjätunnus puuttuu: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Prosesseja ei löydy.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Enter-näppäin sulkee\n"
@@ -426,7 +678,45 @@ msgstr "Enter-näppäin sulkee\n"
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr ""
+msgstr "%s: tuntematon signaali; %s -l luettelee signaalit.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Käyttö: pidof [ -eg ] NIMI...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      vaatii hyvin pitkien nimien täsmällistä vastaavuutta;\n"
+#~ "            ohita, jos komentorivi ei ole käytettävissä.\n"
+#~ "    -g      näyttää prosessin ryhmätunnisteen prosessitunnisteen sijasta\n"
+#~ "    -V      näyttää versiotiedot\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright © 1993-2005 Werner Almesberger ja Craig Small\n"
+#~ "\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "Et voi käyttää ”mounted-” ja ”mountpoint”-lippuja yhdessä"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Ei voida suorittaa stat-käskyä mount-liitospisteelle %s: %s\n"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Ei voida avata tiedostoa ”/etc/mtab”: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "Sisäinen virhe: MAX_DEPTH-vakio on liian pieni.\n"
 
 #~ msgid "-4 flag used but proc file %s is not readable\n"
 #~ msgstr "optio -4 käytössä mutta proc-tiedosto %s ei ole luettavissa\n"
@@ -456,11 +746,7 @@ msgstr ""
 #~ msgstr "kernel swap   "
 
 #~ msgid "ignoring -m in name space \"%s\"\n"
-#~ msgstr "optio -m merkityksetön nimiavaruudessa \"%s\"\n"
-
-#, fuzzy
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: epäkelpo määrittely\n"
+#~ msgstr "optio -m merkityksetön nimiavaruudessa ”%s”\n"
 
 #~ msgid ""
 #~ "usage: pstree [ -a ] [ -c ] [ -h | -H pid ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
@@ -491,7 +777,7 @@ msgstr ""
 #~ msgstr "    -h     merkitse nykyinen prosessi ja sen esi-isät\n"
 
 #~ msgid "    -H pid highlight process \"pid\" and its ancestors\n"
-#~ msgstr "    -H pid merkitse prosessi \"pid\" ja sen esi-isät\n"
+#~ msgstr "    -H pid merkitse prosessi ”pid” ja sen esi-isät\n"
 
 #~ msgid "    -G     use VT100 line drawing characters\n"
 #~ msgstr "    -G     käytä VT100-merkkejä viivanpiirtoon\n"
index 329e7cf..6b5a6a3 100644 (file)
Binary files a/po/fr.gmo and b/po/fr.gmo differ
index 688e287..667e92f 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
-# French Translation of PSmisc messages.
-# "Copyright (C) 1993-2001 Werner Almesberger, Craig Small, and Marc Léger\n"
-# Translated by Marc Léger <sorata@users.sourceforge.net>, November 2001.
+# French translation of PSmisc messages.
+# Copyright (C) 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
 #
+# Marc Léger <sorata@users.sourceforge.net>, 2001.
+# Benno Schulenberg <benno@vertaalt.nl>, 2007.
+# Frédéric Marchal <fmarchal@perso.be>, 2012.
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 20.1\n"
+"Project-Id-Version: psmisc-22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2002-04-12 21:33+1000\n"
-"Last-Translator: Marc Léger <sorata@users.sourceforge.net>\n"
-"Language-Team: French <fr@li.org>\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-08-31 22:39+0200\n"
+"Last-Translator: Frédéric Marchal <fmarchal@perso.be>\n"
+"Language-Team: French <traduc@traduc.org>\n"
+"Language: fr\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=iso-8859-1\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.4\n"
+"Plural-Forms:  nplurals=2; plural=(n > 1);\n"
 
-#: src/killall.c:74
-#, fuzzy, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Tuer %s(%s%d) ? (y/n) "
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Utilisation : fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n ESPACE] [-k [-i] [-"
+"SIGNAL]] NOM...\n"
+"              fuser -l\n"
+"              fuser -V\n"
+"Affiche les processus utilisant les fichiers, sockets ou systèmes de "
+"fichiers nommés.\n"
+"\n"
+"  -a,--all              montre les fichiers inutilisés\n"
+"  -i,--interactive      demande avant de fermer un processus (ignoré sans -"
+"k)\n"
+"  -k,--kill             ferme les processus accédant au fichier spécifié\n"
+"  -l,--list-signals     liste les noms des signaux\n"
+"  -m,--mount            affiche les processus utilisant les systèmes de "
+"fichiers\n"
+"                        ou les périphériques blocs spécifiés\n"
+"  -M,--ismountpoint     exécute la requête seulement si NOM est un point de "
+"montage\n"
+"  -n,--namespace ESPACE cherche dans l'espace de noms spécifiés (file, udp "
+"ou tcp)\n"
+"  -s,--silent           mode silencieux\n"
+"  -SIGNAL               envoie ce signal au lieu de SIGKILL\n"
+"  -u,--user             affiche la liste des utilisateurs\n"
+"  -v,--verbose          mode bavard\n"
+"  -w,--writeonly        ferme uniquement les processus avec la permission en "
+"écriture\n"
+"  -V,--version          affiche des informations sur la version\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             cherche des sockets IPv4 seulement\n"
+"  -6,--ipv6             cherche des sockets IPv6 seulement\n"
 
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Tuer %s(%s%d) ? (y/n) "
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     réinitialise les options\n"
+"\n"
+"  noms udp/tcp: [port_local][,[hôte_distant][,[port_distant]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:121
+#: src/fuser.c:163
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger et Craig Small\n"
+"\n"
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
 msgstr ""
+"PSmisc ne fait l'objet d'AUCUNE GARANTIE.\n"
+"C'est un logiciel libre, et vous pouvez le redistribuer\n"
+"en respectant les termes de la licence GNU General Public License.\n"
+"Pour plus de précisions à ce sujet, voir les fichiers nommés COPYING.\n"
 
-#: src/killall.c:343
+#: src/fuser.c:184
 #, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "Ignore la correspondance partielle %s(%d)\n"
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Impossible d'ouvrir le répertoire /proc: %s\n"
 
-#: src/killall.c:445
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Tué %s(%s%d) avec le signal %d\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Impossible d'allouer de la mémoire au processus correspondant: %s\n"
 
-#: src/killall.c:459
+#: src/fuser.c:478
 #, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: aucun processus tué\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Le nom de fichier %s n'existe pas.\n"
 
-#: src/killall.c:497
+#: src/fuser.c:481
 #, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+msgid "Cannot stat %s: %s\n"
+msgstr "Impossible d'obtenir les stat de %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Ne peut résoudre le port local %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Port local AF inconnu %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Impossible d'ouvrir le fichier protocole «%s»: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Option %s incorrecte\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "L'option «--namespace» requiert un paramètre."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Paramètre incorrect pour «--namespace»"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr ""
+"Vous ne pouvez utiliser que des fichiers avec les options de point de montage"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Aucune spécification de processus donnée"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "l'option «--all» ne peut être utilisée avec l'option «--silent»"
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr ""
+"Vous ne pouvez pas rechercher simultanément et exclusivement les sockets "
+"IPv4 et IPv6"
 
-#: src/killall.c:511
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s UTIL.       PID ACCÈS  COMMANDE\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(inconnu)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Impossible d'obtenir les stat du fichier %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Impossible d'ouvrir /proc/net/unix : %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Tuer le processus %d ? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Impossible de tuer le processus %d : %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Impossible d'ouvrir un socket réseau.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Impossible de trouver le numéro du périphérique des sockets\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Tuer %s(%s%d) ? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Envoyer signal %s(%s%d) ? (y/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Impossible d'obtenir l'UID à partir de l'état du processus\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Mauvaise expression régulière : %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: Ignore la correspondance partielle %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Tué %s(%s%d) avec le signal %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: aucun processus trouvé\n"
+
+#: src/killall.c:615
 #, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
+"Usage : killall [-Z CONTEXTE] [-u UTILISATEUR] [ -eIgiqrvw ] [ -SIGNAL ] "
+"NOM...\n"
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr ""
+msgstr "Usage : killall [OPTION]... [--] NOM...\n"
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -82,6 +284,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -92,370 +296,409 @@ msgid ""
 "  -V,--version        display version information\n"
 "  -w,--wait           wait for processes to die\n"
 msgstr ""
-
-#: src/killall.c:533
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact            requiert une concordance parfaite des noms très "
+"longs\n"
+"  -I,--ignore-case      recherche en ignorant la casse\n"
+"  -g,--process-group    tue le groupe associé au programme au lieu de celui-"
+"ci\n"
+"  -y,--younger-than     tue les programmes créés avant HEURE\n"
+"  -o,--older-than       tue les programmes créés après HEURE\n"
+"  -i,--interactive      demande une confirmation avant de tuer\n"
+"  -l,--list             affiche tous les noms de signaux connus\n"
+"  -q,--quiet            n'affiche pas les remarques\n"
+"  -r,--regexp           interprète NOM comme une expression régulière "
+"étendue\n"
+"  -s,--signal SIGNAL    envoie ce signal au lieu de SIGTERM\n"
+"  -u,--user UTILISATEUR ne tue que le(s) programme(s) utilisé(s) par "
+"UTILISATEUR\n"
+"  -v,--verbose          informe si le signal a été correctement envoyé\n"
+"  -V,--version          affiche les informations sur la version\n"
+"  -w,--wait             attend que les programmes s'arrêtent\n"
+
+#: src/killall.c:639
 #, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
+"  -Z,--context REGEXP ferme seulement le(s) processus ayant l'argument "
+"context\n"
+"                      (doit précéder les autres arguments)\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, fuzzy, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"Copyright (C) 1993-2000 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger et Craig Small\n"
 "\n"
-"PSmisc fait l'objet d'AUCUNE GARANTIE.\n"
-"C'est un logiciel libre, et vous pouvez le redistribuer en respectant les "
-"termes\n"
-"de la licence GNU General Public License.\n"
-"Pour plus de précisions à propos de ces problèmes, voir les fichiers nommés "
-"COPYING.\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr ""
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Format de temps incorrect"
 
-#: src/killall.c:715
+#: src/killall.c:767
 #, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Le nombre maximum de noms est %d\n"
+msgid "Cannot find user %s\n"
+msgstr "Utilisateur %s introuvable\n"
 
-#: src/killall.c:720 src/pstree.c:710
+#: src/killall.c:798
 #, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s est vide (non monté ?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"utilisation.: fuser [ -a | -s ] [ -n espace ] [ -signal ] [ -kimuv ] "
-"nom ...\n"
-"             [ - ] [ -n espace ] [ -signal ] [ -kimuv ] nom ...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"\n"
-"    -a        affiche les fichiers inutilisés aussi\n"
-"    -k        tue les processus accédant à ce fichier\n"
-"    -i        demande avant de tuer (ignoré sans -k)\n"
-"    -l        liste les noms des signaux\n"
-"    -m        système de fichiers monté\n"
-"    -n espace cherche dans l'espace de noms spécifié (fichier, udp, ou tcp)\n"
-"    -s        mode silencieux\n"
-"    -signal   envoi le signal \"signal\" au lieu de SIGKILL\n"
-"    -u        affiche l'identificateur de l'utilisateur\n"
-"    -v        mode détaillé\n"
-"    -V        affiche des informations sur la version\n"
-"    -4        cherche des sockets IPv4 seulement\n"
-"    -6        cherche des sockets IPv6 seulement\n"
-"    -         réinitialise les options\n"
-"\n"
-"  noms udp/tcp: [port_local][,[hôte_distant][,[port_distant]]]\n"
-"\n"
+msgid "Bad regular expression: %s\n"
+msgstr "Mauvaise expression régulière : %s\n"
 
-#: src/fuser.c:109
+#: src/killall.c:830
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Le nombre maximum de noms est %d\n"
 
-#: src/fuser.c:113
+#: src/killall.c:835
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s n'a aucune entrée de processus (pas monté ?)\n"
 
-#: src/fuser.c:147
+#: src/peekfd.c:96
 #, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
+msgid "Error attaching to pid %i\n"
+msgstr "Erreur lors de l'attachement au pid %i\n"
 
-#: src/fuser.c:283
+#: src/peekfd.c:104
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
 
-#: src/fuser.c:316
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 écrit des caractères sur 8 bits dans la sortie.\n"
+"    -n n'affiche pas les lectures/écritures dans les en-têtes fd.\n"
+"    -c examine également chaque nouveau processus fils.\n"
+"    -d ignore les lectures/écritures dupliquées.\n"
+"    -V affiche la version.\n"
+"    -h affiche cet aide-mémoire.\n"
+"\n"
+"  Appuyez sur CTRL-C pour interrompre.\n"
 
-#: src/fuser.c:476
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot resolve local port %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Affiche les informations au sujet d'un processus\n"
+"    -r,--raw       Affiche les informations brutes\n"
+"    -V,--version   Affiche la version et ne fait rien d'autre\n"
 
-#: src/fuser.c:492
+#: src/prtstat.c:65
 #, c-format
-msgid "Unknown local port AF %d\n"
-msgstr ""
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/fuser.c:553
+#: src/prtstat.c:66
 #, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
-msgstr ""
+#: src/prtstat.c:78
+msgid "running"
+msgstr "en cours"
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
-msgstr ""
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "endormi"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr ""
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "attente disque"
 
-#: src/fuser.c:840
-msgid "No process specification given"
-msgstr ""
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "tracé"
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
-msgstr ""
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "demande de page"
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
-msgstr ""
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "inconnu"
 
-#: src/fuser.c:901
+#: src/prtstat.c:164
 #, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
+"Processus: %-14s\t\tÉtat: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 
-#: src/fuser.c:1019
+#: src/prtstat.c:169
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
 msgstr ""
+"Processus, Groupe et ID de session\n"
+"  ID processus: %d\t\t  ID parent: %d\n"
+"     ID groupe: %d\t\t ID session: %d\n"
+"   ID groupe T: %d\n"
+"\n"
 
-#: src/fuser.c:1113
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
+"Erreurs de page\n"
+"  Ce processus   (mineur majeur): %8lu  %8lu\n"
+"  Processus fils (mineur majeur): %8lu  %8lu\n"
 
-#: src/fuser.c:1149
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
+"Temps CPU\n"
+"  Ce processus   (utilisateur système invité blkio): %6.2f %6.2f %6.2f "
+"%6.2f\n"
+"  Processus fils (utilisateur système invitéà:       %6.2f %6.2f %6.2f\n"
 
-#: src/fuser.c:1198
-#, fuzzy, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "Tuer le processus %d ? (y/n) "
-
-#: src/fuser.c:1222
+#: src/prtstat.c:189
 #, c-format
-msgid "Could not kill process %d: %s\n"
-msgstr ""
-
-#: src/fuser.c:1237
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Mémoire\n"
+"  Vsize:      %-10s\n"
+"  RSS:        %-10s \t\t Limite RSS: %s\n"
+"  Début code: %#-10lx\t\t Fin code:  %#-10lx\n"
+"  Début pile: %#-10lx\n"
+"  Pointeur pile (ESP): %#10lx\t Pointeur inst. (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
 #, c-format
-msgid "Cannot open a network socket.\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
 msgstr ""
+"Ordonancement\n"
+"  Politique:  %s\n"
+"  Courtoisie: %ld \t\t Priorité TR: %ld %s\n"
 
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "ne peut pas trouver le numéro du périphérique des sockets"
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "échec de asprintf dans print_stat.\n"
 
-#: src/peekfd.c:75
+#: src/prtstat.c:226
 #, c-format
-msgid "Error attaching to pid %i\n"
-msgstr ""
-
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
+msgid "Process with pid %d does not exist.\n"
+msgstr "Le processus avec le pid %d n'existe pas.\n"
 
-#: src/peekfd.c:85
+#: src/prtstat.c:228
 #, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
-msgstr ""
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Impossible d'ouvrir le fichier stat du pid %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Option incorrecte"
 
-#: src/peekfd.c:95
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Vous devez spécifier au moins un PID."
+
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
 msgstr ""
+"/proc n'est pas monté, impossible d'obtenir les stat de /proc/self/stat.\n"
 
-#: src/pstree.c:374
+#: src/pstree.c:794
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr ""
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s est vide (pas monté ?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | UTILISATEUR ]\n"
+"       pstree -V\n"
+"Affiche l'arborescence des processus.\n"
+"\n"
+"  -a, --arguments     afficher les paramètres de la ligne de commande\n"
+"  -A, --ascii         utiliser les caractères de tracé ASCII\n"
+"  -c, --compact       ne pas grouper des branches identiques\n"
+"  -h, --highlight-all surligner le processus courant et ses parents\n"
+"  -H PID,\n"
+"  --highlight-pid=PID surligner le processus spécifié et ses parents\n"
+"  -g, --show-pgids    afficher les ID des groupes du processus (implique -"
+"c)\n"
+"  -G, --vt100         utiliser les caractères de tracé VT100\n"
+"  -l, --long          ne pas tronquer les longues lignes\n"
+"  -n, --numeric-sort  trier le résultat par PID\n"
+"  -p, --show-pids     afficher les PIDs (implique -c)\n"
+"  -s, --show-parents  afficher les parents du processus sélectionné\n"
+"  -u, --uid-changes   montrer les transitions de uid\n"
+"  -U, --unicode       utiliser les caractères de tracé UTF-8 (Unicode)\n"
+"  -V, --version       afficher les informations sur la version\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     show         montrer les contextes de sécurité SELinux\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
 msgstr ""
+"  PID    commence à ce PID; le défaut est 1 (init)\n"
+"  USER   montre seulement les arbres nichés aux processus de cet "
+"utilisateur\n"
+"\n"
 
-#: src/pstree.c:768
+#: src/pstree.c:859
 #, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr ""
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:771
+#: src/pstree.c:862
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger et Craig Small\n"
+"\n"
 
-#: src/pstree.c:778
-#, fuzzy, c-format
-msgid "pstree (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/pstree.c:871
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr ""
+msgstr "TERM n'est pas défini\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
-msgstr ""
+msgstr "Impossible d'obtenir les spécifications du terminal\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
-msgstr ""
+msgstr "Aucun utilisateur portant ce nom: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
-msgstr ""
+msgstr "Aucun processus trouvé.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
-msgstr ""
+msgstr "Appuyez sur la touche Entrée pour fermer\n"
 
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr ""
-
-#~ msgid "-4 flag used but proc file %s is not readable\n"
-#~ msgstr "drapeau -4 utilisé mais le fichier proc %s est illisible\n"
-
-#~ msgid "-6 flag used but proc file %s is not readable\n"
-#~ msgstr "drapeau -6 utilisé mais le fichier proc %s est illisible\n"
-
-#~ msgid "kill %d"
-#~ msgstr "tuer %d"
-
-#~ msgid "No automatic removal. Please use  umount %s\n"
-#~ msgstr "Pas de démontage automatique. Utiliser SVP  umount %s\n"
-
-#~ msgid "No automatic removal. Please use  swapoff %s\n"
+msgstr "%s: signal inconnu; %s -l liste les signaux.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
 #~ msgstr ""
-#~ "Pas de démontage automatique du fichier d'échange. Utiliser SVP  swapoff %"
-#~ "s\n"
-
-#~ msgid "Internal error (type %d)\n"
-#~ msgstr "Erreur interne (type %d)\n"
-
-#~ msgid "kernel mount  "
-#~ msgstr "montage du noyau   "
-
-#~ msgid "kernel loop   "
-#~ msgstr "boucle du noyau   "
-
-#~ msgid "kernel swap   "
-#~ msgstr "fichier d'échange du noyau   "
-
-#~ msgid "ignoring -m in name space \"%s\"\n"
-#~ msgstr "ignore -m dans l'espace de noms \"%s\"\n"
-
-#, fuzzy
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: spécification invalide\n"
-
-#~ msgid "No process references; use -v for the complete list\n"
+#~ "Usage : pidof [ -eg ] NOM...\n"
+#~ "        pidof -V\n"
+#~ "\n"
+#~ "    -e   requiert une concordance parfaite des noms très longs;\n"
+#~ "         sauter si la ligne de commande est indisponible\n"
+#~ "    -g   montre l'ID du groupe associé au lieu de celui du programme\n"
+#~ "    -V   affiche les informations sur la version\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
 #~ msgstr ""
-#~ "Pas de références sur le processus; utiliser -v pour la liste complète\n"
+#~ "Copyright (C) 1993-2005 Werner Almesberger et Craig Small\n"
+#~ "\n"
diff --git a/po/hr.gmo b/po/hr.gmo
new file mode 100644 (file)
index 0000000..ca67cdc
Binary files /dev/null and b/po/hr.gmo differ
diff --git a/po/hr.po b/po/hr.po
new file mode 100644 (file)
index 0000000..0410d7a
--- /dev/null
+++ b/po/hr.po
@@ -0,0 +1,555 @@
+# Translation of psmisc to Croatian.
+# Copyright (C) 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+#
+# Tomislav Krznar <tomislav.krznar@gmail.com>, 2012.
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.17rc1\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-08-28 11:11+0200\n"
+"Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
+"Language-Team: Croatian <lokalizacija@linux.hr>\n"
+"Language: hr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Lokalize 1.4\n"
+
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr ""
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Ne mogu otvoriti direktorij /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr ""
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "Navedena datoteka %s ne postoji.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Ne mogu izvršiti stat %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Ne mogu odrediti lokalni port %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Nepoznati lokalni port AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr ""
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Neispravna opcija %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr ""
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr ""
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr ""
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr ""
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr ""
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr ""
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(nepoznato)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Ne mogu izvršiti stat na datoteci %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Ne mogu otvoriti /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr ""
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr ""
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Ne mogu otvoriti mrežnu utičnicu.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Ne mogu pronaći broj uređaja utičnice.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr ""
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr ""
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Ne mogu dohvatiti UID iz stanja procesa\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Neispravan regularni izraz: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "preskačem djelomično podudaranje %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr ""
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: proces nije pronađen\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr ""
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Neispravan vremenski oblik"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Ne mogu pronaći korisnika %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Neispravan regularni izraz: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Najveći broj imena je %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s je prazan (nije montiran?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Greška pridruživanja pid-u %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "pokrenut"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombi"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "praćen"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "straničenje"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "nepoznato"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Proces s pid-om %d ne postoji.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Neispravna opcija"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Morate navesti barem jedan PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc nije montiran, ne mogu izvršiti stat /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s je prazan (nije montiran?)\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr ""
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "TERM nije postavljen\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Ne mogu dohvatiti mogućnosti terminala\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Nema takvog korisnika: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Nisu pronađeni procesi.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Pritisnite return za zatvaranje\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: nepoznat signal; %s -l ispisuje signale.\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger i Craig Small\n"
+#~ "\n"
index 84c83a9..29f991e 100644 (file)
Binary files a/po/hu.gmo and b/po/hu.gmo differ
index 98aad29..fb4001c 100644 (file)
--- a/po/hu.po
+++ b/po/hu.po
-# Hungarian translations for psmisc package.
-# Copyright (C) 2006 Free Software Foundation, Inc.
+# Hungarian translation of psmisc
+# Copyright (C) 2006, 2007, 2009, 2012 Free Software Foundation, Inc.
 # This file is distributed under the same license as the psmisc package.
-# Miklos Vajna <vmiklos@frugalware.org>, 2006.
 #
+# Emese Kovacs <emese@instantweb.hu>, 2006.
+# Gabor Kelemen <kelemeng@gnome.hu>, 2006, 2007, 2009, 2012.
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.2\n"
+"Project-Id-Version: psmisc 22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2006-08-05 02:34+0200\n"
-"Last-Translator: Miklos Vajna <vmiklos@frugalware.org>\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-16 13:22+0200\n"
+"Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
+"Language: hu\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-2\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: KBabel 1.11.4\n"
+"Plural-Forms:  nplurals=2; plural=(n != 1);\n"
 
-#: src/killall.c:74
+#: src/fuser.c:133
 #, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Megöli a következõt: %s(%s%d) ? (y/N) "
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Használat: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n NÉVTÉR] [-k [-i] [-"
+"SZIGNÁL]] NÉV...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Megjeleníti a megnevezett fájlokat, foglalatokat vagy fájlrendszereket "
+"használó\n"
+"folyamatokat.\n"
+"\n"
+"  -a,--all              a nem használt fájlok is jelenjenek meg\n"
+"  -i,--interactive      kérdés kilövés előtt (a -k nélkül figyelmen kívül "
+"marad)\n"
+"  -k,--kill             a megnevezett fájlokhoz hozzáférő folyamatok "
+"kilövése\n"
+"  -l,--list-signals     elérhető szignálnevek felsorolása\n"
+"  -m,--mount            a megnevezett fájlrendszereket vagy blokkeszközöket\n"
+"                          használó összes folyamat megjelenítése\n"
+"  -M,--ismountpoint     kérés teljesítése csak ha a NÉV egy csatolási pont\n"
+"  -n,--namespace NÉVTÉR keresés ebben a névtérben (file, udp, vagy tcp)\n"
+"  -s,--silent           néma működés\n"
+"  -SZIGNÁL              ezen szignál elküldése a SIGKILL helyett\n"
+"  -u,--user             felhasználói azonosítók megjelenítése\n"
+"  -v,--verbose          részletes kimenet\n"
+"  -w,--writeonly        csak írási hozzáféréssel rendelkező folyamatok "
+"kilövése\n"
+"  -V,--version          verzióinformációk megjelenítése\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             csak IPv4 foglalatok keresése\n"
+"  -6,--ipv6             csak IPv6 foglalatok keresése\n"
 
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Megöli a következõt: %s(%s%d) ? (y/N) "
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     kapcsolók visszaállítása\n"
+"\n"
+"  udp/tcp nevek: [helyi_port][,[távoli_gép][,[távoli_port]]]\n"
+"\n"
 
-#: src/killall.c:121
+#: src/fuser.c:160
 #, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Nem sikerült megkapni a UID-t a folyamat állapotból\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:163
 #, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Rossz reguláris kifejezés: %s\n"
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger és Craig Small\n"
+"\n"
 
-#: src/killall.c:343
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "részleges egyezés kihagyása: %s(%d)\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"A PSmisc csomagra nem vonatkozik ABSZOLÚT SEMMILYEN GARANCIA\n"
+"Ez egy szabad szoftver, a GNU General Public License feltételei mellett\n"
+"bármikor továbbíthatja, a részletekért lásd a COPYING fájlt.\n"
 
-#: src/killall.c:445
+#: src/fuser.c:184
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) megölve a következõ szignállal: %d\n"
+msgid "Cannot open /proc directory: %s\n"
+msgstr "A /proc könyvtár nem nyitható meg: %s\n"
 
-#: src/killall.c:459
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: nincs megölt folyamat\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Nem foglalható memória az illeszkedő folyamat részére: %s\n"
 
-#: src/killall.c:497
+#: src/fuser.c:478
 #, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "A megadott %s fájlnév nem létezik.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "%s nem érhető el: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "A(z) %s helyi port nem oldható fel: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Ismeretlen helyi port AF: %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Nem nyitható meg a(z) \"%s\" protokollfájl: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: érvénytelen kapcsoló: %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "A névtér kapcsoló argumentumot igényel."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Érvénytelen névtérnév"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Fájlok csak csatolási pont kapcsolókkal használhatók"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Nincs megadva folyamatmeghatározás"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "az összes kapcsoló nem használható a néma kapcsolóval."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Nem lehet egyszerre csak IPv4 és csak IPv6 foglalatokat keresni"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s FELHASZNÁLÓ  PID HOZZÁFÉRÉS PARANCS\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(ismeretlen)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "A(z) %s fájl nem érhető el: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "A /proc/net/unix könyvtár nem nyitható meg: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Kilövi a(z) %d folyamatot? (i/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "A(z) %d folymat kilövése nem sikerült: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Nem nyitható meg hálózati foglalat\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Nem található a foglalat eszközszáma.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Kilövi ezt: %s(%s%d) ? (i/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Elküldi a(z) %s(%s%d) szignált? (i/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
 msgstr ""
-"Használat: pidof [ -eg ] NÉV...\n"
-"           pidof -V\n"
-"\n"
-"    -e      teljes egyezés igénylése nagyon hosszú nevek esetén;\n"
-"            kihagyás, ha a parancssor nem elérhetõ\n"
-"    -g      a folyamat csoport ID-jának mutatása a folyamat ID helyett\n"
-"    -V      verzióinformáció megjelenítése\n"
-"\n"
+"killall: Nem kérhető le a felhasználói azonosító a folyamat állapotából\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Hibás reguláris kifejezés: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: %s(%d) részleges találat átlépése\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) kilőve a(z) %d szignállal\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: nem található folyamat\n"
 
-#: src/killall.c:511
+#: src/killall.c:615
 #, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
-"Használat: killall [-Z KÖRNYEZET] [-u FELHASZNÁLÓ] [ -eIgiqrvw ] [ -"
-"SZIGNÁL ] NÉV...\n"
+"Használat: killall [-Z KONTEXTUS] [-u FELHASZNÁLÓ] [ -eIgiqrvw ] [ -"
+"SZIGNÁL ] NÉV...\n"
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Használat: killal [OPCIÓ]... [--] NÉV...\n"
+msgstr "Használat: killall [KAPCSOLÓ]... [--] NÉV...\n"
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -94,6 +279,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -107,371 +294,376 @@ msgstr ""
 "       killall -l, --list\n"
 "       killall -V, --version\n"
 "\n"
-"  -e,--exact          teljes egyezés igénylése nagyon hosszú nevek esetére\n"
-"  -I,--ignore-case    kisbetû/nagybetû-érzékenység kikapcsolása\n"
-"  -g,--process-group  a folyamatcsoport megölése a folyamat helyett\n"
-"  -i,--interactive    megerõsítés kérése megölés elõtt\n"
-"  -l,--list           az összes ismert szignálnév listázása\n"
-"  -q,--quiet          ne nyomtasson kifogásokat\n"
-"  -r,--regexp         értelmezze a NEVET kiterjesztett reguláris "
-"kifejezésként\n"
-"  -s,--signal SZIGNÁL ezt a szignált küldje SIGTERM helyett\n"
-"  -u,--user FELHASZNÁLÓ csak a FELHASZNÁLÓként futó folyamatok megölése\n"
-"  -v,--verbose        jelentse ha a szignált sikeresen elküldte\n"
-"  -V,--version        verzióinformáció megjelenítése\n"
-"  -w,--wait           várja meg míg meghal a folyamat\n"
-
-#: src/killall.c:533
+"  -e,--exact          megköveteli a pontos egyezést nagyon hosszú nevek "
+"esetén;\n"
+"  -I,--ignore-case    a folyamatnév-illesztés ne legyen kis- és\n"
+"                        nagybetűérzékeny\n"
+"  -g,--process-group  folyamatcsoport kilövése folyamat helyett\n"
+"  -y,--younger-than   az IDŐNÉL fiatalabb folyamatok kilövése\n"
+"  -o,--older-than     az IDŐNÉL öregebb folyamatok kilövése\n"
+"  -i,--interactive    megerősítés kérése kilövés előtt\n"
+"  -l,--list           az összes ismert szignálnév felsorolása\n"
+"  -q,--quiet          ne kérdezzen\n"
+"  -r,--regexp         a NÉV értelmezése kiterjesztett reguláris "
+"kifejezésként\n"
+"  -s,--signal SZIGNÁL ezen szignál elküldése a SIGTERM helyett\n"
+"  -u,--user FELHASZNÁLÓ  csak a FELHASZNÁLÓ nevében futó folyamatok "
+"kilövése\n"
+"  -v,--verbose        értesítés, ha a szignál küldése sikeres\n"
+"  -V,--version        verzióinformációk megjelenítése\n"
+"  -w,--wait           várja meg, amíg a folyamatok meghalnak\n"
+
+#: src/killall.c:639
 #, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
-"  -Z,--context REGEXP csak az adott környezettel rendelkezõ folyamat(ok) "
-"megölése\n"
-"                      (meg kell elõzze a többi argumentumot)\n"
+"  -Z,--context REGEXP csak a kontextussal rendelkező folyamatok kilövése\n"
+"                      (meg kell előznie az egyéb argumentumokat)\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2005 Werner Almesberger és Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger és Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"A PSmisc nem vállal SEMMILYEN garanciát.\n"
-"Ez egy szabad szoftver, szabadon terjeszthetõ a GNU General Public License\n"
-"feltételei mellett.\n"
-"Ezzel kapcsolatban egyéb információk találhatók a COPYING nevû fájlban.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Érvénytelen időformátum"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
-msgstr "%s: nem található ilyen felhasználó\n"
+msgstr "A(z) %s felhasználó nem található\n"
 
-#: src/killall.c:715
+#: src/killall.c:798
 #, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "A neve maximális száma %d\n"
+msgid "Bad regular expression: %s\n"
+msgstr "Hibás reguláris kifejezés: %s\n"
 
-#: src/killall.c:720 src/pstree.c:710
+#: src/killall.c:830
 #, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "Nem üres: %s (nincs csatlakoztatva?)\n"
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: A nevek maximális száma %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s nem tartalmaz folyamatbejegyzéseket (nincs csatolva?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Hiba a csatlakozás közben a(z) %i folyamatazonosítóhoz\n"
 
-#: src/fuser.c:89
-#, fuzzy, c-format
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
 msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
+"Copyright (C) 2007 Trent Waddington\n"
 "\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
 msgstr ""
-"Használat: fuser [ -a | -s | -c ] [ -n TÉR ] [ -SZIGNÁL ] [ -kimuv ] NÉV...\n"
-"                 [ - ] [ -n TÉR ] [ -SZIGNÁL ] [ -kimuv ] NÉV...\n"
-"           fuser -l\n"
-"           fuser -V\n"
-"Megmutatja, hogy mely folyamatok használják az adott fájlt, socketet vagy "
-"fájlrendszert.\n"
-"\n"
-"    -a        megjeleníti a nem használt könyvtárakat is\n"
-"    -c        csatlakoztatott FS\n"
-"    -f        csöndben figyelmen kívül hagyva (POSIX kompatibilitás miatt)\n"
-"    -i        kérdezzen megölés elõtt (figyelmen kívül hagyva a -k nélkül)\n"
-"    -k        a fájlt használó folyamtok megölése\n"
-"    -l        az elérhetõ szignálnevek listázása\n"
-"    -m        mutassa az összes folyamatot amely az adott fájlrendszert "
-"használja\n"
-"    -n TÉR    keressen ebben a névtérben (file, udp, vagy tcp)\n"
-"    -s        csendes mûködés\n"
-"    -SZIGNÁL  küldje ezt a szignált a SIGKILL helyett\n"
-"    -u        felhasználói azonosítók megjelenítése\n"
-"    -v        beszédes kimenet\n"
-"    -V        verzióinformáció megjelenítése\n"
-"    -4        csak IPv4 socketek keresése\n"
-"    -6        csak IPv6 socketek keresése\n"
-"    -         opciók törlése\n"
-"\n"
-"  udp/tcp nevek: [helyi_port][,[távoli_gép][,[távoli_port]]]\n"
+"Copyright (C) 2007 Trent Waddington\n"
 "\n"
 
-#: src/fuser.c:109
+#: src/peekfd.c:116
 #, c-format
 msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
+"Használat: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 8 bites tiszta adatfolyamok kiírása.\n"
+"    -n ne jelenítse meg az írás/olvasást az fd fejlécekből.\n"
+"    -c új gyermekfolyamatok megjelenítése.\n"
+"    -d többszörös olvasások/írások eltávolítása a kimenetből.\n"
+"    -V verzióinformációk kiírása.\n"
+"    -h ezen súgó kiírása.\n"
+"\n"
+"  A CTRL-C segítségével megszakítható a kimenet.\n"
 
-#: src/fuser.c:113
+#: src/prtstat.c:54
 #, c-format
 msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
+"Használat: prtstat [kapcsolók] PID ...\n"
+"           prtstat -V\n"
+"Információk kiírása egy folyamatról\n"
+"    -r,--raw       Az információk nyers megjelenítése\n"
+"    -V,--version   Verzióinformációk kiírása és kilépés\n"
 
-#: src/fuser.c:120
-#, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
-
-#: src/fuser.c:147
-#, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr "Nem sikerült megnyitni a /proc könyvtárat: %s\n"
-
-#: src/fuser.c:283
-#, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr "Nem sikerült allokálni memóriát a következõ egyezõ folyamatnak: %s\n"
-
-#: src/fuser.c:316
-#, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Nem sikerült statolni a %s csatlakozási pontot: %s\n"
-
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
-#, c-format
-msgid "Cannot stat %s: %s\n"
-msgstr "Nem sikerült statolni: %s: %s\n"
-
-#: src/fuser.c:476
-#, c-format
-msgid "Cannot resolve local port %s: %s\n"
-msgstr "Nem sikerült feloldani a %s. számú helyi portot: %s\n"
-
-#: src/fuser.c:492
+#: src/prtstat.c:65
 #, c-format
-msgid "Unknown local port AF %d\n"
-msgstr "Ismeretlen helyi port: AF %d\n"
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/fuser.c:553
+#: src/prtstat.c:66
 #, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
-msgstr "Nem sikerült megnyitni a \"%s\" protokoll-fájlt: %s\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
-msgstr "A névtér opció igényel egy paramétert."
+#: src/prtstat.c:78
+msgid "running"
+msgstr "fut"
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
-msgstr "Érvénytelen névtér név"
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "alszik"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr "Csak csatlakoztatási-pont opcióként használhat fájlokat"
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "lemez alszik"
 
-#: src/fuser.c:840
-msgid "No process specification given"
-msgstr "Nem adott meg folyamat-specifikációt"
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombi"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Nem használható a csatolt és csatolási pont kapcsoló egyszerre"
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "követett"
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
-msgstr "a -a opció nem használható a csendes opcióval."
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "lapoz"
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
-msgstr "Nem kereshet csak IPv4 és csak IPv6 socketeket egy idõben"
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "ismeretlen"
 
-#: src/fuser.c:901
-#, fuzzy, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
-"\n"
-"%*s FELHASZNÁLÓ PID ELÉRÉS PARANCS\n"
+"Folyamat: %-14s\t\tÁllapot: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tSzálak: %ld\n"
 
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
-msgstr "(ismeretlen)"
-
-#: src/fuser.c:1019
+#: src/prtstat.c:169
 #, c-format
-msgid "Cannot stat file %s: %s\n"
-msgstr "Nem érhetõ el a %s file: %s\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Folyamat, csoport és munkamenet-azonosítók\n"
+"  Folyamat az.: %d\t\t   Szülő az.: %d\n"
+"   Csoport az.: %d\t\t M.menet az.: %d\n"
+" T Csoport az.: %d\n"
+"\n"
 
-#: src/fuser.c:1113
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
-msgstr "Nem sikerült megnyitni a /proc/net/unix fájlt: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Laphibák\n"
+"  Ez a folyamat     (minor major): %8lu  %8lu\n"
+"  Gyermekfolyamatok (minor major): %8lu  %8lu\n"
 
-#: src/fuser.c:1149
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Nem sikerült megnyitni a /etc/mtab fájlt: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"CPU idők\n"
+"  Ez a folyamat     (felh. rendszer vendég blkio):  %6.2f %6.2f %6.2f %6.2f\n"
+"  Gyermekfolyamatok (felh. rendszer vendég ):       %6.2f %6.2f %6.2f\n"
 
-#: src/fuser.c:1198
+#: src/prtstat.c:189
 #, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "Megöli a %d-s folyamatot? (y/N) "
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Memória\n"
+"  Vméret:        %-10s\n"
+"  RSS:           %-10s \t\t RSS korlát: %s\n"
+"  Kód kezdete:   %#-10lx\t\t Kód vége:  %#-10lx\n"
+"  Verem kezdete: %#-10lx\n"
+"  Veremmutató (ESP): %#10lx\t Utasításmutató (EIP): %#10lx\n"
 
-#: src/fuser.c:1222
+#: src/prtstat.c:199
 #, c-format
-msgid "Could not kill process %d: %s\n"
-msgstr "Nem sikerült megölni a %d-s folyamatot: %s\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Ütemezés\n"
+"  Irányelv: %s\n"
+"  Nice:     %ld \t\t RT prioritás: %ld %s\n"
 
-#: src/fuser.c:1237
-#, c-format
-msgid "Cannot open a network socket.\n"
-msgstr "Nem sikerült megnyitni egy hálózati socketet.\n"
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "az asprintf a print_stat hívásban sikertelen.\n"
 
-#: src/fuser.c:1241
+#: src/prtstat.c:226
 #, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "Nem sikerült megtalálni a socket eszközszámát.\n"
+msgid "Process with pid %d does not exist.\n"
+msgstr "Nem létezik %d PID-ű folyamat.\n"
 
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
-msgstr ""
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Nem érhető el a fájl a(z) %d (%s) PID-hez\n"
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "pstree (PSmisc) %s\n"
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Érvénytelen kapcsoló"
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
-msgstr ""
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Legalább egy PID-et meg kell adnia."
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
-msgstr ""
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "a /proc nincs csatolva, nem érhető el a /proc/self/stat.\n"
 
-#: src/pstree.c:374
+#: src/pstree.c:794
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "Belsõ hiba: a MAX_DEPTH nem elég nagy.\n"
+msgid "%s is empty (not mounted ?)\n"
+msgstr "a(z) %s üres (nincs csatlakoztatva?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
-"Használat: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
-"                  [ -A | -G | -U ] [ PID | FELHASZNÁLÓ ]\n"
+"Használat: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ]\n"
+"                  [ -u ] [ -A | -G | -U ] [ PID | FELHASZNÁLÓ ]\n"
 "           pstree -V\n"
-"Megjeleníti a folyamtok egy fáját.\n"
+"Megjeleníti a folyamatok fáját.\n"
 "\n"
-"    -a     a parancssori argumentumok mutatása\n"
-"    -A     használjon ASCII sor rajzoló karaktereket\n"
-"    -c     ne vegye egynek az egyezõ alfákat\n"
-"    -h     a jelenlegi folyamat és annak õseinek kiemelése\n"
-"    -H PID ennek a folyamatnak és õseinek kiemelése\n"
-"    -G     használjon VT100 sor rajzoló karaktereket\n"
-"    -l     ne vágja le a hosszú sorokat\n"
-"    -n     rendezze a kimenetet PID szerint\n"
-"    -p     PID-ek mutatása; a -c-t bekapcsolja\n"
-"    -u     mutassa az uid változásokat\n"
-"    -U     használjon UTF-8 (Unicode) sor rajzoló karaktereket\n"
-"    -V     verzióinformációk megjelenítése\n"
-
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -Z     mutassa az SELinux biztonsági környezeteket\n"
-
-#: src/pstree.c:771
+"  -a, --arguments     parancssori argumentumok megjelenítése\n"
+"  -A, --ascii         ASCII sorrajzoló karakterek használata\n"
+"  -c, --compact       azonos részfákat ne tömörítse\n"
+"  -h, --highlight-all az aktuális folyamat és őseinek kiemelése\n"
+"    -H PID \n"
+"  --highlight-pid=PID az adott folyamat és őseinek kiemelése\n"
+"  -g, --show-pgids    folyamatcsoport-azonosító megjelenítése,\n"
+"                        magába foglalja a -c kapcsolót\n"
+"  -G, --vt100         VT100 sorrajzoló karakterek használata\n"
+"  -l, --long          ne csonkítsa a hoszú sorokat\n"
+"  -n, --numeric-sort  kimenet rendezése PID szerint\n"
+"  -p, --show-pids     a PID-ek megjelenítése; magába foglalja a -c "
+"kapcsolót\n"
+"  -u, --uid-changes   az uid átmenetek megjelenítése\n"
+"  -U, --unicode       UTF-8 (Unicode) sorrajzoló karakterek használata\n"
+"  -V, --version       verzióinformációk megjelenítése\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     show         a SELinux biztonsági kontextusok megjelenítése\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"    PID    induljon ennél a PID-nél; az alapértelmezés az 1 (init)\n"
-"    FELHASZNÁLÓ csak azokat a fákat mutassa amik ennek a felhasználónak a "
-"folyamatainál gyökereznek\n"
+"    PID               kezdés ezzel a PID-del; az alapértelmezés az 1 (init)\n"
+"    FELHASZNÁLÓ       csak az adott felhasználó folyamataiból kiinduló fák\n"
+"                        megjelenítése\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger és Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr "a TERM nincs beállítva\n"
+msgstr "A TERM nincs beállítva\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
-msgstr "Nem sikerült a terminál kapacitásait lekérdezni\n"
+msgstr "A terminál képességei nem kérhetők le\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
-msgstr "Nincs ilyen felhasználónév: %s\n"
+msgstr "Nincs ilyen felhasználónév: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
-msgstr "Nem található folyamat.\n"
+msgstr "Nem találhatók folyamatok.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
-msgstr "Üssön entert a bezáráshoz\n"
+msgstr "A bezáráshoz nyomj entert\n"
 
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr "%s: ismeretlen szignál; %s -l listázza a szignálokat.\n"
+msgstr "%s: ismeretlen szignál; a %s -l felsorolja a szignálokat.\n"
diff --git a/po/id.gmo b/po/id.gmo
new file mode 100644 (file)
index 0000000..901d1d3
Binary files /dev/null and b/po/id.gmo differ
diff --git a/po/id.po b/po/id.po
new file mode 100644 (file)
index 0000000..ee69ed1
--- /dev/null
+++ b/po/id.po
@@ -0,0 +1,703 @@
+# Pesan bahasa indonesia untuk psmisc.
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Arif E. Nugroho <arif_endro@yahoo.com>, 2008, 2009, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.11-pre1\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2010-03-28 19:30+0700\n"
+"Last-Translator: Arif E. Nugroho <arif_endro@yahoo.com>\n"
+"Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
+"Language: id\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Penggunaan: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n RUANG] [-k [-i] [-"
+"SIGNAL]] NAMA...\n"
+"            fuser -l\n"
+"            fuser -V\n"
+"Tampilkan proses yang menggunakan nama berkas, socket, atau sistem berkas.\n"
+"\n"
+"  -a                    tampilkan berkas yang tidak digunakan juga\n"
+"  -c                    sama seperti -m (untuk kompabilitas POSIX)\n"
+"  -f                    secara diam diabaikan (untuk kompabilitas POSIX)\n"
+"  -i                    tanya sebelum menghentikan (abaikan tanpa -k)\n"
+"  -k                    hentikan proses yang mengakses berkas bernama\n"
+"  -l                    daftar nama sinyal yang tersedia\n"
+"  -m                    tampilkan seluruh proses menggunakan sistem berkas "
+"bernama\n"
+"  -M,--ismountpoint     penuhi permintaan hanya jika NAMA adalah sebuah "
+"titik pemasangan\n"
+"  -n RUANG              cari di ruang nama ini (berkas, udp, atau tcp)\n"
+"  -s                    beroperasi secara sunyi\n"
+"  -SIGNAL               kirim sinyal ini daripada SIGKILL\n"
+"  -u                    tampilkan ID pengguna\n"
+"  -v                    keluaran ramai\n"
+"  -V                    tampilkan informasi versi\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             cari di socket IPv4 saja\n"
+"  -6,--ipv6             cari di socket IPpv6 saja\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"    -                   pilihan reset\n"
+"\n"
+"  nama udp/tcp: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Hak Cipta (C) 1993-2010 Werner Almesberger dan Craid Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc datang dengan SECARA ABSOLUT TIDAK ADA GARANSI.\n"
+"Ini adalah aplikasi bebas, anda diperbolehkan untuk meredistribusikannya "
+"dibawah\n"
+"ketentuan dari GNU General Public License.\n"
+"Untuk informasi mengenai masalah ini, lihat berkas bernama COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Tidak dapat membuka direktori /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Tidak dapat mengalokasikan memori untuk proc yang sesuai: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "Nama berkas yang dispesifikasikan %s tidak ada.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Tidak dapat memperoleh statistik %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Tidak dapat meresolf port lokal %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Port lokal AF %d tidak diketahui\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Tidak dapat membuka berkas protokol \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Pilihan %s tidak valid\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Pilihan nama ruang membutuhkan sebuah argumen."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Nama nama-ruang tidak valid"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Anda hanya dapat menggunakan berkas dengan pilihan titik-pemasangan"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Tidak ada spesifikasi proses yang diberikan"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "semua pilihan tidak dapat digunakan dengan pilihan silent."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+"Anda tidak dapat mencari hanya untuk IPv4 dan hanya untuk IPv6 socket di "
+"waktu yang sama"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s PENGGUNA    PID AKSES  PERINTAH\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(tidak diketahui)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Tidak dapat memperoleh statistik berkas %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Tidak dapat membuka /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Bunuh proses %d ? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Tidak dapat menghentikan proses %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Tidak dapat membuka sebuah socket network.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Tidak dapat menemukan nomor perangkat socket.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Bunuh %s(%s%d) ? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Sinyal %s(%s%d) ? (y/N)"
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Tidak dapat memperoleh UID dari status proses\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Ekspresi regular buruk: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "melewatkan pencocokan bagian %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Terhenti %s(%s%d) dengan sinyal %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: tidak ada proses yang ditemukan\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Penggunaan: killall [-Z KONTEKS] [-u PENGGUNA] [-eIgiqrvw ] [ -SIGNAL ] "
+"NAMA...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Penggunaan: killall [OPSI]... [--] NAMA...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          membutuhkan pencocokan tepat untuk setiap nama "
+"panjang\n"
+"  -I,--ignore-case    pencocokan nama proses tidak memperhatikan besar "
+"huruf\n"
+"  -g,--process-group  hentikan proses grup daripada proses\n"
+"  -y,--younger-than   hentikan proses lebih muda dari WAKTU\n"
+"  -o,--older-than     hentikan proses lebih tua  dari WAKTU\n"
+"  -i,--interactive    tanya untuk konfirmasi sebelum menghentikan\n"
+"  -l,--list           daftar seluruh nama sinyal yang diketahui\n"
+"  -q,--quiet          jangan tampilkan komplain\n"
+"  -r,--regexp         interpretasikan NAMA sebagai sebuah ekstensi ekpresi "
+"regular\n"
+"  -s,--signal SINYAL  kirim sinyal ini daripada SIGTERM\n"
+"  -u,--user PENGGUNA  hentikan hanya proses yang berjalan sebagai PENGGUNA\n"
+"  -v,--verbose        laporkan jika sinyal telah secara sukses dikirimkan\n"
+"  -V,--version        tampilkan informasi versi\n"
+"  -w,--wait           tunggu untuk proses untuk mati\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP hanya hentikan proses yang memiliki konteks\n"
+"                      (harus diawali dengan argumen lain)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Hak Cipta (C) 1993-2010 Werner Almesberger dan Craid Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Format waktu tidak valid"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Tidak dapat menemukan pengguna %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Ekspresi regular buruk: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Jumlah maksimal dari nama adalah %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s adalah kosong (belum dimount ?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Error mengattach ke pid %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Hak Cipta (C) 2008 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Penggunaan: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 keluarkan 8 bit stream bersih.\n"
+"    -n jangan tampilkan baca/tulis dari header fd.\n"
+"    -c lihat di proses anak baru apapun juga.\n"
+"    -d hapus duplikasi baca/tulis dari keluaran.\n"
+"    -V tampilkan informasi versi.\n"
+"    -h tampilkan bantuan ini.\n"
+"\n"
+"  Tekan CTRL-C untuk mengakhiri keluaran.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Penggunaan: prstat [pilihan] PID ...\n"
+"            prstat -V\n"
+"Tampilkan informasi mengenai sebuah proses\n"
+"    -r,--raw        tampilkan informasi secara mentah\n"
+"    -V,--version    Tampilkan informasi versi dan keluar\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Hak Cipta (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "berjalan"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "tertidur"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "disk tidur"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "terlacak"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "paging"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "tidak diketahui"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Proses : %-14s\t\tKondisi: %c (%s)\n"
+"  CPU# : %-3d\t\tTTY: %s\tThreads: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Proses, Grup dan ID sesi\n"
+"  ID Proses : %d\t\t ID induk: %d\n"
+"  ID Grup   : %d\t\t ID sesi : %d\n"
+"  ID Grup T : %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Kesalahan Page\n"
+"  Proses ini      (minor major): %8lu  %8lu\n"
+"  Proses anak     (minor major): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Waktu CPU\n"
+"  Proses ini   (pengguna sistem tamu blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Proses anak  (pengguna sistem tamu):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Memori\n"
+"  BesarV:      %-10s\n"
+"  RSS:         %-10s \t\t Batas RSS: %s\n"
+"  Awal kode:   %#-10lx\t\t Akhir kode: %#-10lx\n"
+"  Awal stack:  %#-10lx\n"
+"  Penunjuk stack (ESP): %#10lx\t Penunjuk instruksi (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Penjadwalan\n"
+"  Kebijakan: %s\n"
+"  Baik:      %ld \t\t Prioritas RT: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf dalam print_stat gagal.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Proses dengan pid %d tidak ada.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Tidak dapat membuka statitik berkas untuk pid %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Pilihan tidak valid"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Anda harus menyediakan paling tidak satu PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+"/proc belum dipasang, tidak dapat memperoleh statistik /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s adalah kosong (belum dimount ?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Penggunaan: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -"
+"u ]\n"
+"                   [ -A | -G | -U ] [ PID | PENGGUNA ]\n"
+"            pstree -V\n"
+"Tampilkan sebuah pohon proses.\n"
+"\n"
+"  -a, --arguments     tampilkan argumen baris perintah\n"
+"  -A, --ascii         gunakan baris ASCII karakter gambar\n"
+"  -c, --compact       jangan kompak subtree identik\n"
+"  -h, --highlight-all highlight proses sekarang dan pendahulunya\n"
+"  -H PID,\n"
+"  --highligh-pid=PID  highlight proses ini dan pendahulunya\n"
+"  -G, --vt100         gunakan baris VT100 karakter gambar\n"
+"  -l, --long          jangan potong baris panjang\n"
+"  -n, --numeric-sort  urutkan keluaran berdasarkan PID\n"
+"  -p, --show-pids     tampilkan PID; mengimplikasikan -c\n"
+"  -u, --uid-changes   tampilkan perubahan uid\n"
+"  -U, --unicode       gunakan UTF-8 (Unicode) baris karakter gambar\n"
+"  -V, --version       tampilkan informasi versi\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     tampilkan    tampilkan konteks keamanan SELinux\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  PID      awal di PID ini; baku adalah 1 (init)\n"
+"  PENGGUNA tampilkan hanya proses yang berakar dari pengguna ini\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Hak Cipta (C) 1993-2009 Werner Almesberger dan Craid Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "TERM tidak diset\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Tidka dapat memperoleh kapabilitas terminal\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Tidak ada nama pengguna seperti itu: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Tidak ada proses yang ditemukan.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Tekan Enter untuk menutup\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: sinyal tidak diketahui; %s -l daftar sinyal.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Penggunaan: pidof [ -eg ] NAMA...\n"
+#~ "            pidof -V\n"
+#~ "\n"
+#~ "   -e       membutuhkan pencocokan yang tepat untuk setiap nama panjang;\n"
+#~ "            dilewatkan jika baris perintah tidak tersedia\n"
+#~ "   -g       menampilkan proses grup ID dari pada proses ID\n"
+#~ "   -V       tampilkan informasi versi\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Hak Cipta (C) 1993-2005 Werner Almesberger dan Craid Small\n"
+#~ "\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr ""
+#~ "Anda tidak dapat menggunakan tanda terpasang dan titik-pemasangan "
+#~ "bersamaan"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Tidak dapat memperoleh statistik titik pemasangan %s: %s\n"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Tidak dapat membuka /etc/mtab: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "Internal error: MAX_DEPTH tidak cukup besar.\n"
index 3f845a6..889b61f 100644 (file)
Binary files a/po/it.gmo and b/po/it.gmo differ
index f7b1de8..b857bf9 100644 (file)
--- a/po/it.po
+++ b/po/it.po
 # Italian messages for psmisc.
-# Copyright (C) 2001, 2005, 2006, 2007 Free Software Foundation, Inc.
-# This file is distributed under the same license as the psmisc file.
-# Marco Colombo <m.colombo@ed.ac.uk>, 2005, 2006, 2007.
+# Copyright (C) 2001, 2005, 2006, 2007, 2009, 2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Marco Colombo <m.colombo@ed.ac.uk>, 2005, 2006, 2007, 2009, 2010.
 # Daniele Pagano <esaurito@users.sourceforge.net>, 2001.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.5\n"
+"Project-Id-Version: psmisc 22.12\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2007-05-30 17:17+0100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2010-08-17 10:24+0100\n"
 "Last-Translator: Marco Colombo <m.colombo@ed.ac.uk>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
+"Language: it\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Terminare %s(%s%d)? (y/N) "
-
-#: src/killall.c:77
+#: src/fuser.c:133
 #, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Terminare %s(%s%d)? (y/N) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Impossibile ottenere l'UID dallo stato del processo\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Espressione regolare non valida: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "ignorata corrispondenza parziale %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Terminato %s(%s%d) con segnale %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: nessun processo terminato\n"
-
-#: src/killall.c:497
-#, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
-"Uso: pidof [ -eg ] NOME...\n"
-"     pidof -V\n"
-"\n"
-"    -e      richiede una corrispondenza esatta per i nomi molto lunghi;\n"
-"            ignora se la riga di comando non è disponibile\n"
-"    -g      mostra l'ID del gruppo invece che l'ID del processo\n"
-"    -V      mostra le informazioni sulla versione\n"
+"Uso: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n CONTESTO] [-k [-i] [-SEGNALE]] "
+"NOME...\n"
+"     fuser -l\n"
+"     fuser -V\n"
+"Mostra quali processi stanno usando un certo file, socket o filesystem.\n"
 "\n"
-
-#: src/killall.c:511
+"  -a,--all           mostra anche i file inutilizzati\n"
+"  -i,--interactive   conferma prima di terminare (ignorato senza -k)\n"
+"  -k,--kill          termina i processi che accedono al file specificato\n"
+"  -l,--list-signals  elenca i nomi dei segnali disponibili\n"
+"  -m,--mount         mostra tutti i processi che usano i filesystem o i\n"
+"                     dispositivi a blocchi specificati\n"
+"  -M,--ismountpoint  soddisfa la richiesta solo se NOME è un mount point\n"
+"  -n,--namespace CONTESTO  cerca nel contesto specificato (file, udp, o "
+"tcp)\n"
+"  -s,--silent        opera silenziosamente\n"
+"  -SEGNALE           invia il segnale indicato invece di SIGKILL\n"
+"  -u,--user          mostra gli ID utente\n"
+"  -v,--verbose       output prolisso\n"
+"  -V,--verion        mostra le informazioni sulla versione\n"
+
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
-"Uso: killall [-Z CONTESTO] [-u UTENTE] [ -eIgiqrvw ] [ -SEGNALE ] NOME...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Uso: killall [OPZIONE]... [--] NOME...\n"
+"  -4,--ipv4             cerca solo socket IPv4\n"
+"  -6,--ipv6             cerca solo socket IPv6\n"
 
-#: src/killall.c:517
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     reset options\n"
 "\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
-msgstr ""
-"     killall -l, --list\n"
-"     killall -V --version\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
-"  -e,--exact          richiede una corrispondenza esatta per i nomi molto "
-"lunghi\n"
-"  -I,--ignore-case    ignora maiuscole/minuscole nei nomi\n"
-"  -g,--process-group  termina il gruppo di processi invece del processo\n"
-"  -i,--interactive    chiede conferma prima di terminare\n"
-"  -l,--list           elenca i nomi di segnale conosciuti\n"
-"  -q,--quiet          opera silenziosamente\n"
-"  -r,--regexp         interpreta NOME come un'espressione regolare estesa\n"
-"  -s,--signal SEGNALE invia il segnale indicato invece di SIGTERM\n"
-"  -u,--user UTENTE    termina solo i processi eseguiti dall'UTENTE\n"
-"  -v,--verbose        riporta se il segnale è stato inviato con successo\n"
-"  -V,--version        mostra le informazioni sulla versione\n"
-"  -w,--wait           aspetta la terminazione del processo\n"
+msgstr ""
+"  -                     reimposta le opzioni\n"
 "\n"
+"  nomi udp/tcp: [porta locale][,[host remoto][,[porta remota]]]\n"
 
-#: src/killall.c:533
+#: src/fuser.c:160
 #, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context REGEXP termina solo i processi aventi context\n"
-"                      (deve precedere altri argomenti)\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/fuser.c:163
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2005 Werner Almesberger e Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger e Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
 msgid ""
 "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
@@ -152,214 +111,254 @@ msgstr ""
 "della GNU General Public License.\n"
 "Si consulti il file COPYING per ulteriori informazioni.\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Impossibile trovare l'utente %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Il massimo numero di nomi è %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s è vuoto (non montato?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Uso: fuser [ -a | -s | -c ] [ -n CONTESTO ] [ -SEGNALE ] [ -kimuv ] NOME...\n"
-"           [ - ] [ -n CONTESTO] [ -SEGNALE ] [ -kimuv ] NOME...\n"
-"     fuser -l\n"
-"     fuser -V\n"
-"Mostra quali processi stanno usando un certo file, socket o filesystem.\n"
-"\n"
-"    -a        mostra anche i file inutilizzati\n"
-"    -c        file system montati\n"
-"    -f        ignorata (per compatibilità POSIX)\n"
-"    -i        conferma prima di terminare (ignorato senza -k)\n"
-"    -k        termina tutti i processi che accedono al file specificato\n"
-"    -l        elenca i nomi dei segnali\n"
-"    -m        mostra tutti i processi che usano il filesystem specificato\n"
-"    -n CONTESTO  cerca nel contesto specificato (file, udp, o tcp)\n"
-"    -s        opera silenziosamente\n"
-"    -SEGNALE  invia il segnale indicato invece di SIGKILL\n"
-"    -u        mostra i nomi utente\n"
-"    -v        output prolisso\n"
-"    -V        mostra le informazioni sulla versione\n"
-"    -4        cerca solo socket IPv4\n"
-"    -6        cerca solo socket IPv6\n"
-"    -         riazzera le opzioni\n"
-"\n"
-"  nomi udp/tcp: [porta locale][,[host remoto][,[porta remota]]]\n"
-"\n"
-
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
-
-#: src/fuser.c:113
-#, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "Impossibile aprire la directory /proc: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "Impossibile allocare memoria per il processo corrispondente: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Impossibile fare stat del mount point %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Il file indicato %s non esiste.\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "Impossibile fare stat di %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "Impossibile risolvere la porta locale %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "Porta locale AF %d sconosciuta\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "Impossibile aprire il file di protocollo \"%s\": %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Opzione %s non valida\n"
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "L'opzione di contesto richiede un argomento."
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "Nome di contesto non valido"
 
 # NdT: dato che non so come tradurre "mounpoint option", uso -m
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
 msgstr "Con l'opzione -m si possono specificare solo file"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Nessun tipo di processo specificato"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Impossibile usare le opzioni -c e -m allo stesso tempo"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "L'opzione -a non può essere usata con l'opzione -s."
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr ""
 "Impossibile cercare solo socket IPv4 e solo socket IPv6 allo stesso tempo"
 
-# FIXME: COMANDO DI ACCESSO ?
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr "%*s UTENTE      PID ACCESSO COMANDO\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(sconosciuto)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "Impossibile fare stat del file %s: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "Impossibile aprire /proc/net/unix: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Impossibile aprire /etc/mtab: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
-msgstr "Terminare il processo %d? (y/N) "
+msgstr "Terminare il processo %d? (s/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "Impossibile terminare il processo %d: %s\n"
 
 # FIXME
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "Impossibile aprire un socket di rete.\n"
 
 # FIXME
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "Impossibile trovare il numero di dispositivo del socket.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Terminare %s(%s%d)? (s/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Segnale %s(%s%d)? (s/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Impossibile ottenere l'UID dallo stato del processo\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Espressione regolare non valida: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "ignorata corrispondenza parziale %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Terminato %s(%s%d) con segnale %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: nessun processo trovato\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Uso: killall [-Z CONTESTO] [-u UTENTE] [ -eIgiqrvw ] [ -SEGNALE ] NOME...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Uso: killall [OPZIONE]... [--] NOME...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"     killall -l, --list\n"
+"     killall -V, --version\n"
+"\n"
+"  -e,--exact          richiede una corrispondenza esatta per i nomi molto "
+"lunghi\n"
+"  -I,--ignore-case    ignora maiuscole/minuscole nei nomi\n"
+"  -g,--process-group  termina il gruppo di processi invece del processo\n"
+"  -y,--younger-than   termina i processi più recenti di ORARIO\n"
+"  -o,--older-than     termina i processi più vecchi di ORARIO\n"
+"  -i,--interactive    chiede conferma prima di terminare\n"
+"  -l,--list           elenca i nomi di segnale conosciuti\n"
+"  -q,--quiet          opera silenziosamente\n"
+"  -r,--regexp         interpreta NOME come un'espressione regolare estesa\n"
+"  -s,--signal SEGNALE invia il segnale indicato invece di SIGTERM\n"
+"  -u,--user UTENTE    termina solo i processi eseguiti dall'UTENTE\n"
+"  -v,--verbose        riporta se il segnale è stato inviato con successo\n"
+"  -V,--version        mostra le informazioni sulla versione\n"
+"  -w,--wait           aspetta la terminazione del processo\n"
+"\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP termina solo i processi aventi context\n"
+"                      (deve precedere altri argomenti)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger e Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Formato orario non valido"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Impossibile trovare l'utente %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Espressione regolare non valida: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Il massimo numero di nomi è %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s è vuoto (non montato?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr "Errore nel collegarsi al pid %i\n"
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "peekfd (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
@@ -369,7 +368,7 @@ msgstr ""
 "\n"
 
 # FIXME
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -392,92 +391,265 @@ msgstr ""
 "\n"
 "  Premere CTRL-C per terminare l'output.\n"
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Uso: prtstat [opzioni] PID ...\n"
+"     prtstat -V\n"
+"Stampa informazioni su un processo\n"
+"    -r,--raw       Mostra informazioni grezze\n"
+"    -V,--version   Mostra le informazioni sulla versione ed esce\n"
+
+#: src/prtstat.c:65
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "Errore interno: MAX_DEPTH non è abbastanza grande.\n"
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/pstree.c:750
+#: src/prtstat.c:66
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "in esecuzione"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "in attesa"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "in attesa del disco"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "tracciato"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "paging"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "sconosciuto"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Processo: %-14s\t\tStato: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+
+# FIXME
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"ID di processo, gruppo e sessione\n"
+"  ID Processo: %d\t\t  ID Parent: %d\n"
+"    ID Gruppo: %d\t\tID Sessione: %d\n"
+"  ID Gruppo T: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Errori di pagina (page faults)\n"
+"  Questo processo (minore maggiore): %8lu  %8lu\n"
+"  Processi figli  (minore maggiore): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Utilizzo temporale CPU\n"
+"  Questo processo (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Processi figli  (user system guest):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Memoria\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf in print_stat non riuscito.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Il processo con pid %d non esiste.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Impossibile aprire il file di stat per il pid %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Opzione non valida"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Occorre indicare almeno un PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc non è montato, impossibile fare stat di /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s è vuoto (non montato?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "Uso: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
 "            [ -A | -G | -U ] [ PID | UTENTE]\n"
 "     pstree -V\n"
 "Mostra l'albero dei processi.\n"
 "\n"
-"    -a        mostra gli argomenti della riga di comando\n"
-"    -A        usa caratteri grafici ASCII\n"
-"    -c        non comprime i sottoalberi identici\n"
-"    -h        evidenzia il processo corrente e i suoi antenati\n"
-"    -H PID    evidenzia il processo PID e i suoi antenati\n"
-"    -G        usa caratteri grafici VT100\n"
-"    -l        non tronca le righe lunghe\n"
-"    -n        ordina l'output in base al PID\n"
-"    -p        mostra i PID; implica -c\n"
-"    -u        mostra le transizioni di uid\n"
-"    -U        usa caratteri grafici UTF-8 (Unicode)\n"
-"    -V        mostra le informazioni sulla versione\n"
-
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -Z     mostra i contesti di sicurezza SELinux\n"
-
-#: src/pstree.c:771
+"  -a, --arguments      mostra gli argomenti della riga di comando\n"
+"  -A, --ascii          usa caratteri grafici ASCII\n"
+"  -c, --compact        non comprime i sottoalberi identici\n"
+"  -h, --highlight-all  evidenzia il processo corrente e i suoi antenati\n"
+"  -H PID,\n"
+"      --higlight-pid=PID  evidenzia il processo PID e i suoi antenati\n"
+"  -G, --vt100          usa caratteri grafici VT100\n"
+"  -l, --long           non tronca le righe lunghe\n"
+"  -n, --numeric-sort   ordina l'output in base al PID\n"
+"  -p, --show-pids      mostra i PID; implica -c\n"
+"  -u, --uid-changes    mostra le transizioni di uid\n"
+"  -U, --unicode        usa caratteri grafici UTF-8 (Unicode)\n"
+"  -V, --version        mostra le informazioni sulla versione\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     show         mostra i contesti di sicurezza SELinux\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 "    PID       comincia dal pid indicato, predefinito 1 (init)\n"
 "    UTENTE    mostra solo gli alberi con radice nei processi dell'utente\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger e Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM non è impostato\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Impossibile determinare le capacità del terminale\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Questo nome utente non esiste: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Nessun processo trovato.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Premere Invio per chiudere\n"
@@ -487,41 +659,28 @@ msgstr "Premere Invio per chiudere\n"
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: segnale sconosciuto; usare %s -l per elencare i segnali.\n"
 
-#~ msgid "Cannot open protocol file \"%s\": %s"
-#~ msgstr "Impossibile aprire il file di protocollo \"%s\": %s"
-
-#~ msgid "%s: SID (%s) must be numeric\n"
-#~ msgstr "%s: SID (%s) deve essere numerico\n"
-
-#~ msgid "-4 flag used but proc file %s is not readable\n"
-#~ msgstr "è stata usata l'opzione -4,  ma il file proc %s non è leggibile\n"
-
-#~ msgid "-6 flag used but proc file %s is not readable\n"
-#~ msgstr "è stata usata l'opzione -6,  ma il file proc %s non è leggibile\n"
-
-#~ msgid "kill %d"
-#~ msgstr "termina %d"
-
-#~ msgid "No automatic removal. Please use  umount %s\n"
-#~ msgstr "Impossible rimuovere automaticamente. Usare umount %s\n"
-
-#~ msgid "No automatic removal. Please use  swapoff %s\n"
-#~ msgstr "Impossible rimuovere automaticamente. Usare swapoff %s\n"
-
-#~ msgid "Internal error (type %d)\n"
-#~ msgstr "Errore interno (tipo %d)\n"
-
-#~ msgid "kernel mount  "
-#~ msgstr "mount del kernel"
-
-#~ msgid "kernel loop   "
-#~ msgstr "ciclo del kernel"
-
-#~ msgid "kernel swap   "
-#~ msgstr "file di swap del kernel"
-
-#~ msgid "ignoring -m in name space \"%s\"\n"
-#~ msgstr "ignorato -m nel contesto \"%s\"\n"
-
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: specificazione non valida\n"
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Uso: pidof [ -eg ] NOME...\n"
+#~ "     pidof -V\n"
+#~ "\n"
+#~ "    -e      richiede una corrispondenza esatta per i nomi molto lunghi;\n"
+#~ "            ignora se la riga di comando non è disponibile\n"
+#~ "    -g      mostra l'ID del gruppo invece che l'ID del processo\n"
+#~ "    -V      mostra le informazioni sulla versione\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger e Craig Small\n"
+#~ "\n"
index 207224a..1b4bdbe 100644 (file)
Binary files a/po/ja.gmo and b/po/ja.gmo differ
index 17b7c72..86de785 100644 (file)
--- a/po/ja.po
+++ b/po/ja.po
@@ -7,186 +7,38 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psmisc 22.2pre1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: 2006-03-20 10:31+0900\n"
 "Last-Translator: GOTO Masanori <gotom@debian.or.jp>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
+"Language: ja\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=EUC-JP\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) ¤òkill¤·¤Þ¤¹¤«? (y/N)"
-
-#: src/killall.c:77
+#: src/fuser.c:133
 #, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) ¤òkill¤·¤Þ¤¹¤«? (y/N)"
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "¥×¥í¥»¥¹¤Î¸½ºß¾õÂÖ¤«¤éUID¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "ÉÔÀµ¤ÊÀµµ¬É½¸½: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "Éôʬ°ìÃפò¥¹¥­¥Ã¥× %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) ¤ò¥·¥°¥Ê¥ë %d ¤Çkill¤·¤Þ¤·¤¿\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: ¤É¤Î¥×¥í¥»¥¹¤âkill¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿\n"
-
-#: src/killall.c:497
-#, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
-msgstr ""
-"»ÈÍÑË¡: pidof [ -eg ] ¥×¥í¥»¥¹Ì¾...\n"
-"        pidof -V\n"
-"\n"
-"    -e      ¤È¤Æ¤âŤ¤¥×¥í¥»¥¹Ì¾¤ËÂФ·¤Æ´°Á´°ìÃפòÍ׵᤹¤ë\n"
-"            ¥³¥Þ¥ó¥É¥é¥¤¥ó¤¬ÍøÍѤǤ­¤Ê¤¤¾ì¹ç¤Ï³ºÅö¥×¥í¥»¥¹¤Ï¥¹¥­¥Ã¥×¤µ¤ì¤ë\n"
-"    -g      ¥×¥í¥»¥¹ID¤ÎÂå¤ê¤Ë¥×¥í¥»¥¹¥°¥ë¡¼¥×ID¤òɽ¼¨¤¹¤ë\n"
-"    -V      ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤¹¤ë\n"
-"\n"
-
-#: src/killall.c:511
-#, c-format
-msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
-msgstr ""
-"»ÈÍÑË¡: killall [-Z CONTEXT] [-u ¥æ¡¼¥¶¡¼] [ -eIgiqrvw ] [ -¥·¥°¥Ê¥ë ] Ì¾"
-"Á°...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "»ÈÍÑË¡: killall [¥ª¥×¥·¥ç¥ó]... [--] Ì¾Á°...\n"
-
-#: src/killall.c:517
-#, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
-msgstr ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact            ¤È¤Æ¤âŤ¤Ì¾Á°¤ËÂФ·¤Æ´°Á´°ìÃפòÍ׵᤹¤ë\n"
-"  -I,--ignore-case      ¥×¥í¥»¥¹Ì¾¤Î°ìÃפÏÂçʸ»ú¤Î¾®Ê¸»ú¶èÊ̤ʤ¯¹Ô¤¦\n"
-"  -g,--process-group    ¥×¥í¥»¥¹¤ÎÂå¤ê¤Ë¥×¥í¥»¥¹¥°¥ë¡¼¥×¤Ë¥·¥°¥Ê¥ë¤òÁ÷¤ë\n"
-"  -i,--interactive      kill ¤¹¤ëÁ°¤Ë³Îǧ¤òµá¤á¤ë\n"
-"  -l,--list             ´ûÃΤΥ·¥°¥Ê¥ë̾¤ò¤¹¤Ù¤Æɽ¼¨¤¹¤ë\n"
-"  -q,--quiet            kill ¤¹¤ë¥×¥í¥»¥¹¤¬¤Ê¤¤¾ì¹ç¤Ëɽ¼¨¤ò¹Ô¤ï¤Ê¤¤\n"
-"  -r,--regexp           »ØÄꤷ¤¿Ì¾Á°¤ò³ÈÄ¥Àµµ¬É½¸½¤È¤·¤Æ²ò¼á¤¹¤ë\n"
-"  -s,--signal ¥·¥°¥Ê¥ë  SIGTERM¤ÎÂå¤ê¤Ë»ØÄꤷ¤¿¥·¥°¥Ê¥ë¤òÁ÷¤ë\n"
-"  -u,--user ¥æ¡¼¥¶      »ØÄꤷ¤¿¥æ¡¼¥¶¤ÇÁö¹Ô¤¹¤ë¥×¥í¥»¥¹¤Î¤ßkill¤¹¤ë\n"
-"  -v,--verbose          ¥·¥°¥Ê¥ë¤ÎÁ÷¿®¤ËÀ®¸ù¤·¤¿¤éÊó¹ð¤¹¤ë\n"
-"  -V,--version          ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤¹¤ë\n"
-"  -w,--wait             kill¤·¤¿¥×¥í¥»¥¹¤¬½ªÎ»¤¹¤ë¤Þ¤ÇÂÔ¤Ä\n"
-
-#: src/killall.c:533
-#, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context Àµµ¬É½¸½ ¥³¥ó¥Æ¥­¥¹¥È¤ò»ý¤Ä¥×¥í¥»¥¹¤Î¤ßkill¤¹¤ë\n"
-"                        (¾¤Î°ú¿ô¤è¤ê¤âÁ°¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤)\n"
-
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
-#, c-format
-msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
-"\n"
-msgstr ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
-"\n"
-
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"PSmisc¤Ï´°Á´¤Ë̵ÊݾڤǤ¹\n"
-"¤³¤ì¤Ï¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ç¤¹¡£GNU°ìÈ̸ø½°ÍøÍѵöÂú·ÀÌó½ñ¤Î¾ò¹à¤Ë´ð¤Å¤¤¤Æ\n"
-"ºÆÇÛÉÛ¤ò¼«Í³¤Ë¹Ô¤Ã¤Æ¤«¤Þ¤¤¤Þ¤»¤ó¡£\n"
-"¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¤è¤ê¾ÜºÙ¤Ê¾ðÊó¤ÏCOPYING¥Õ¥¡¥¤¥ë¤ò¤´Í÷²¼¤µ¤¤¡£\n"
-
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "¥æ¡¼¥¶ %s ¤òȯ¸«¤Ç¤­¤Þ¤»¤ó\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "̾Á°¤ÎºÇÂç»ØÄê²Äǽ¿ô¤Ï %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s ¤Ï¶õ¥Ç¥£¥ì¥¯¥È¥ê (¥Þ¥¦¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤¤?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
 "       fuser -l\n"
 "       fuser -V\n"
 "Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
 "»ÈÍÑË¡: fuser [ -a | -s | -c ] [ -n SPACE ] [ -¥·¥°¥Ê¥ë ] [ -kimuv ] Ì¾"
 "Á°...\n"
@@ -218,155 +70,302 @@ msgstr ""
 "  udp/tcp Ì¾Á°: [¥í¡¼¥«¥ë¥Ý¡¼¥È][,[¥ê¥â¡¼¥È¥Û¥¹¥È][,[¥ê¥â¡¼¥È¥Ý¡¼¥È]]]\n"
 "\n"
 
-#: src/fuser.c:109
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
 
-#: src/fuser.c:113
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"    -         reset options\n"
+"  -                     reset options\n"
 "\n"
 "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
 msgstr ""
 
-#: src/fuser.c:120
+#: src/fuser.c:160
 #, c-format
 msgid "fuser (PSmisc) %s\n"
 msgstr "fuser (PSmisc) %s\n"
 
-#: src/fuser.c:147
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc¤Ï´°Á´¤Ë̵ÊݾڤǤ¹\n"
+"¤³¤ì¤Ï¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ç¤¹¡£GNU°ìÈ̸ø½°ÍøÍѵöÂú·ÀÌó½ñ¤Î¾ò¹à¤Ë´ð¤Å¤¤¤Æ\n"
+"ºÆÇÛÉÛ¤ò¼«Í³¤Ë¹Ô¤Ã¤Æ¤«¤Þ¤¤¤Þ¤»¤ó¡£\n"
+"¤³¤ì¤é¤Ë¤Ä¤¤¤Æ¤è¤ê¾ÜºÙ¤Ê¾ðÊó¤ÏCOPYING¥Õ¥¡¥¤¥ë¤ò¤´Í÷²¼¤µ¤¤¡£\n"
+
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "/proc ¥Ç¥£¥ì¥¯¥È¥ê¤ò³«¤±¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "°ìÃפ·¤¿¥×¥í¥»¥¹¤ËÂФ¹¤ë¥á¥â¥ê¤¬³ÍÆÀ¤Ç¤­¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "¥Þ¥¦¥ó¥È¥Ý¥¤¥ó¥È %s ¤òstat¤Ç¤­¤Þ¤»¤ó: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "%s ¤òstat¤Ç¤­¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "¥í¡¼¥«¥ë¥Ý¡¼¥È %s ¤ò²ò·è¤Ç¤­¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "̤ÃÎ¤Î¥í¡¼¥«¥ë¥Ý¡¼¥È AF %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "¥×¥í¥È¥³¥ë¥Õ¥¡¥¤¥ë \"%s\" ¤¬³«¤±¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "̾Á°¶õ´Ö¥ª¥×¥·¥ç¥ó¤Ï°ú¿ô¤¬É¬ÍפǤ¹"
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "ÉÔÀµ¤Ê̾Á°¶õ´Ö̾"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/fuser.c:1102
+#, fuzzy
+msgid "You can only use files with mountpoint options"
 msgstr ""
 "¥Þ¥¦¥ó¥È¥Ý¥¤¥ó¥È¥ª¥×¥·¥ç¥ó(-m¤Þ¤¿¤Ï-c)¤È°ì½ï¤Ë»È¤¨¤ë¤Î¤Ïfile̾Á°¶õ´Ö¤Î¤ß¤Ç¤¹"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "°ú¿ô¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤Þ¤»¤ó"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "-m¥ª¥×¥·¥ç¥ó¤È-c¥ª¥×¥·¥ç¥ó¤ÏƱ»þ¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "-a¥ª¥×¥·¥ç¥ó¤Ï-s¥ª¥×¥·¥ç¥ó¤È°ì½ï¤Ë¤Ï»ÈÍѤǤ­¤Þ¤»¤ó"
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "-4¥ª¥×¥·¥ç¥ó¤È-6¥ª¥×¥·¥ç¥ó¤ÏƱ»þ¤Ë»ØÄê¤Ç¤­¤Þ¤»¤ó"
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, fuzzy, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr ""
 "\n"
 "%*s ¥æ¡¼¥¶     PID ¥¢¥¯¥»¥¹ ¥³¥Þ¥ó¥É\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(ÉÔÌÀ)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "¥Õ¥¡¥¤¥ë¤òstat¤Ç¤­¤Þ¤»¤ó %s: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "/proc/net/unix ¤¬³«¤±¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "/etc/mtab ¤¬³«¤±¤Þ¤»¤ó: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "¥×¥í¥»¥¹ %d ¤òkill¤·¤Þ¤¹¤«? (y/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "¥×¥í¥»¥¹ %d ¤ò kill ¤Ç¤­¤Þ¤»¤ó: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "¥Í¥Ã¥È¥ï¡¼¥¯¥½¥±¥Ã¥È¤¬³«¤±¤Þ¤»¤ó.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "¥½¥±¥Ã¥È¤Î¥Ç¥Ð¥¤¥¹Èֹ椬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "%s(%s%d) ¤òkill¤·¤Þ¤¹¤«? (y/N)"
+
+#: src/killall.c:103
+#, fuzzy, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "%s(%s%d) ¤òkill¤·¤Þ¤¹¤«? (y/N)"
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "¥×¥í¥»¥¹¤Î¸½ºß¾õÂÖ¤«¤éUID¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "ÉÔÀµ¤ÊÀµµ¬É½¸½: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "Éôʬ°ìÃפò¥¹¥­¥Ã¥× %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) ¤ò¥·¥°¥Ê¥ë %d ¤Çkill¤·¤Þ¤·¤¿\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: ¤É¤Î¥×¥í¥»¥¹¤âkill¤µ¤ì¤Þ¤»¤ó¤Ç¤·¤¿\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"»ÈÍÑË¡: killall [-Z CONTEXT] [-u ¥æ¡¼¥¶¡¼] [ -eIgiqrvw ] [ -¥·¥°¥Ê¥ë ] Ì¾"
+"Á°...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "»ÈÍÑË¡: killall [¥ª¥×¥·¥ç¥ó]... [--] Ì¾Á°...\n"
+
+#: src/killall.c:621
+#, fuzzy, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact            ¤È¤Æ¤âŤ¤Ì¾Á°¤ËÂФ·¤Æ´°Á´°ìÃפòÍ׵᤹¤ë\n"
+"  -I,--ignore-case      ¥×¥í¥»¥¹Ì¾¤Î°ìÃפÏÂçʸ»ú¤Î¾®Ê¸»ú¶èÊ̤ʤ¯¹Ô¤¦\n"
+"  -g,--process-group    ¥×¥í¥»¥¹¤ÎÂå¤ê¤Ë¥×¥í¥»¥¹¥°¥ë¡¼¥×¤Ë¥·¥°¥Ê¥ë¤òÁ÷¤ë\n"
+"  -i,--interactive      kill ¤¹¤ëÁ°¤Ë³Îǧ¤òµá¤á¤ë\n"
+"  -l,--list             ´ûÃΤΥ·¥°¥Ê¥ë̾¤ò¤¹¤Ù¤Æɽ¼¨¤¹¤ë\n"
+"  -q,--quiet            kill ¤¹¤ë¥×¥í¥»¥¹¤¬¤Ê¤¤¾ì¹ç¤Ëɽ¼¨¤ò¹Ô¤ï¤Ê¤¤\n"
+"  -r,--regexp           »ØÄꤷ¤¿Ì¾Á°¤ò³ÈÄ¥Àµµ¬É½¸½¤È¤·¤Æ²ò¼á¤¹¤ë\n"
+"  -s,--signal ¥·¥°¥Ê¥ë  SIGTERM¤ÎÂå¤ê¤Ë»ØÄꤷ¤¿¥·¥°¥Ê¥ë¤òÁ÷¤ë\n"
+"  -u,--user ¥æ¡¼¥¶      »ØÄꤷ¤¿¥æ¡¼¥¶¤ÇÁö¹Ô¤¹¤ë¥×¥í¥»¥¹¤Î¤ßkill¤¹¤ë\n"
+"  -v,--verbose          ¥·¥°¥Ê¥ë¤ÎÁ÷¿®¤ËÀ®¸ù¤·¤¿¤éÊó¹ð¤¹¤ë\n"
+"  -V,--version          ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤¹¤ë\n"
+"  -w,--wait             kill¤·¤¿¥×¥í¥»¥¹¤¬½ªÎ»¤¹¤ë¤Þ¤ÇÂÔ¤Ä\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context Àµµ¬É½¸½ ¥³¥ó¥Æ¥­¥¹¥È¤ò»ý¤Ä¥×¥í¥»¥¹¤Î¤ßkill¤¹¤ë\n"
+"                        (¾¤Î°ú¿ô¤è¤ê¤âÁ°¤Ë»ØÄꤵ¤ì¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "¥æ¡¼¥¶ %s ¤òȯ¸«¤Ç¤­¤Þ¤»¤ó\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "ÉÔÀµ¤ÊÀµµ¬É½¸½: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "̾Á°¤ÎºÇÂç»ØÄê²Äǽ¿ô¤Ï %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s ¤Ï¶õ¥Ç¥£¥ì¥¯¥È¥ê (¥Þ¥¦¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤¤?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, fuzzy, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -380,31 +379,167 @@ msgid ""
 "  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+#, fuzzy
+msgid "unknown"
+msgstr "(ÉÔÌÀ)"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "ÆâÉô¥¨¥é¡¼: MAX_DEPTH ¤¬½½Ê¬Â礭¤¯¤¢¤ê¤Þ¤»¤ó.\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
 
-#: src/pstree.c:750
+#: src/prtstat.c:180
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s ¤Ï¶õ¥Ç¥£¥ì¥¯¥È¥ê (¥Þ¥¦¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤¤?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "»ÈÍÑË¡: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
 "              [ -A | -G | -U ] [ PID | ¥æ¡¼¥¶Ì¾ ]\n"
@@ -424,48 +559,57 @@ msgstr ""
 "    -U     UTF-8 (Unicode) Ê¸»ú¤ò·ÓÀþɽ¼¨¤Ë»ÈÍÑ\n"
 "    -V     ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨\n"
 
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
+#: src/pstree.c:850
+#, fuzzy, c-format
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr "    -Z     SELinux¥»¥­¥å¥ê¥Æ¥£¥³¥ó¥Æ¥­¥¹¥È¤òɽ¼¨¤¹¤ë\n"
 
-#: src/pstree.c:771
-#, c-format
+#: src/pstree.c:852
+#, fuzzy, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 "    PID      »ØÄꤷ¤¿PID¤«¤éɽ¼¨³«»Ï¤·¤Þ¤¹; ¥Ç¥Õ¥©¥ë¥È¤Ï 1 (init)\n"
 "    ¥æ¡¼¥¶Ì¾ »ØÄꤷ¤¿¥æ¡¼¥¶¤È¤·¤ÆÆ°ºî¤¹¤ë¥×¥í¥»¥¹¤«¤éÇÉÀ¸¤¹¤ë¥Ä¥ê¡¼¤Î¤ßɽ¼¨\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "üËö¤Îµ¡Ç½¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "»ØÄê¥æ¡¼¥¶Ì¾¤Ï¸ºß¤·¤Þ¤»¤ó: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "¥×¥í¥»¥¹¤Ï¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤¹¤ÈÊĤ¸¤Þ¤¹\n"
@@ -475,5 +619,37 @@ msgstr "
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: Ì¤ÃΤΥ·¥°¥Ê¥ë; %s -l ¤Ë¤è¤Ã¤Æ¥·¥°¥Ê¥ë¤ò°ìÍ÷ɽ¼¨¤·¤Þ¤¹\n"
 
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "»ÈÍÑË¡: pidof [ -eg ] ¥×¥í¥»¥¹Ì¾...\n"
+#~ "        pidof -V\n"
+#~ "\n"
+#~ "    -e      ¤È¤Æ¤âŤ¤¥×¥í¥»¥¹Ì¾¤ËÂФ·¤Æ´°Á´°ìÃפòÍ׵᤹¤ë\n"
+#~ "            ¥³¥Þ¥ó¥É¥é¥¤¥ó¤¬ÍøÍѤǤ­¤Ê¤¤¾ì¹ç¤Ï³ºÅö¥×¥í¥»¥¹¤Ï¥¹¥­¥Ã¥×¤µ¤ì"
+#~ "¤ë\n"
+#~ "    -g      ¥×¥í¥»¥¹ID¤ÎÂå¤ê¤Ë¥×¥í¥»¥¹¥°¥ë¡¼¥×ID¤òɽ¼¨¤¹¤ë\n"
+#~ "    -V      ¥Ð¡¼¥¸¥ç¥ó¾ðÊó¤òɽ¼¨¤¹¤ë\n"
+#~ "\n"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "¥Þ¥¦¥ó¥È¥Ý¥¤¥ó¥È %s ¤òstat¤Ç¤­¤Þ¤»¤ó: %s\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "-m¥ª¥×¥·¥ç¥ó¤È-c¥ª¥×¥·¥ç¥ó¤ÏƱ»þ¤Ë¤Ï»È¤¨¤Þ¤»¤ó"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "/etc/mtab ¤¬³«¤±¤Þ¤»¤ó: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "ÆâÉô¥¨¥é¡¼: MAX_DEPTH ¤¬½½Ê¬Â礭¤¯¤¢¤ê¤Þ¤»¤ó.\n"
+
 #~ msgid "Cannot open protocol file \"%s\": %s"
 #~ msgstr "¥×¥í¥È¥³¥ë¥Õ¥¡¥¤¥ë \"%s\" ¤¬³«¤±¤Þ¤»¤ó: %s"
index bccbb21..6293d6a 100644 (file)
Binary files a/po/nb.gmo and b/po/nb.gmo differ
index 78b2004..4e8da95 100644 (file)
--- a/po/nb.po
+++ b/po/nb.po
@@ -22,185 +22,38 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psmisc 22.2pre1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: 2006-03-07 12:01+0100\n"
 "Last-Translator: Trond Endrestøl <Trond.Endrestol@fagskolen.gjovik.no>\n"
 "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Drepe %s(%s%d) ? (j/n) "
-
-#: src/killall.c:77
+#: src/fuser.c:133
 #, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Drepe %s(%s%d) ? (j/n) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Kan ikke finne UID fra prosesstatus\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Ugyldig regulært uttrykk: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "hopper over delvis treff %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Drepte %s(%s%d) med signalet %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: drepte ingen prosess\n"
-
-#: src/killall.c:497
-#, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
-msgstr ""
-"Bruksmåte: pidof [ -eg ] navn ...\n"
-"           pidof -V\n"
-"\n"
-"    -e      krever nøyaktig treff for veldig lange navn;\n"
-"            hopp over dersom kommandolinjen er utilgjengelig\n"
-"    -g      vis prosessgruppe ID i stedet for prosess ID\n"
-"    -V      vis programversjon\n"
-"\n"
-
-#: src/killall.c:511
-#, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
-msgstr ""
-"Bruksmåte: killall [-Z kontekst] [-u bruker] [ -egiqvw ] [ -signal ] "
-"navn ...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Bruksmåte: killall [VALG]... [--] navn...\n"
-
-#: src/killall.c:517
-#, c-format
-msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
-msgstr ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact          krever nøyaktig treff for veldig lange navn\n"
-"  -I,--ignore-case    ignorerer store/små bokstaver i prosessnavn\n"
-"  -g,--process-group  drep prosessgrupper i stedet for prosesser\n"
-"  -i,--interactive    spør om bekreftelse før dreping\n"
-"  -l,--list           vis alle kjente signalnavn\n"
-"  -q,--quiet          ikke syt dersom det ikke går bra\n"
-"  -r,--regexp         tolk NAVN som et utvidet regulært uttrykk\n"
-"  -s,--signal         send signal i stedet for SIGTERM\n"
-"  -v,--verbose        rapporter dersom signalet ble vellykket sendt\n"
-"  -V,--version        vis programinformasjon\n"
-"  -w,--wait           vent til prosessen er død\n"
-
-#: src/killall.c:533
-#, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context REGEXP bare drep prosesser med kontekst\n"
-"                      (må komme foran andre argumenter)\n"
-
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
-#, c-format
-msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
-"\n"
-msgstr ""
-"Copyright (C) 1993-2005 Werner Almesberger og Craig Small\n"
-"\n"
-
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"PSmisc kommer ABSOLUTT UTEN NOEN GARANTI.\n"
-"Dette er fri programvare, og du har tillatelse til å redistribuere det\n"
-"under betingelsene i GNU General Public License.\n"
-"For mer informasjon om dette, les filene som heter COPYING.\n"
-
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Kan ikke finne brukeren %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Maksimalt antall navn er %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s er tom (ikke montert?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
 "       fuser -l\n"
 "       fuser -V\n"
 "Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
 "Bruksmåte: fuser [ -a | -s | -c ] [ -n ROM ] [ -SIGNALl ] [ -kimuv ] "
 "NAVN ...\n"
@@ -232,156 +85,302 @@ msgstr ""
 "  udp/tcp-navn: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
 
-#: src/fuser.c:109
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
 
-#: src/fuser.c:113
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"    -         reset options\n"
+"  -                     reset options\n"
 "\n"
 "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
 msgstr ""
 
-#: src/fuser.c:120
+#: src/fuser.c:160
 #, c-format
 msgid "fuser (PSmisc) %s\n"
 msgstr "fuser (PSmisc) %s\n"
 
-#: src/fuser.c:147
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc kommer ABSOLUTT UTEN NOEN GARANTI.\n"
+"Dette er fri programvare, og du har tillatelse til å redistribuere det\n"
+"under betingelsene i GNU General Public License.\n"
+"For mer informasjon om dette, les filene som heter COPYING.\n"
+
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "Kan ikke åpne /proc-katalogen: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "Kan ikke allokere minne for funnet prosess: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Kan ikke kjøre stat på monteringspunktet %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "Kan ikke kjøre stat på %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "Kan ikke løse lokalport %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "Ukjent lokalport AF %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "Kan ikke åpne protokollfil «%s»: %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "Navneromvalget krever et argument."
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "Ugyldig navn på navnerom"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/fuser.c:1102
+#, fuzzy
+msgid "You can only use files with mountpoint options"
 msgstr "Du kan bare bruke filer med monteringspunktvalget"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Ingen prosesspesifikasjon ble gitt"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Du kan ikke bruke montert- og monteringspunktvalgene samtidig"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "alle valg kan ikke bli brukt med stillevalget."
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "Du kan ikke søke etter bare IPv4- og bare IPv6-socketer samtidig"
 
 # Oversettelsen av denne strengen er noe vanskelig da dette er en
 # tabelloverskrift som skal passe med selve tabellen. [TE, 2005-03-01]
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, fuzzy, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr ""
 "\n"
 "%*s BRUKER      PID ACCESS KOMMANDO\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(ukjent)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "Kan ikke kjøre stat på fila %s: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "Kan ikke åpne /proc/net/unix: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Kan ikke åpne /etc/mtab: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "Drepe prosess %d ? (j/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "Kunne ikke drepe prosessen %d: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "Kan ikke åpne en nettverkssocket.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "Kan ikke finne socketens enhetsnummer.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Drepe %s(%s%d) ? (j/n) "
+
+#: src/killall.c:103
+#, fuzzy, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Drepe %s(%s%d) ? (j/n) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Kan ikke finne UID fra prosesstatus\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Ugyldig regulært uttrykk: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "hopper over delvis treff %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Drepte %s(%s%d) med signalet %d\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: drepte ingen prosess\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Bruksmåte: killall [-Z kontekst] [-u bruker] [ -egiqvw ] [ -signal ] "
+"navn ...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Bruksmåte: killall [VALG]... [--] navn...\n"
+
+#: src/killall.c:621
+#, fuzzy, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          krever nøyaktig treff for veldig lange navn\n"
+"  -I,--ignore-case    ignorerer store/små bokstaver i prosessnavn\n"
+"  -g,--process-group  drep prosessgrupper i stedet for prosesser\n"
+"  -i,--interactive    spør om bekreftelse før dreping\n"
+"  -l,--list           vis alle kjente signalnavn\n"
+"  -q,--quiet          ikke syt dersom det ikke går bra\n"
+"  -r,--regexp         tolk NAVN som et utvidet regulært uttrykk\n"
+"  -s,--signal         send signal i stedet for SIGTERM\n"
+"  -v,--verbose        rapporter dersom signalet ble vellykket sendt\n"
+"  -V,--version        vis programinformasjon\n"
+"  -w,--wait           vent til prosessen er død\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP bare drep prosesser med kontekst\n"
+"                      (må komme foran andre argumenter)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Kan ikke finne brukeren %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Ugyldig regulært uttrykk: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Maksimalt antall navn er %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s er tom (ikke montert?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, fuzzy, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "pstree (psmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -395,31 +394,167 @@ msgid ""
 "  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "Intern feil: MAX_DEPTH er ikke stor nok.\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
 
-#: src/pstree.c:750
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (psmisc) %s\n"
+
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+#, fuzzy
+msgid "unknown"
+msgstr "(ukjent)"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
+
+#: src/prtstat.c:317
 #, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s er tom (ikke montert?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "Bruksmåte: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
 "                  [ -A | -G | -U ] [ PID | BRUKER ]\n"
@@ -440,47 +575,56 @@ msgstr ""
 "    -U     tegn linjer med UTF-8-tegn (Unicode)\n"
 "    -V     vis programversjon\n"
 
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
+#: src/pstree.c:850
+#, fuzzy, c-format
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr "    -Z     vis SELinux sikkerhetskontekster\n"
 
-#: src/pstree.c:771
-#, c-format
+#: src/pstree.c:852
+#, fuzzy, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 "    PID    begynn med angitt pid, standard er 1 (init)\n"
 "    BRUKER bare vis trær med opphav fra prosesser tilhørende denne brukeren\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (psmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2005 Werner Almesberger og Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM er ikke angitt\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Kan ikke finne ut egenskapene til terminalen\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Fant ikke brukeren «%s».\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Fant ingen prosesser.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Trykk på enter for å lukke.\n"
@@ -489,3 +633,34 @@ msgstr "Trykk p
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: ukjent signal; %s -l angir kjente signaler.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Bruksmåte: pidof [ -eg ] navn ...\n"
+#~ "           pidof -V\n"
+#~ "\n"
+#~ "    -e      krever nøyaktig treff for veldig lange navn;\n"
+#~ "            hopp over dersom kommandolinjen er utilgjengelig\n"
+#~ "    -g      vis prosessgruppe ID i stedet for prosess ID\n"
+#~ "    -V      vis programversjon\n"
+#~ "\n"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Kan ikke kjøre stat på monteringspunktet %s: %s\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "Du kan ikke bruke montert- og monteringspunktvalgene samtidig"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Kan ikke åpne /etc/mtab: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "Intern feil: MAX_DEPTH er ikke stor nok.\n"
index a621012..d20c504 100644 (file)
Binary files a/po/nl.gmo and b/po/nl.gmo differ
index 1e19e21..3d82100 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
-# Translation of psmisc-22.5 to Dutch.
-# Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+# Dutch translations for psmisc.
+# Copyright (C) 2012 Free Software Foundation, Inc.
 # This file is distributed under the same license as the PSmisc package.
-# Benno Schulenberg <benno@vertaalt.nl>, 2004, 2005, 2006, 2007.
 #
+# «Gehen wir mal kurz rein», sagte die Mama.
+# «Aber da steht 'Baden verboten'», sagte das Töchterchen.
+# Das wäre nicht so wichtig, meinte die Mama.
+# «Und was wenn da eine Geheimkamera ist?», fragte das Söhnchen.
+#
+# Benno Schulenberg <benno@vertaalt.nl>, 2004, 2005, 2006, 2007, 2010, 2012.
+# Erwin Poeze <erwin.poeze@gmail.com>, 2010.
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.5\n"
+"Project-Id-Version: psmisc-22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2007-05-31 14:03+0200\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-01 19:27+0200\n"
 "Last-Translator: Benno Schulenberg <benno@vertaalt.nl>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
+"Language: nl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Proces %s(%s%d) afbreken? (j/N) "
-
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Proces %s(%s%d) afbreken? (j/N) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Kan uit processtatus geen UID bepalen\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Ongeldige reguliere expressie: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "overgeslagen: gedeeltelijke overeenkomst %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Proces %s(%s%d) is afgebroken met signaal %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: er is geen proces afgebroken\n"
+"X-Generator: Lokalize 1.0\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: src/killall.c:497
+#: src/fuser.c:133
 #, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
-"Gebruik:  pidof [-eg] NAAM...\n"
-"          pidof -V\n"
+"Gebruik:  fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n NAAMSRUIMTE]\n"
+"                    [-k [-i] [-SIGNAAL]] NAAM...\n"
+"     of:  fuser [-l|-V]\n"
 "\n"
-"    -e    zeer lange namen moeten exact overeenkomen\n"
-"          (genegeerd als de opdrachtregel niet beschikbaar is)\n"
-"    -g    procesgroeps-ID tonen in plaats van proces-ID\n"
-"    -V    de programmaversie tonen\n"
+"De processen tonen die gebruik maken van de genoemde bestanden,\n"
+"sockets of bestandssystemen\n"
 "\n"
-
-#: src/killall.c:511
+"  -a, --all               de ongebruikte bestanden ook noemen\n"
+"  -i, --interactive       bevestiging vragen voor afbreken (genegeerd zonder "
+"-k)\n"
+"  -k, --kill              processen afbreken die het gegeven bestand "
+"gebruiken\n"
+"  -l, --list-signals      lijst van beschikbare signalen tonen\n"
+"  -m, --mount             alle processen tonen die het gegeven "
+"bestandssysteem\n"
+"                            of blokapparaat gebruiken\n"
+"  -M, --ismountpoint      alleen aan verzoek voldoen als NAAM aankoppelpunt "
+"is\n"
+"  -n, --namespace RUIMTE  in gegeven naamsruimte ('file', 'udp', 'tcp') "
+"zoeken\n"
+"  -s, --silent            geen uitvoer produceren\n"
+"  -SIGNAAL                dit signaal sturen in plaats van SIGKILL\n"
+"  -u, --user              de gebruiker-IDs tonen\n"
+"  -v, --verbose           uitgebreide uitvoer tonen\n"
+"  -V, --version           de programmaversie tonen\n"
+"  -w,--writeonly          alleen processen met schrijfrecht afbreken\n"
+
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
-"Gebruik:  killall [-Z CONTEXT] [-egIiqrvw] [-SIGNAAL] [-u GEBRUIKER] "
-"NAAM...\n"
+"  -4,--ipv4               alleen naar IPv4-sockets zoeken\n"
+"  -6,--ipv6               alleen naar IPv6-sockets zoeken\n"
 
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Gebruik:  killall [-egIiqrvw] [-SIGNAAL] [-u GEBRUIKER] [--] NAAM...\n"
-
-#: src/killall.c:517
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
 msgstr ""
-"          killall -l, --list\n"
-"          killall -V, --version\n"
+"  -                       alle opties terugzetten op standaardwaarden\n"
 "\n"
-"  -e,--exact           zeer lange namen moeten exact overeenkomen\n"
-"  -g,--process-group   een procesgroep afbreken in plaats van een proces\n"
-"  -I,--ignore-case     verschil tussen hoofd- en kleine letters negeren\n"
-"  -i,--interactive     om bevestiging vragen alvorens af te breken\n"
-"  -l,--list            lijst van bekende signalen tonen\n"
-"  -q,--quiet           geen foutmeldingen geven\n"
-"  -r,--regexp          NAAM is een uitgebreide reguliere expressie\n"
-"  -s,--signal SIGNAAL  dit signaal sturen in plaats van SIGTERM\n"
-"  -u,--user GEBRUIKER  alleen proces(sen) van deze gebruiker afbreken\n"
-"  -V,--version         de programmaversie tonen\n"
-"  -v,--verbose         melden of het signaal succesvol verstuurd is\n"
-"  -w,--wait            wachten tot processen ook werkelijk afgebroken zijn\n"
+"  tcp/udp-namen: [lokale_poort][,[gindse_host][,[gindse_poort]]]\n"
 "\n"
 
-#: src/killall.c:533
+#: src/fuser.c:160
 #, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context REGEXP alleen processen met deze context afbreken\n"
-"                      (dient aan andere argumenten vooraf te gaan)\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/fuser.c:163
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger en Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
 msgid ""
 "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
@@ -152,212 +125,249 @@ msgstr ""
 "onder de voorwaarden van de GNU General Public License.\n"
 "Zie voor meer informatie hierover het bestand genaamd COPYING.\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Kan gebruiker %s niet vinden\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Het maximum aantal namen is %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s is leeg -- niet aangekoppeld?\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Gebruik:  fuser [-a|-c|-s] [-n RUIMTE] [-SIGNAAL] [-ikmuv] NAAM...\n"
-"                [-] [-n RUIMTE] [-SIGNAAL] [-ikmuv] NAAM...\n"
-"          fuser -l\n"
-"          fuser -V\n"
-"\n"
-"De processen tonen die gebruik maken van de genoemde bestanden,\n"
-"sockets of bestandssystemen\n"
-"\n"
-"    -a         de ongebruikte bestanden ook noemen\n"
-"    -c         (hetzelfde als -m)\n"
-"    -f         (genegeerd, maar herkend voor POSIX-compatibiliteit)\n"
-"    -i         om bevestiging vragen (genegeerd zonder -k)\n"
-"    -k         processen afbreken die het gegeven bestand gebruiken\n"
-"    -l         lijst van beschikbare signalen tonen\n"
-"    -m         processen tonen die het gegeven bestandssysteem gebruiken\n"
-"    -n RUIMTE  in de gegeven naamsruimte ('file', 'udp', of 'tcp') zoeken\n"
-"    -s         geen uitvoer produceren\n"
-"    -u         de gebruiker-IDs tonen\n"
-"    -V         de programmaversie tonen\n"
-"    -v         breedsprakige uitvoer produceren\n"
-"    -SIGNAAL   dit signaal sturen in plaats van KILL (zie -l voor een "
-"lijst)\n"
-"    -4         alleen naar IPv4-sockets zoeken\n"
-"    -6         alleen naar IPv6-sockets zoeken\n"
-"    -          alle opties herinitialiseren\n"
-"\n"
-"  tcp/udp-namen: [lokale_poort][,[gindse_host][,[gindse_poort]]]\n"
-"\n"
-
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
-
-#: src/fuser.c:113
-#, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "Kan /proc niet openen: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr "Onvoldoende geheugen om gevonden proces te verwerken: %s\n"
+msgstr "Onvoldoende geheugen beschikbaar om gevonden proces te verwerken: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Kan status van aankoppelingspunt %s niet bepalen: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Opgegeven bestandsnaam %s bestaat niet.\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "Kan status van %s niet bepalen: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "Kan lokale poort %s nergens toe herleiden: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "Onbekende lokale poort AF %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "Kan protocolbestand '%s' niet openen: %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: ongeldige optie %s\n"
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
-msgstr "De naamsruimte-optie -n vereist een argument"
+msgstr "De naamsruimte-optie '-n' vereist een argument"
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "Ongeldige naamsruimte"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr "Bij opties -c of -m mogen alleen bestandsnamen gegeven worden"
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Er zijn alleen bestanden toegestaan samen met aankoppelpuntopties"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Geen naam van bestand of socket opgegeven"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Opties -c en -m mogen niet allebei gebruikt worden"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "Opties -a en -s gaan niet samen"
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "Opties -4 en -6 gaan niet samen"
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr "%*s GEBRUIKER   PID SOORT PROGRAMMA\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(onbekend)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "Kan status van bestand %s niet bepalen: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "Kan /proc/net/unix niet openen: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Kan /etc/mtab niet openen: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "Proces %d afbreken? (j/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "Kan proces %d niet afbreken: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "Kan netwerk-socket niet openen.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "Kan apparaatnummer van socket niet vinden.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Proces %s(%s%d) afbreken? (j/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Proces %s(%s%d) een signaal sturen? (j/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Kan uit processtatus geen UID bepalen\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Ongeldige reguliere expressie: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: Overgeslagen: gedeeltelijke overeenkomst %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Proces %s(%s%d) is afgebroken met signaal %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: geen proces gevonden\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Gebruik:  killall [-Z CONTEXT] [-egIiqrvw] [-SIGNAAL] [-u GEBRUIKER] "
+"NAAM...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Gebruik:  killall [-egIiqrvw] [-SIGNAAL] [-u GEBRUIKER] [--] NAAM...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"     of:  killall [ -l | --list ]\n"
+"     of:  killall [ -V | --version ]\n"
+"\n"
+"  -e,--exact           zeer lange namen moeten exact overeenkomen\n"
+"  -I,--ignore-case     verschil tussen hoofd- en kleine letters negeren\n"
+"  -g,--process-group   een procesgroep afbreken in plaats van een proces\n"
+"  -y,--younger-than    processen nieuwer dan TIJD afbreken\n"
+"  -o,--older-than      processen ouder dan TIJD afbreken\n"
+"  -i,--interactive     om bevestiging vragen alvorens af te breken\n"
+"  -l,--list            lijst van bekende signalen tonen\n"
+"  -q,--quiet           geen foutmeldingen geven\n"
+"  -r,--regexp          NAAM is een uitgebreide reguliere expressie\n"
+"  -s,--signal SIGNAAL  dit signaal sturen in plaats van SIGTERM\n"
+"  -u,--user GEBRUIKER  alleen proces(sen) van deze gebruiker afbreken\n"
+"  -V,--version         de programmaversie tonen\n"
+"  -v,--verbose         melden of het signaal succesvol verstuurd is\n"
+"  -w,--wait            wachten tot processen ook werkelijk afgebroken zijn\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP  alleen processen met deze context afbreken\n"
+"                         (dient aan andere argumenten vooraf te gaan)\n"
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2012 Werner Almesberger en Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Ongeldige tijdopmaak"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Kan gebruiker %s niet vinden\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Ongeldige reguliere expressie: %s\n"
+
+#: src/killall.c:830
+#, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Het maximum aantal namen is %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s bevat geen procesitems -- misschien niet aangekoppeld?\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr "Fout tijdens aanhechten aan PID %i\n"
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "peekfd (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
@@ -366,7 +376,7 @@ msgstr ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -381,7 +391,7 @@ msgid ""
 msgstr ""
 "Gebruik:  peekfd [-8cdn] [-Vh] <PID> [<bestandsdescriptor>...]\n"
 "\n"
-"    -8  8-bits schone uitvoer produceren\n"
+"    -8  8-bits-schone uitvoer produceren\n"
 "    -c  nieuwe dochterprocessen ook bekijken\n"
 "    -d  dubbele vermeldingen onderdrukken\n"
 "    -n  het lezen en schrijven van descriptorkoppen niet tonen\n"
@@ -390,93 +400,270 @@ msgstr ""
 "\n"
 "Typ Ctrl-C om het programma te stoppen.\n"
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Gebruik:  prtstat [-r] PID ...\n"
+"     of:  prtstat -V\n"
+"\n"
+"Informatie over een proces weergeven.\n"
+"\n"
+"    -r,--raw       ruwe uitvoer van informatie\n"
+"    -V,--version   de programmaversie tonen en stoppen\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "runt"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "slaapt"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "wacht"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "getraced"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "swappend"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "onbekend"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Proces:  %-14s\t\tStatus: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tDraden: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Proces-, groeps- en sessie-IDs\n"
+"    Proces-ID: %d\t\t   Ouder-ID: %d\n"
+"    Groeps-ID: %d\t\t  Sessie-ID: %d\n"
+"  T-groeps-ID: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Page Faults\n"
+"  Dit proces        (zacht : hard):  %8lu : %8lu\n"
+"  Dochterprocessen  (zacht : hard):  %8lu : %8lu\n"
+
+#: src/prtstat.c:180
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "**Interne fout**: MAX_DEPTH is niet groot genoeg.\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"CPU-tijden\n"
+"  Dit proces  (gebruiker systeem gast blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Dochters    (gebruiker systeem gast):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Geheugen\n"
+"  Virtuele grootte:  %-10s\n"
+"  RSS:               %-10s\t\t      RSS-grens:  %s\n"
+"  Begin van code:    %#-10lx\t\t Einde van code:  %#-10lx\n"
+"  Begin van stack:   %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst.Pointer (EIP): %#10lx\n"
 
-#: src/pstree.c:750
+#: src/prtstat.c:199
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Scheduling\n"
+"  Beleid: %s\n"
+"  Nice:   %ld \t\t RT-prioriteit: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf() in print_stat() is mislukt.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Proces met PID %d bestaat niet.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Kan stat-bestand voor PID %d niet openen (%s).\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Ongeldige optie"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Er moet minstens één PID gegeven worden."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+"/proc is niet aangekoppeld, kan status van /proc/self/stat niet bepalen.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s is leeg -- misschien niet aangekoppeld?\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
-"Gebruik:  pstree [-aclnpu] [-h|-H PID] [-A|-G|-U] [ PID | NAAM ]\n"
-"          pstree -V\n"
+"Gebruik:  pstree [-a] [-c] [-g] [-h|-H PID] [-l] [-n] [-p] [-u]\n"
+"                     [-A|-G|-U] [ PID | GEBRUIKER ]\n"
+"     of:  pstree -V\n"
 "\n"
 "Huidige processen tonen in een boomstructuur.\n"
 "\n"
-"    -A      ASCII-tekens voor de lijntjes gebruiken\n"
-"    -a      argumenten van de opdrachtregel tonen\n"
-"    -c      identieke subbomen niet compacteren\n"
-"    -G      VT100-tekens voor de lijntjes gebruiken\n"
-"    -H PID  dit proces en diens voorouders accentueren\n"
-"    -h      huidig proces en zijn voorouders accentueren\n"
-"    -l      lange regels niet afkappen\n"
-"    -n      uitvoer sorteren naar PID\n"
-"    -p      PIDs tonen (dit impliceert -c)\n"
-"    -U      Unicode-tekens (UTF-8) voor de lijntjes gebruiken\n"
-"    -u      UID-overgangen tonen\n"
-"    -V      de programmaversie tonen\n"
-
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -Z      SELinux-veiligheidscontexten tonen\n"
-
-#: src/pstree.c:771
+"  -a, --arguments      argumenten van de opdrachtregel tonen\n"
+"  -A, --ascii          ASCII-tekens voor de lijntjes gebruiken\n"
+"  -c, --compact        identieke subbomen niet compacteren\n"
+"  -g, --show-pgids     procesgroeps-ID's tonen (impliceert '-c')\n"
+"  -G, --vt100          VT100-tekens voor de lijntjes gebruiken\n"
+"  -h, --highlight-all  huidig proces en zijn voorouders accentueren\n"
+"  -H PID,\n"
+"  --highlight-pid=PID  dit proces en zijn voorouders accentueren\n"
+"  -l, --long           lange regels niet afkappen\n"
+"  -n, --numeric-sort   uitvoer sorteren naar PID\n"
+"  -p, --show-pids      PIDs tonen (dit impliceert -c)\n"
+"  -u, --uid-changes    UID-overgangen tonen\n"
+"  -U, --unicode        Unicode-tekens (UTF-8) voor de lijntjes gebruiken\n"
+"  -V, --version        de programmaversie tonen\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z                  SELinux-veiligheidscontexten tonen\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"    PID     bij dit proces-ID beginnen; standaard is 1 (init)\n"
-"    NAAM    alleen de bomen tonen die beginnen bij processen van deze "
+"  PID     bij dit proces-ID beginnen; standaard is 1 (init)\n"
+"  NAAM    alleen de bomen tonen die beginnen bij processen van deze "
 "gebruiker\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger en Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr "omgevingsvariabele TERM heeft geen waarde\n"
+msgstr "Omgevingsvariabele TERM heeft geen waarde.\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Kan terminalcapaciteiten niet bepalen\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Geen bestaande gebruikersnaam: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Geen processen gevonden.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Druk op Enter om af te sluiten\n"
@@ -484,4 +671,24 @@ msgstr "Druk op Enter om af te sluiten\n"
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr "Onbekend signaal: %s -- '%s -l' toont lijst van mogelijke signalen\n"
+msgstr ""
+"Onbekend signaal: %s -- '%s -l' toont een lijst van mogelijke signalen.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Gebruik:  pidof [-eg] NAAM...\n"
+#~ "     of:  pidof -V\n"
+#~ "\n"
+#~ "    -e    zeer lange namen moeten exact overeenkomen\n"
+#~ "            (genegeerd als de opdrachtregel niet beschikbaar is)\n"
+#~ "    -g    procesgroeps-ID tonen in plaats van proces-ID\n"
+#~ "    -V    de programmaversie tonen\n"
+#~ "\n"
index 880d03a..7de8eaf 100644 (file)
Binary files a/po/pl.gmo and b/po/pl.gmo differ
index 164f3bb..c4c447d 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
 # Polish translations for psmisc.
-# Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc.
+# Copyright (C) 2004, 2005, 2007, 2009, 2010, 2012 Free Software Foundation, Inc.
 # This file is distributed under the same license as the psmisc package.
-# Jakub Bogusz <qboosh@pld-linux.org>, 2003-2007.
+# Jakub Bogusz <qboosh@pld-linux.org>, 2003-2012.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.5\n"
+"Project-Id-Version: psmisc 22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2007-05-30 17:34+0200\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-08-31 18:45+0200\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
+"Language: pl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-2\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Zabiæ %s(%s%d)? (t/N) "
-
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Zabiæ %s(%s%d)? (t/N) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Nie mo¿na pobraæ UID-a ze stanu procesu\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "B³êdne wyra¿enie regularne: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "pominiêto czê¶ciowe dopasowanie %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Zabito %s(%s%d) sygna³em %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: nie zabito ¿adnego procesu\n"
-
-#: src/killall.c:497
+#: src/fuser.c:133
 #, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
-"Sk³adnia: pidof [ -eg ] NAZWA...\n"
-"          pidof -V\n"
-"\n"
-"    -e    wymaganie dok³adnego dopasowania dla bardzo d³ugich nazw;\n"
-"            pomijane je¶li linia poleceñ nie jest dostêpna\n"
-"    -g    wy¶wietlanie ID grup procesów zamiast ID procesów\n"
-"    -V    wy¶wietlenie informacji o wersji\n"
+"Sk³adnia: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n PRZESTRZEÑ] [-k [-i] [-"
+"SYGNA£]] NAZWA...\n"
+"          fuser -l\n"
+"          fuser -V\n"
+"Pokazywanie, które procesy u¿ywaj± plików, gniazd lub systemów plików\n"
+"o podanych nazwach.\n"
 "\n"
-
-#: src/killall.c:511
+"  -a,--all              wy¶wietlenie tak¿e nie u¿ywanych plików\n"
+"  -i,--interactive      pytanie przed zabiciem (ignorowane bez -k)\n"
+"  -k,--kill             zabicie procesów u¿ywaj±cych podanego pliku\n"
+"  -l,--list-signals     lista nazw sygna³ów\n"
+"  -m,--mount            pokazanie procesów u¿ywaj±cych podanych systemów "
+"plików lub urz±dzeñ\n"
+"  -M,--ismountpoint     wykonywanie poleceñ tylko je¶li NAZWA jest punktem "
+"montowania\n"
+"  -n,--namespace PRZ    szukanie w podanej przestrzeni nazw (file, udp lub "
+"tcp)\n"
+"  -s,--silent           dzia³anie po cichu\n"
+"  -SYGNA£               wys³anie podanego sygna³u zamiast SIGKILL\n"
+"  -u,--user             wy¶wietlenie identyfikatorów u¿ytkowników\n"
+"  -v,--verbose          podanie wiêkszej ilo¶ci informacji\n"
+"  -w,--writeonly        zabicie tylko procesów z prawem zapisu\n"
+"  -V,--version          wy¶wietlenie informacji o wersji\n"
+
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
-"Sk³adnia: killall [-Z KONTEKST] [-u U¯YTKOWNIK] [ -eIgiqrvw ] [ -SYGNA£ ] "
-"NAZWA...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Sk³adnia: killall [OPCJE]... [--] NAZWA...\n"
+"  -4,--ipv4             szukanie tylko gniazd IPv4\n"
+"  -6,--ipv6             szukanie tylko gniazd IPv6\n"
 
-#: src/killall.c:517
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
 msgstr ""
-"          killall -l, --list\n"
-"          killall -V --version\n"
+"  -                     wyzerowanie opcji\n"
+"\n"
+"  nazwy tcp/udp: [port_lokalny][,[zdalny_host][,[port_zdalny]]]\n"
 "\n"
-"  -e,--exact          wymaganie dok³adnego dopasowania dla bardzo d³ugich "
-"nazw\n"
-"  -I,--ignore-case    dopasowywanie nazw procesów niewra¿liwe na wielko¶æ "
-"liter\n"
-"  -g,--process-group  zabicie grupy procesów zamiast procesu\n"
-"  -i,--interactive    pytanie o potwierdzenie przed zabiciem\n"
-"  -l,--list           wypisanie wszystkich znanych nazw sygna³ów\n"
-"  -q,--quiet          nie wy¶wietlanie narzekañ\n"
-"  -r,--regexp         u¿ycie NAZWY jako rozszerzonego wyra¿enia regularnego\n"
-"  -s,--signal SYGNA£  wys³anie podanego sygna³u zamiast SIGTERM\n"
-"  -u, --user U¯YTK    zabicie tylko procesów dzia³aj±cych jako podany "
-"u¿ytkownik\n"
-"  -v,--verbose        informowanie czy wys³anie sygna³u siê powiod³o\n"
-"  -V,--version        wy¶wietlenie informacji o wersji\n"
-"  -w,--wait           zaczekanie na ¶mieræ procesów\n"
 
-#: src/killall.c:533
+#: src/fuser.c:160
 #, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context REGEXP zabicie tylko procesu(ów) maj±cych dany kontekst "
-"bezp.\n"
-"                        (musi poprzedzaæ inne argumenty)\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/fuser.c:163
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright (C) 1993-2005 Werner Almesberger i Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger i Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
 msgid ""
 "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
@@ -154,211 +114,253 @@ msgstr ""
 "Powszechnej Licencji Publicznej GNU (General Public License).\n"
 "Wiêcej informacji znajduje siê w pliku o nazwie COPYING.\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Nie mo¿na odnale¼æ u¿ytkownika %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Maksymalna liczba nazw to %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s jest pusty (nie podmontowany?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Sk³adnia: fuser [ -a | -s | -c ] [ -n PRZESTRZEÑ ] [ -SYGNA£ ] [ -kimuv ] "
-"NAZWA...\n"
-"                [ - ] [ -n PRZESTRZEÑ ] [ -SYGNA£ ] [ -kimuv ] NAZWA...\n"
-"          fuser -l\n"
-"          fuser -V\n"
-"Pokazywanie, które procesy u¿ywaj± plików, gniazd lub systemów plików\n"
-"o podanych nazwach.\n"
-"\n"
-"    -a             wy¶wietlenie tak¿e nie u¿ywanych plików\n"
-"    -c             podmontowany system plików\n"
-"    -f             po cichu ignorowane (dla kompatybilno¶ci z POSIX)\n"
-"    -i             pytanie przed zabiciem (ignorowane bez -k)\n"
-"    -k             zabicie procesów u¿ywaj±cych podanego pliku\n"
-"    -l             lista nazw sygna³ów\n"
-"    -m             pokazanie procesów u¿ywaj±cych podanych systemów plików\n"
-"    -n PRZESTRZEÑ  szukanie w podanej przestrzeni nazw (file, udp lub tcp)\n"
-"    -s             dzia³anie po cichu\n"
-"    -SYGNA£        wys³anie podanego sygna³u zamiast SIGKILL\n"
-"    -u             wy¶wietlenie identyfikatorów u¿ytkowników\n"
-"    -v             podanie wiêkszej ilo¶ci informacji\n"
-"    -V             wy¶wietlenie informacji o wersji\n"
-"    -4             szukanie tylko gniazd IPv4\n"
-"    -6             szukanie tylko gniazd IPv6\n"
-"    -              wyzerowanie opcji\n"
-"\n"
-"  nazwy tcp/udp: [port_lokalny][,[zdalny_host][,[port_zdalny]]]\n"
-"\n"
-
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
-
-#: src/fuser.c:113
-#, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "Nie mo¿na otworzyæ katalogu /proc: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "Nie mo¿na przydzieliæ pamiêci dla dopasowanego procesu: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Nie mo¿na wykonaæ stat na punkcie montowania %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Podana nazwa pliku %s nie istnieje.\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "Nie mo¿na wykonaæ stat na %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "Nie mo¿na rozwi±zaæ portu lokalnego %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "Nieznana rodzina adresów portu lokalnego %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "Nie mo¿na otworzyæ pliku protoko³u \"%s\": %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: B³êdna opcja %s\n"
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "Opcja przestrzeni nazw wymaga argumentu."
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "Niepoprawna nazwa przestrzeni nazw"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr "Z opcj± punktu montowania mo¿na u¿ywaæ tylko plików"
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Z opcjami punktu montowania mo¿na u¿ywaæ tylko plików"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Nie podano okre¶lenia procesów"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Nie mo¿na u¿yæ jednocze¶nie flag podmontowanego i punktu montowania"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "opcja wszystkich plików nie mo¿e byæ u¿yta z opcj± ciszy."
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "Nie mo¿na naraz szukaæ gniazd wy³±cznie IPv4 i wy³±cznie IPv6"
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr "%*s U¯YTKOWNIK  PID DOSTÊP POLECENIE\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(nieznany)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "Nie mo¿na wykonaæ stat na pliku %s: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "Nie mo¿na otworzyæ /proc/net/unix: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Nie mo¿na otworzyæ /etc/mtab: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "Zabiæ proces %d? (y/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "Nie uda³o siê zabiæ procesu %d: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "Nie mo¿na otworzyæ gniazda sieciowego.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "Nie mo¿na odnale¼æ numeru urz±dzenia gniazda.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Zabiæ %s(%s%d)? (t/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Wys³aæ sygna³ do %s(%s%d)? (t/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: nie mo¿na pobraæ UID-a ze stanu procesu\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: b³êdne wyra¿enie regularne: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: pominiêto czê¶ciowe dopasowanie %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Zabito %s(%s%d) sygna³em %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: nie znaleziono ¿adnego procesu\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Sk³adnia: killall [-Z KONTEKST] [-u U¯YTKOWNIK] [ -eIgiqrvw ] [ -SYGNA£ ] "
+"NAZWA...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Sk³adnia: killall [OPCJE]... [--] NAZWA...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"          killall -l, --list\n"
+"          killall -V --version\n"
+"\n"
+"  -e,--exact          wymaganie dok³adnego dopasowania dla bardzo d³ugich "
+"nazw\n"
+"  -I,--ignore-case    dopasowywanie nazw procesów niewra¿liwe na wielko¶æ "
+"liter\n"
+"  -g,--process-group  zabicie grupy procesów zamiast procesu\n"
+"  -y,--younger-than   zabicie procesów m³odszych ni¿ CZAS\n"
+"  -o,--other-than     zabicie procesów starszych ni¿ CZAS\n"
+"  -i,--interactive    pytanie o potwierdzenie przed zabiciem\n"
+"  -l,--list           wypisanie wszystkich znanych nazw sygna³ów\n"
+"  -q,--quiet          nie wy¶wietlanie narzekañ\n"
+"  -r,--regexp         u¿ycie NAZWY jako rozszerzonego wyra¿enia regularnego\n"
+"  -s,--signal SYGNA£  wys³anie podanego sygna³u zamiast SIGTERM\n"
+"  -u, --user U¯YTK    zabicie tylko procesów dzia³aj±cych jako podany "
+"u¿ytkownik\n"
+"  -v,--verbose        informowanie czy wys³anie sygna³u siê powiod³o\n"
+"  -V,--version        wy¶wietlenie informacji o wersji\n"
+"  -w,--wait           zaczekanie na ¶mieræ procesów\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP zabicie tylko procesu(ów) maj±cych dany kontekst "
+"bezp.\n"
+"                        (musi poprzedzaæ inne argumenty)\n"
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2012 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "B³êdny format czasu"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Nie mo¿na odnale¼æ u¿ytkownika %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "B³êdne wyra¿enie regularne: %s\n"
+
+#: src/killall.c:830
+#, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: maksymalna liczba nazw to %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s nie ma wpisów procesów (nie jest zamontowany?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr "B³±d podczas pod³±czania do procesu %i\n"
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "peekfd (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
@@ -367,7 +369,7 @@ msgstr ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -390,92 +392,269 @@ msgstr ""
 "\n"
 "  Ctrl-C koñczy wyj¶cie.\n"
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Sk³adnia: prtstat [opcje] PID ...\n"
+"          prtstat -V\n"
+"Wypisywanie informacji o procesie\n"
+"    -r,--raw       Wy¶wietlenie informacji w postaci surowej\n"
+"    -V,--version   Wypisanie informacji o wersji i zakoñczenie\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "dzia³a"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "¶pi"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "op.dyskowa"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "¶ledzony"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "wymiana"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "nieznany"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Proces: %-14s\t\tStan: %c (%s)\n"
+"  CPU#: %-3d\t\tTTY: %s\tW±tków: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"ID procesu, grupy i sesji\n"
+" ID procesu: %d\t\t  ID rodzica: %d\n"
+" ID grupy: %d\t\t  ID sesji:   %d\n"
+" ID grupy t: %d\n"
+"\n"
+
+#: src/prtstat.c:175
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "B³±d wewnêtrzny: MAX_DEPTH jest zbyt ma³e.\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Niepowodzenia stronicowania\n"
+"  Ten proces      (min maj): %8lu  %8lu\n"
+"  Procesy potomne (min maj): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Czasy procesora\n"
+"  Ten proces      (u¿ytkownika systemowy go¶cinny blkio): %6.2f %6.2f %6.2f "
+"%6.2f\n"
+"  Procesy potomne (u¿ytkownika systemowy go¶cinny:        %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Pamiêæ\n"
+"  RozmWirt/VSz:     %-10s\n"
+"  RSS:              %-10s \t\t Limit RSS:         %s\n"
+"  Pocz. kodu:       %#-10lx\t\t Koniec kodu:       %#-10lx\n"
+"  Pocz. stosu:      %#-10lx\n"
+"  Wsk. stosu (ESP): %#-10lx\t\t Wsk. instr. (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Szeregowanie\n"
+"  Polityka:  %s\n"
+"  Wart.nice: %ld \t\t Priorytet RT: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf w print_stat nie powiód³ siê.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Proces o pidzie %d nie istnieje.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Nie uda³o siê otworzyæ pliku stat dla pidu %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "B³êdna opcja"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Trzeba podaæ przynajmniej jeden PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+"/proc nie jest zamontowany, nie mo¿na wykonaæ stat na /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s jest pusty (nie podmontowany?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
-"Sk³adnia: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Sk³adnia: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] "
+"[ -u ]\n"
 "                 [ -A | -G | -U ] [ PID | U¯YTKOWNIK ]\n"
 "          pstree -V\n"
 "Wy¶wietlanie drzewa procesów.\n"
 "\n"
-"    -a     wy¶wietlenie argumentów linii poleceñ\n"
-"    -A     u¿ycie znaków ramek ASCII\n"
-"    -c     nie scalanie identycznych poddrzew\n"
-"    -h     pod¶wietlenie bie¿±cego procesu i jego przodków\n"
-"    -H PID pod¶wietlenie podanego procesu i jego przodków\n"
-"    -G     u¿ycie znaków ramek VT100\n"
-"    -l     nie obcinanie d³ugich linii\n"
-"    -n     sortowanie wyj¶cia wg PID-u\n"
-"    -p     wy¶wietlanie PID-ów; w³±cza tak¿e -c\n"
-"    -u     wy¶wietlanie zmian uidów\n"
-"    -U     u¿ycie znaków ramek UTF-8 (Unicode)\n"
-"    -V     wy¶wietlenie informacji o wersji\n"
-
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -Z     wy¶wietlanie kontekstów bezpieczeñstwa SELinuksa\n"
-
-#: src/pstree.c:771
+"  -a, --arguments     wy¶wietlenie argumentów linii poleceñ\n"
+"  -A, --ascii         u¿ycie znaków ramek ASCII\n"
+"  -c, --compact       nie scalanie identycznych poddrzew\n"
+"  -h, --highlight-all pod¶wietlenie bie¿±cego procesu i jego przodków\n"
+"  -H PID,\n"
+"  --highlight-pid=PID pod¶wietlenie podanego procesu i jego przodków\n"
+"  -g, --show-pgids    wy¶wietlanie identyfikatorów grup procesów; w³±cza -c\n"
+"  -G, --vt100         u¿ycie znaków ramek VT100\n"
+"  -l, --long          nie obcinanie d³ugich linii\n"
+"  -n, --numeric-sort  sortowanie wyj¶cia wg PID-u\n"
+"  -p, --show-pids     wy¶wietlanie PID-ów; w³±cza tak¿e -c\n"
+"  -u, --uid-changes   wy¶wietlanie zmian uidów\n"
+"  -U, --unicode       u¿ycie znaków ramek UTF-8 (Unicode)\n"
+"  -V, --version       wy¶wietlenie informacji o wersji\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr ""
+"  -Z                  wy¶wietlanie kontekstów bezpieczeñstwa SELinuksa\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"    PID    rozpoczêcie od tego PID-u, domy¶lnie 1 (init)\n"
+"  PID    rozpoczêcie od tego PID-u, domy¶lnie 1 (init)\n"
 " U¯YTKOWNIK  tylko drzewa zaczynaj±ce siê od procesów tego u¿ytkownika\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger i Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM nie ustawiony\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Nie mo¿na odczytaæ mo¿liwo¶ci terminala\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Nie ma u¿ytkownika o takiej nazwie: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Nie znaleziono procesów.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Naci¶niêcie return zamknie program\n"
index 2ef188b..c729459 100644 (file)
@@ -8,74 +8,228 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
+#: src/fuser.c:133
 #, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
 
-#: src/killall.c:77
+#: src/fuser.c:153
 #, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
 msgstr ""
 
-#: src/killall.c:121
+#: src/fuser.c:160
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid "fuser (PSmisc) %s\n"
 msgstr ""
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:163
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
 
-#: src/killall.c:343
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "skipping partial match %s(%d)\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
 msgstr ""
 
-#: src/killall.c:445
+#: src/fuser.c:184
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
+msgid "Cannot open /proc directory: %s\n"
 msgstr ""
 
-#: src/killall.c:459
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "%s: no process killed\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr ""
 
-#: src/killall.c:497
+#: src/fuser.c:478
 #, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr ""
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr ""
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr ""
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr ""
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr ""
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr ""
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr ""
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr ""
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr ""
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr ""
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr ""
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr ""
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr ""
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
 msgstr ""
 
-#: src/killall.c:511
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr ""
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr ""
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr ""
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr ""
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr ""
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr ""
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr ""
+
+#: src/killall.c:615
 #, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
 msgstr ""
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -84,6 +238,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -95,293 +251,281 @@ msgid ""
 "  -w,--wait           wait for processes to die\n"
 msgstr ""
 
-#: src/killall.c:533
+#: src/killall.c:639
 #, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
 msgstr ""
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
 msgstr ""
 
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr ""
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr ""
-
-#: src/fuser.c:89
-#, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-
-#: src/fuser.c:109
+#: src/killall.c:798
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
+msgid "Bad regular expression: %s\n"
 msgstr ""
 
-#: src/fuser.c:113
+#: src/killall.c:830
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+msgid "killall: Maximum number of names is %d\n"
 msgstr ""
 
-#: src/fuser.c:120
+#: src/killall.c:835
 #, c-format
-msgid "fuser (PSmisc) %s\n"
+msgid "killall: %s lacks process entries (not mounted ?)\n"
 msgstr ""
 
-#: src/fuser.c:147
+#: src/peekfd.c:96
 #, c-format
-msgid "Cannot open /proc directory: %s\n"
+msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/fuser.c:283
+#: src/peekfd.c:104
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
+msgid "peekfd (PSmisc) %s\n"
 msgstr ""
 
-#: src/fuser.c:316
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/fuser.c:476
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot resolve local port %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
 
-#: src/fuser.c:492
+#: src/prtstat.c:65
 #, c-format
-msgid "Unknown local port AF %d\n"
+msgid "prtstat (PSmisc) %s\n"
 msgstr ""
 
-#: src/fuser.c:553
+#: src/prtstat.c:66
 #, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
+#: src/prtstat.c:78
+msgid "running"
 msgstr ""
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
+#: src/prtstat.c:80
+msgid "sleeping"
 msgstr ""
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/prtstat.c:82
+msgid "disk sleep"
 msgstr ""
 
-#: src/fuser.c:840
-msgid "No process specification given"
+#: src/prtstat.c:84
+msgid "zombie"
 msgstr ""
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
+#: src/prtstat.c:86
+msgid "traced"
 msgstr ""
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
+#: src/prtstat.c:88
+msgid "paging"
 msgstr ""
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+#: src/prtstat.c:90
+msgid "unknown"
 msgstr ""
 
-#: src/fuser.c:901
+#: src/prtstat.c:164
 #, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
 
-#: src/fuser.c:1019
+#: src/prtstat.c:169
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
 msgstr ""
 
-#: src/fuser.c:1113
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
 
-#: src/fuser.c:1149
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
 
-#: src/fuser.c:1198
+#: src/prtstat.c:189
 #, c-format
-msgid "Kill process %d ? (y/N) "
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
 msgstr ""
 
-#: src/fuser.c:1222
+#: src/prtstat.c:199
 #, c-format
-msgid "Could not kill process %d: %s\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
 msgstr ""
 
-#: src/fuser.c:1237
-#, c-format
-msgid "Cannot open a network socket.\n"
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
 msgstr ""
 
-#: src/fuser.c:1241
+#: src/prtstat.c:226
 #, c-format
-msgid "Cannot find socket's device number.\n"
+msgid "Process with pid %d does not exist.\n"
 msgstr ""
 
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
+msgid "Unable to open stat file for pid %d (%s)\n"
 msgstr ""
 
-#: src/peekfd.c:83
-#, c-format
-msgid "peekfd (PSmisc) %s\n"
+#: src/prtstat.c:308
+msgid "Invalid option"
 msgstr ""
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
 msgstr ""
 
-#: src/pstree.c:374
+#: src/pstree.c:794
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
+msgid "%s is empty (not mounted ?)\n"
 msgstr ""
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 
-#: src/pstree.c:768
+#: src/pstree.c:850
 #, c-format
-msgid "    -Z     show SELinux security contexts\n"
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr ""
 
-#: src/pstree.c:771
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr ""
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr ""
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr ""
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr ""
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr ""
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr ""
index 66b2160..574e8ac 100644 (file)
Binary files a/po/pt.gmo and b/po/pt.gmo differ
index da3fbcf..562b9ee 100644 (file)
--- a/po/pt.po
+++ b/po/pt.po
@@ -6,108 +6,70 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psmisc 1.0\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: 2001-10-28 22:14-0200\n"
 "Last-Translator: Edesio Costa e Silva <edesio+psmisc@ieee.org>\n"
 "Language-Team: Portuguese <pt@li.org>\n"
+"Language: pt\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=iso-8859-1\n"
 "Content-Transfer-Encoding: 8-bit\n"
 
-#: src/killall.c:74
-#, fuzzy, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Termina %s(%s%d) ? (y/n) "
-
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Termina %s(%s%d) ? (y/n) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr ""
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr ""
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "ignorando resultado parcial %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Abortado %s(%s%d) com sinal %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: nenhum processo abortado\n"
-
-#: src/killall.c:497
+#: src/fuser.c:133
 #, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
-msgstr ""
-
-#: src/killall.c:511
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
 
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr ""
-
-#: src/killall.c:517
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
 msgstr ""
 
-#: src/killall.c:533
-#, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
+#: src/fuser.c:160
+#, fuzzy, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (psmisc) %s\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/fuser.c:163
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, fuzzy, c-format
 msgid ""
 "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
@@ -123,217 +85,233 @@ msgstr ""
 "Para maiores informações sobre estes assuntos, veja os arquivos com nome "
 "COPYING.\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr ""
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Número máximo de nomes é %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s está vazio (não está montado?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"\"\"\n"
-"\"usage: fuser [ -a | -s ] [ -n space ] [ -signal ] [ -kimuv ] name ...\\n"
-"\"\n"
-"\"             [ - ] [ -n space ] [ -signal ] [ -kimuv ] name ...\\n\"\n"
-"\"       fuser -l\\n\"\n"
-"\"       fuser -V\\n\"\n"
-"\"\\n\"\n"
-"\"    -a        exibe arquivos usados e não usados\\n\"\n"
-"\"    -k        termina processos acessando aquele arquivo\\n\"\n"
-"\"    -i        pergunta antes de abortar (ignorado se a opção -k não for "
-"utilizada)\\n\"\n"
-"\"    -l        lista o nome dos sinais\\n\"\n"
-"\"    -m        sistemas de arquivos (file systems) montados\\n\"\n"
-"\"    -n space  pesquisa no espaço de nomes especificado (arquivos, conexões "
-"udp ou tcp)\\n\"\n"
-"\"    -s        exibe apenas mensagens de erro\\n\"\n"
-"\"    -signal   utiliza sinal signal ao invés de SIGKILL\\n\"\n"
-"\"    -u        exibe identificadores de usuário (user ids)\\n\"\n"
-"\"    -v        exibe mensagens detalhadas\\n\"\n"
-"\"    -V        exibe versão do programa\\n\"\n"
-"\"    -4        pesquisa apenas sockets IPv4\\n\"\n"
-"\"    -6        pesquisa apenas sockets IPv6\\n\"\n"
-"\"    -         reseta opções\\n\"\n"
-"\"\\n\"\n"
-"\"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\\n\"\n"
-"\"\\n\"\n"
-
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
-
-#: src/fuser.c:113
-#, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr ""
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr ""
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
 msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr ""
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr ""
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr ""
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr ""
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, fuzzy, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s/%s: especificação invalida\n"
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr ""
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr ""
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
 msgstr ""
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr ""
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr ""
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr ""
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr ""
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr ""
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr ""
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr ""
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr ""
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, fuzzy, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "Aborta processo %d ? (y/n) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr ""
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr ""
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, fuzzy, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "não pode achar o número de dispositivo do socket"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, fuzzy, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Termina %s(%s%d) ? (y/n) "
+
+#: src/killall.c:103
+#, fuzzy, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Termina %s(%s%d) ? (y/n) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr ""
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr ""
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "ignorando resultado parcial %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Abortado %s(%s%d) com sinal %d\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: nenhum processo abortado\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr ""
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr ""
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr ""
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Número máximo de nomes é %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s está vazio (não está montado?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, fuzzy, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "fuser (psmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -347,72 +325,212 @@ msgid ""
 "  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
 
-#: src/pstree.c:750
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "fuser (psmisc) %s\n"
+
+#: src/prtstat.c:66
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr ""
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s está vazio (não está montado?)\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 
-#: src/pstree.c:768
+#: src/pstree.c:850
 #, c-format
-msgid "    -Z     show SELinux security contexts\n"
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr ""
 
-#: src/pstree.c:771
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, fuzzy, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "fuser (psmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr ""
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr ""
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr ""
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr ""
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr ""
@@ -451,13 +569,64 @@ msgstr ""
 #~ msgid "kernel swap   "
 #~ msgstr "kernel swap   "
 
+#, fuzzy
+#~ msgid ""
+#~ "usage: fuser [ -a | -s | -c ] [ -n space ] [ -signal ] [ -kimuv ] "
+#~ "name ...\n"
+#~ "             [ - ] [ -n space ] [ -signal ] [ -kimuv ] name ...\n"
+#~ "       fuser -l\n"
+#~ "       fuser -V\n"
+#~ "\n"
+#~ "    -a        display unused files too\n"
+#~ "    -c        mounted FS\n"
+#~ "    -f        silently ignored (for POSIX compatibility\n"
+#~ "    -k        kill processes accessing that file\n"
+#~ "    -i        ask before killing (ignored without -k)\n"
+#~ "    -l        list signal names\n"
+#~ "    -m        mounted FS\n"
+#~ "    -n space  search in the specified name space (file, udp, or tcp)\n"
+#~ "    -s        silent operation\n"
+#~ "    -signal   send signal instead of SIGKILL\n"
+#~ "    -u        display user ids\n"
+#~ "    -v        verbose output\n"
+#~ "    -V        display version information\n"
+#~ "    -4        search IPv4 sockets only\n"
+#~ "    -6        search IPv6 sockets only\n"
+#~ "    -         reset options\n"
+#~ "\n"
+#~ "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+#~ "\n"
+#~ msgstr ""
+#~ "\"\"\n"
+#~ "\"usage: fuser [ -a | -s ] [ -n space ] [ -signal ] [ -kimuv ] name ...\\n"
+#~ "\"\n"
+#~ "\"             [ - ] [ -n space ] [ -signal ] [ -kimuv ] name ...\\n\"\n"
+#~ "\"       fuser -l\\n\"\n"
+#~ "\"       fuser -V\\n\"\n"
+#~ "\"\\n\"\n"
+#~ "\"    -a        exibe arquivos usados e não usados\\n\"\n"
+#~ "\"    -k        termina processos acessando aquele arquivo\\n\"\n"
+#~ "\"    -i        pergunta antes de abortar (ignorado se a opção -k não for "
+#~ "utilizada)\\n\"\n"
+#~ "\"    -l        lista o nome dos sinais\\n\"\n"
+#~ "\"    -m        sistemas de arquivos (file systems) montados\\n\"\n"
+#~ "\"    -n space  pesquisa no espaço de nomes especificado (arquivos, "
+#~ "conexões udp ou tcp)\\n\"\n"
+#~ "\"    -s        exibe apenas mensagens de erro\\n\"\n"
+#~ "\"    -signal   utiliza sinal signal ao invés de SIGKILL\\n\"\n"
+#~ "\"    -u        exibe identificadores de usuário (user ids)\\n\"\n"
+#~ "\"    -v        exibe mensagens detalhadas\\n\"\n"
+#~ "\"    -V        exibe versão do programa\\n\"\n"
+#~ "\"    -4        pesquisa apenas sockets IPv4\\n\"\n"
+#~ "\"    -6        pesquisa apenas sockets IPv6\\n\"\n"
+#~ "\"    -         reseta opções\\n\"\n"
+#~ "\"\\n\"\n"
+#~ "\"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\\n\"\n"
+#~ "\"\\n\"\n"
+
 #~ msgid "ignoring -m in name space \"%s\"\n"
 #~ msgstr "ignorando opção -m no espaço de nomes \"%s\"\n"
 
-#, fuzzy
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: especificação invalida\n"
-
 #~ msgid "No process references; use -v for the complete list\n"
 #~ msgstr ""
 #~ "Nenhuma referência a processo; utilize -v para uma listagem completa\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
new file mode 100644 (file)
index 0000000..af80805
Binary files /dev/null and b/po/pt_BR.gmo differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
new file mode 100644 (file)
index 0000000..5d28bb6
--- /dev/null
@@ -0,0 +1,678 @@
+# Brazilian Portuguese translation of psmisc.
+# This file is distributed under the same license as the psmisc package.
+# Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+# Fabrício Godoy <skarllot@gmail.com>, 2009-2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.12\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2010-08-15 04:48-0300\n"
+"Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
+"Language-Team: Brazilian Portuguese <ldp-br@bazar.conectiva.com.br>\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Uso:   fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n ESPNM] [-k [-i] [-SINAL]] "
+"NOME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Mostra quais processos usam os arquivos, sockets ou sistema de arquivos "
+"especificados.\n"
+"\n"
+"  -a,--all              exibir também arquivos sem uso\n"
+"  -i,--interactive      perguntar antes de matar (ignorado sem -k)\n"
+"  -k,--kill             matar processos acessando o arquivo especificado\n"
+"  -l,--list-signals     listar os nomes de sinal disponíveis\n"
+"  -m,--mount            mostrar todos processos usando o sistema de arquivos "
+"ou dispositivo de bloco especificado\n"
+"  -n,--namespace ESPNM  pesquisar neste espaço de nome (file, udp ou tcp)\n"
+"  -s,--silent           operação silenciosa\n"
+"  -SINAL                enviar este sinal em vez de SIGKILL\n"
+"  -u,--user             exibir IDs de usuário\n"
+"  -v,--verbose          saída detalhada\n"
+"  -V,--version          exibir informações de versão\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             pesquisar apenas sockets IPv4\n"
+"  -6,--ipv6             pesquisar apenas sockets IPv6\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     redefinir opções\n"
+"\n"
+"  nomes udp/tcp: [porta_local][,[maq_rmt][,[porta_rmt]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc vem com ABSOLUTAMENTE NENHUMA GARANTIA.\n"
+"Este é um software livre, e você é bem-vindo em redistribuí-lo dentro\n"
+"dos termos da GNU General Public License.\n"
+"Para mais informações a respeito, veja os arquivos com o nome COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Não foi possível abrir o diretório /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Não foi possível alocar memória ao proc equiparado: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "O nome de arquivo especificado %s não existe.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Não foi possível analisar %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Não foi possível resolver a porta local %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Família de endereços da porta local %d desconhecida\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Não foi possível abrir o arquivo de protocolo \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Opção inválida %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "A opção \"espaço de nome\" requer um argumento."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Nome de espaço de nome inválido"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Você pode apenas usar arquivos com opções de ponto de montagem"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Nenhuma especificação de processo fornecida"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "a opção \"detalhada\" não pode ser usada com a opção \"silenciosa\"."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Você não pode pesquisar apenas por sockets IPv4 e IPv6 ao mesmo tempo"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s USUÁRIO     PID ACESSO COMANDO\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(desconhecido)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Não foi possível analisar o arquivo %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Não foi possível abrir /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Matar o processo %d? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Não foi possível matar o processo %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Não foi possível abrir um socket de rede.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Não foi possível localizar o número de dispositivo do socket.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Matar %s(%s%d)? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Enviar sinal para %s(%s%d)? (y/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Não foi possível obter UID do status do processo\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Expressão regular inválida: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "ignorando ocorrência parcial %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) morto com o sinal %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: nenhum processo localizado\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Uso:   killall [-Z CONTEXTO] [-u USUÁRIO] [ -eIgiqrvw ] [ -SINAL ] NOME...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Uso:   killall [OPÇÃO]... [--] NOME...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          exigir ocorrência exata para nomes muito longos\n"
+"  -I,--ignore-case    ignorar maiusculização nos nomes de processo\n"
+"  -g,--process-group  matar o grupo de processo em vez do processo\n"
+"  -y,--younger-than   matar processos mais novos que TEMPO\n"
+"  -o,--older-than     matar processos mais velhos que TEMPO\n"
+"  -i,--interactive    exibir confirmação antes de matar\n"
+"  -l,--list           listar todos os nomes de sinal conhecidos\n"
+"  -q,--quiet          não exibir avisos\n"
+"  -r,--regexp         interpretar NOME como uma expressão regular extendida\n"
+"  -s,--signal SINAL   enviar este sinal em vez de SIGTERM\n"
+"  -u,--user USUARIO   matar apenas proc. sendo executados como USUARIO\n"
+"  -v,--verbose        relatar se o sinal foi enviado com sucesso\n"
+"  -V,--version        exibir informações de versão\n"
+"  -w,--wait           esperar que os processos morram\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context EXPREG matar apenas processo(s) tendo contexto\n"
+"                      (precisa preceder outros argumentos)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Formato de tempo inválido"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Não foi possível localizar o usuário %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Expressão regular inválida: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "O número máximo de nomes é %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s está vazio (não montado?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Erro ao anexar ao PID %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Copyright © 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Uso:   peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 saída limpa com fluxos de 8 bits.\n"
+"    -n não exibir leitura/gravação dos cabeçalhos fd.\n"
+"    -c espiar qualquer novos processos filhos também.\n"
+"    -d remover leitura/gravação duplicados da saída.\n"
+"    -V exibir informações de versão.\n"
+"    -h exibir esta ajuda.\n"
+"\n"
+"  Pressione CTRL+C para finalizar a saída.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Uso:   prtstat [opções] PID ...\n"
+"       prtstat -V\n"
+"Exibe informações sobre um processo\n"
+"    -r,--raw       Exibição bruta de informações\n"
+"    -V,--version   Exibir informações de versão e sair\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "executando"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "suspenso"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "suspenso por disco"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zumbi"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "interrompido"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "paginado"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "desconhecido"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Processo: %-14s\t\tEstado: %c (%s)\n"
+"   CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"IDs de processos, grupos e sessões\n"
+" ID processo: %d\t\t     ID pai: %d\n"
+"    ID grupo: %d\t\t  ID sessão: %d\n"
+"  ID grupo T: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Faltas de página\n"
+"  Este processo   (menor maior): %8lu  %8lu\n"
+"  Processos filho (menor maior): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Tempo de CPU\n"
+"  Este processo   (usu. sist. conv. blkio):  %6.2f %6.2f %6.2f %6.2f\n"
+"  Processos filho (usu. sist. conv.):        %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Memória\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\tLimite RSS: %s\n"
+"  Início cód.: %#-10lx\t\t Fim cód. :  %#-10lx\n"
+"  Início stack:%#-10lx\n"
+"  Pont. stack (ESP): %#10lx\t   Pont. Instr. (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Agendamento\n"
+"  Polít.: %s\n"
+"  Nice:   %ld \t\t Priorid. RT: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf em print_stat falhou.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "O processo com PID %d não existe.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Não foi possível abrir o arquivo de análise para PID %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Opção inválida"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Você precisa fornecer ao menos um PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc não está montado, impossível analisar /proc/self/stat.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s está vazio (não montado?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Uso:   pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"              [ -A | -G | -U ] [ PID | USR ]\n"
+"       pstree -V\n"
+"Exibe uma árvore de processos.\n"
+"\n"
+"  -a, --arguments     mostrar argumentos de linha de comando\n"
+"  -A, --ascii         usar caracteres ASCII no desenho de linhas\n"
+"  -c, --compact       não comprimir subárvores idênticas\n"
+"  -h, --highlight-all realçar o processo atual e seus ancestrais\n"
+"  -H PID,\n"
+"  --highlight-pid=PID realçar este processo e seus ancestrais\n"
+"  -G, --vt100         usar caracteres VT100 no desenho de linhas\n"
+"  -l, --long          não truncar linhas longas\n"
+"  -n, --numeric-sort  ordenar saída pelo PID\n"
+"  -p, --show-pids     mostrar PIDs; implica -c\n"
+"  -u, --uid-changes   mostrar transições de UID\n"
+"  -U, --unicode       usar caracteres UTF-8 (Unicode) no desenho de linhas\n"
+"  -V, --version       exibir informações de versão\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     mostrar         contextos de segurança do SELinux\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  PID    iniciar deste PID; predefinido como 1 (init)\n"
+"  USR    mostrar apenas árvores originadas de processos deste usuário\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "TERM não está definido\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Não pôde obter as habilidades do terminal\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Nome de usuário inexistente: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Nenhum processo localizado.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Pressione Enter para fechar\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: sinal desconhecido; %s -l lista os sinais.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Uso:   pidof [ -eg ] NOME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      exigir ocorrência exata para nomes muito longos;\n"
+#~ "            ignorar se a linha de comando está indisponível\n"
+#~ "    -g      mostrar ID do grupo de processo em vez do ID de processo\n"
+#~ "    -V      exibir informações de versão\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright © 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
index c0a0ed2..5720bfa 100644 (file)
Binary files a/po/ro.gmo and b/po/ro.gmo differ
index 74f03c8..789b2ee 100644 (file)
--- a/po/ro.po
+++ b/po/ro.po
@@ -9,84 +9,239 @@ msgid ""
 msgstr ""
 "Project-Id-Version: psmisc-21.6pre1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
 "PO-Revision-Date: 2005-02-24 12:00-0500\n"
 "Last-Translator: Laurentiu Buzdugan <lbuz@rolix.org>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
+"Language: ro\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-2\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: src/killall.c:74
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+
+#: src/fuser.c:160
+#, fuzzy, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (psmisc) %s\n"
+
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2002 Werner Almesberger ºi Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc vine fãrã ABSOLUT NICI O GARANÞIE.\n"
+"Acesta este software liber, ºi sunteþi benevenit sã îl redistribuiþi\n"
+"în conformitate cu termenii GNU General Public License.\n"
+"Pentru informaþii suplimentare referitoare la aceste chestiuni,\n"
+"vedeþi fiºierele numite COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr ""
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr ""
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr ""
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr ""
+
+#: src/fuser.c:972
+#, fuzzy, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s/%s: specificaþie invalidã\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr ""
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr ""
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr ""
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr ""
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr ""
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+
+#: src/fuser.c:1246
+#, fuzzy, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr ""
+"\n"
+"%*s UTILIZATOR  PID ACCES  COMANDÃ\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr ""
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr ""
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr ""
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Terminã process %d ? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr ""
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr ""
+
+#: src/fuser.c:1671
+#, fuzzy, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "nu pot gãsi numerele dispozitivelor socket-urilor"
+
+#: src/killall.c:100
 #, c-format
 msgid "Kill %s(%s%d) ? (y/N) "
 msgstr "Terminã %s(%s%d) ? (y/N) "
 
-#: src/killall.c:77
+#: src/killall.c:103
 #, fuzzy, c-format
 msgid "Signal %s(%s%d) ? (y/N) "
 msgstr "Terminã %s(%s%d) ? (y/N) "
 
-#: src/killall.c:121
+#: src/killall.c:211
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid "killall: Cannot get UID from process status\n"
 msgstr ""
 
-#: src/killall.c:147 src/killall.c:682
+#: src/killall.c:237
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid "killall: Bad regular expression: %s\n"
 msgstr ""
 
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
 msgstr "am ignorat potrivirea parþialã %s(%d)\n"
 
-#: src/killall.c:445
+#: src/killall.c:562
 #, c-format
 msgid "Killed %s(%s%d) with signal %d\n"
 msgstr "Am terminat %s(%s%d) cu semnalul %d\n"
 
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: nici un proces nu a fost terminat\n"
-
-#: src/killall.c:497
+#: src/killall.c:576
 #, fuzzy, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
-msgstr ""
-"folosire: pidof [ -eg ] nume ...\n"
-"          pidof -V\n"
-"\n"
-"    -e      cere potrivire exactã pentru nume foarte lungi;\n"
-"            ignorã dacã linia de comandã nu este disponibilã\n"
-"    -g      aratã ID-ul grupului procesului în loc de ID-ul procesului\n"
-"    -V      afiºeazã informaþii despre versiune\n"
-"\n"
+msgid "%s: no process found\n"
+msgstr "%s: nici un proces nu a fost terminat\n"
 
-#: src/killall.c:511
+#: src/killall.c:615
 #, fuzzy, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
 "folosire: killall [-s sid] [-c context] [ -egiqvw ] [ -signal ] nume ...\n"
 
-#: src/killall.c:514
+#: src/killall.c:618
 #, fuzzy, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
 msgstr "folosire: killall [ OPÞIUNI ] [ -- ] nume ...\n"
 
-#: src/killall.c:517
+#: src/killall.c:621
 #, fuzzy, c-format
 msgid ""
 "       killall -l, --list\n"
@@ -95,6 +250,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -120,7 +277,7 @@ msgstr ""
 "  -w,--wait           aºteaptã ca procesele sã termine\n"
 "\n"
 
-#: src/killall.c:533
+#: src/killall.c:639
 #, fuzzy, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
@@ -131,279 +288,230 @@ msgstr ""
 "   (-s, -c sunt mutual exlusive ºi trebuie sã preceadã celelalte argumente\n"
 "\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, fuzzy, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
 "Copyright (C) 1993-2002 Werner Almesberger ºi Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
 msgstr ""
-"PSmisc vine fãrã ABSOLUT NICI O GARANÞIE.\n"
-"Acesta este software liber, ºi sunteþi benevenit sã îl redistribuiþi\n"
-"în conformitate cu termenii GNU General Public License.\n"
-"Pentru informaþii suplimentare referitoare la aceste chestiuni,\n"
-"vedeþi fiºierele numite COPYING.\n"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
 msgstr ""
 
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Numãr maxim de nume este %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
+#: src/killall.c:798
 #, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s este gol (nu este montat ?)\n"
+msgid "Bad regular expression: %s\n"
+msgstr ""
 
-#: src/fuser.c:89
+#: src/killall.c:830
 #, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"folosire: fuser [ -a | -s | -c ] [ -n spaþiu ] [ -signal ] [ -kimuv ] "
-"nume ...\n"
-"             [ - ] [ -n spaþiu ] [ -signal ] [ -kimuv ] nume ...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"\n"
-"    -a        afiºeazã ºî fiºierele nefolosite\n"
-"    -c        FS montat(e)\n"
-"    -f        ignorat pe tãcute (pentru compatibilitate POSIX)\n"
-"    -k        terminã procesele ce acceseazã acel fiºier\n"
-"    -i        întreabã înainte de a termina (ignorat fãrã -k)\n"
-"    -l        listeazã numele semnalelor\n"
-"    -m        FS montat(e)\n"
-"    -n spaþiu cautã în numele de spaþiu specificat (fiºier, udp, sau tcp)\n"
-"    -s        operare pe tãcute\n"
-"    -signal   trimite semnal în loc de SIGKILL\n"
-"    -u        afiºeazã ID-uri utilizator\n"
-"    -v        ieºire detaliatã\n"
-"    -V        afiºeazã informaþii despre versiune\n"
-"    -4        cautã numai socket-urile IPv4\n"
-"    -6        cautã numai socket-urile IPv6\n"
-"    -         reseteazã opþiuni\n"
-"\n"
-"  nume udp/tcp: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Numãr maxim de nume este %d\n"
 
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s este gol (nu este montat ?)\n"
 
-#: src/fuser.c:113
+#: src/peekfd.c:96
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
+msgid "Error attaching to pid %i\n"
 msgstr ""
 
-#: src/fuser.c:120
+#: src/peekfd.c:104
 #, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
-
-#: src/fuser.c:147
-#, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "pstree (psmisc) %s\n"
 
-#: src/fuser.c:283
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
 
-#: src/fuser.c:316
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
 
-#: src/fuser.c:476
-#, c-format
-msgid "Cannot resolve local port %s: %s\n"
-msgstr ""
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (psmisc) %s\n"
 
-#: src/fuser.c:492
-#, c-format
-msgid "Unknown local port AF %d\n"
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 1993-2002 Werner Almesberger ºi Craig Small\n"
+"\n"
 
-#: src/fuser.c:553
-#, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+#: src/prtstat.c:78
+msgid "running"
 msgstr ""
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
+#: src/prtstat.c:80
+msgid "sleeping"
 msgstr ""
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
+#: src/prtstat.c:82
+msgid "disk sleep"
 msgstr ""
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/prtstat.c:84
+msgid "zombie"
 msgstr ""
 
-#: src/fuser.c:840
-msgid "No process specification given"
+#: src/prtstat.c:86
+msgid "traced"
 msgstr ""
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
+#: src/prtstat.c:88
+msgid "paging"
 msgstr ""
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
+#: src/prtstat.c:90
+msgid "unknown"
 msgstr ""
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
 
-#: src/fuser.c:901
-#, fuzzy, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
 "\n"
-"%*s UTILIZATOR  PID ACCES  COMANDÃ\n"
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
 msgstr ""
 
-#: src/fuser.c:1019
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
 
-#: src/fuser.c:1113
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
 
-#: src/fuser.c:1149
+#: src/prtstat.c:189
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
 msgstr ""
 
-#: src/fuser.c:1198
+#: src/prtstat.c:199
 #, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "Terminã process %d ? (y/N) "
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
 
-#: src/fuser.c:1222
-#, c-format
-msgid "Could not kill process %d: %s\n"
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
 msgstr ""
 
-#: src/fuser.c:1237
+#: src/prtstat.c:226
 #, c-format
-msgid "Cannot open a network socket.\n"
+msgid "Process with pid %d does not exist.\n"
 msgstr ""
 
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "nu pot gãsi numerele dispozitivelor socket-urilor"
-
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
+msgid "Unable to open stat file for pid %d (%s)\n"
 msgstr ""
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "pstree (psmisc) %s\n"
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
 msgstr ""
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
 msgstr ""
 
-#: src/pstree.c:374
-#, fuzzy, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "MAX_DEPTH nu este suficient de mare.\n"
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s este gol (nu este montat ?)\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:830
 #, fuzzy, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "usage: pstree [ -a ] [ -c ] [ -h | -H pid ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
 "              [ -A | -G | -U ] [ pid | user]\n"
@@ -420,53 +528,56 @@ msgstr ""
 "    -p     afiºeazã PID-urile; implicã -c\n"
 "    -u     afiºeazã tranziþiilr uid\n"
 
-#: src/pstree.c:768
+#: src/pstree.c:850
 #, fuzzy, c-format
-msgid "    -Z     show SELinux security contexts\n"
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr ""
 "    -s     aratã SID-urile Flask\n"
 "    -x     aratã contextele de securitate Flask\n"
 
-#: src/pstree.c:771
-#, fuzzy, c-format
+#: src/pstree.c:852
+#, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"   -U      foloseºte caractere de desenare UTF-8 (Unicode)\n"
-"   -V      afiºeazã informaþii despre versiune\n"
-"   pid     începe la pid, implicit 1 (init)\n"
-"   utiliz  aratã numai arborii cu rãdacinã la procesele acestui utiliz"
-"[ator]\n"
-"\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, fuzzy, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (psmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2002 Werner Almesberger ºi Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "TERM nu este setat\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Nu pot obþine capabilitãþile terminalului\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Nici un utilizator cu acest nume: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Nu a fost gãsit nici un proces.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "Apãsaþi tasta return pentru a închide\n"
@@ -476,6 +587,25 @@ msgstr "Ap
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: semnal necunoscut; %s -l listeazã semnalele.\n"
 
+#~ msgid ""
+#~ "usage: pidof [ -eg ] name ...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "folosire: pidof [ -eg ] nume ...\n"
+#~ "          pidof -V\n"
+#~ "\n"
+#~ "    -e      cere potrivire exactã pentru nume foarte lungi;\n"
+#~ "            ignorã dacã linia de comandã nu este disponibilã\n"
+#~ "    -g      aratã ID-ul grupului procesului în loc de ID-ul procesului\n"
+#~ "    -V      afiºeazã informaþii despre versiune\n"
+#~ "\n"
+
 #~ msgid "%s: SID (%s) must be numeric\n"
 #~ msgstr "%s: SID (%s) trebuie sã fie numeric\n"
 
@@ -506,8 +636,76 @@ msgstr "%s: semnal necunoscut; %s -l listeaz
 #~ msgid "kernel swap   "
 #~ msgstr "kernel swap   "
 
+#~ msgid ""
+#~ "usage: fuser [ -a | -s | -c ] [ -n space ] [ -signal ] [ -kimuv ] "
+#~ "name ...\n"
+#~ "             [ - ] [ -n space ] [ -signal ] [ -kimuv ] name ...\n"
+#~ "       fuser -l\n"
+#~ "       fuser -V\n"
+#~ "\n"
+#~ "    -a        display unused files too\n"
+#~ "    -c        mounted FS\n"
+#~ "    -f        silently ignored (for POSIX compatibility)\n"
+#~ "    -k        kill processes accessing that file\n"
+#~ "    -i        ask before killing (ignored without -k)\n"
+#~ "    -l        list signal names\n"
+#~ "    -m        mounted FS\n"
+#~ "    -n space  search in the specified name space (file, udp, or tcp)\n"
+#~ "    -s        silent operation\n"
+#~ "    -signal   send signal instead of SIGKILL\n"
+#~ "    -u        display user ids\n"
+#~ "    -v        verbose output\n"
+#~ "    -V        display version information\n"
+#~ "    -4        search IPv4 sockets only\n"
+#~ "    -6        search IPv6 sockets only\n"
+#~ "    -         reset options\n"
+#~ "\n"
+#~ "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+#~ "\n"
+#~ msgstr ""
+#~ "folosire: fuser [ -a | -s | -c ] [ -n spaþiu ] [ -signal ] [ -kimuv ] "
+#~ "nume ...\n"
+#~ "             [ - ] [ -n spaþiu ] [ -signal ] [ -kimuv ] nume ...\n"
+#~ "       fuser -l\n"
+#~ "       fuser -V\n"
+#~ "\n"
+#~ "    -a        afiºeazã ºî fiºierele nefolosite\n"
+#~ "    -c        FS montat(e)\n"
+#~ "    -f        ignorat pe tãcute (pentru compatibilitate POSIX)\n"
+#~ "    -k        terminã procesele ce acceseazã acel fiºier\n"
+#~ "    -i        întreabã înainte de a termina (ignorat fãrã -k)\n"
+#~ "    -l        listeazã numele semnalelor\n"
+#~ "    -m        FS montat(e)\n"
+#~ "    -n spaþiu cautã în numele de spaþiu specificat (fiºier, udp, sau "
+#~ "tcp)\n"
+#~ "    -s        operare pe tãcute\n"
+#~ "    -signal   trimite semnal în loc de SIGKILL\n"
+#~ "    -u        afiºeazã ID-uri utilizator\n"
+#~ "    -v        ieºire detaliatã\n"
+#~ "    -V        afiºeazã informaþii despre versiune\n"
+#~ "    -4        cautã numai socket-urile IPv4\n"
+#~ "    -6        cautã numai socket-urile IPv6\n"
+#~ "    -         reseteazã opþiuni\n"
+#~ "\n"
+#~ "  nume udp/tcp: [local_port][,[rmt_host][,[rmt_port]]]\n"
+#~ "\n"
+
 #~ msgid "ignoring -m in name space \"%s\"\n"
 #~ msgstr "ignor -m în spaþiul de nume \"%s\"\n"
 
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: specificaþie invalidã\n"
+#~ msgid "MAX_DEPTH not big enough.\n"
+#~ msgstr "MAX_DEPTH nu este suficient de mare.\n"
+
+#~ msgid ""
+#~ "    -U     use UTF-8 (Unicode) line drawing characters\n"
+#~ "    -V     display version information\n"
+#~ "    pid    start at pid, default 1 (init)\n"
+#~ "    user   show only trees rooted at processes of that user\n"
+#~ "\n"
+#~ msgstr ""
+#~ "   -U      foloseºte caractere de desenare UTF-8 (Unicode)\n"
+#~ "   -V      afiºeazã informaþii despre versiune\n"
+#~ "   pid     începe la pid, implicit 1 (init)\n"
+#~ "   utiliz  aratã numai arborii cu rãdacinã la procesele acestui utiliz"
+#~ "[ator]\n"
+#~ "\n"
index 00c0d8d..2c7d871 100644 (file)
Binary files a/po/ru.gmo and b/po/ru.gmo differ
index 3a69aac..b1dabbc 100644 (file)
--- a/po/ru.po
+++ b/po/ru.po
+# translation of psmisc-22.11-pre1.ru.po to Russian
 # Russian Translation for psmisc files
-# Copyright (C) 2002 Free Software Foundation, Inc.
-# Ilya Evseev <evseev@altlinux.ru>, 2005.
+# Copyright (C) 2002, 2009, 2010 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
 #
+# Ilya Evseev <evseev@altlinux.ru>, 2005.
+# Yuri Kozlov <yuray@komyakino.ru>, 2009, 2010, 2012.
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 20.6\n"
+"Project-Id-Version: psmisc 22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2005-03-15 02:53+0300\n"
-"Last-Translator: Ilya Evseev <evseev@altlinux.ru>\n"
-"Language-Team: woolfy <woolfy@users.sourceforge.net>\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-02 08:56+0400\n"
+"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
+"Language-Team: Russian <gnu@mx.ru>\n"
+"Language: ru\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=KOI8-R\n"
-"Content-Transfer-Encoding: 8-bit\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Lokalize 1.4\n"
+"Plural-Forms:  nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
-#: src/killall.c:74
+#: src/fuser.c:133
 #, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) ÚÁ×ÅÒÛÉÔØ? (y/N) "
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Использование: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n ОБЛАСТЬ]\n"
+"                     [-k [-i] [-СИГНАЛ]] ИМЯ…\n"
+"     fuser -l\n"
+"     fuser -V\n"
+"Показывает какие процессы используют указанные файлы, сокеты\n"
+"или файловые системы.\n"
+"\n"
+"    -a,-all            показывать также неиспользуемые файлы\n"
+"    -i,--interactive   спрашивать подтверждение завершения (игнор. без -k)\n"
+"    -k,--kill          завершить процессы, обращающиеся к заданному файлу\n"
+"    -l,--list-signals  показать допустимые имена сигналов\n"
+"    -m,--mount         показать процессы, использующие указанные файловые\n"
+"                       системы или блочные устройства\n"
+"  -M,--ismountpoint    выполнять запрос, только если ИМЯ является точкой\n"
+"                       монтирования\n"
+"    -n,--namespace ОБЛАСТЬ\n"
+"                     искать в указанном пространстве имён (file, udp или "
+"tcp)\n"
+"    -s,--silent        не выводить сообщения\n"
+"    -СИГНАЛ            посылать указанный сигнал вместо SIGKILL\n"
+"    -u,--user          показывать идентификатор пользователя (uid)\n"
+"    -v,--verbose       включить подробные сообщения\n"
+"    -w,--writeonly     завершать только процессы с правом на запись\n"
+"    -V,--version       показать информацию о версии\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"    -4,--ipv4          поиск только среди сокетов IPv4\n"
+"    -6,--ipv6          поиск только среди сокетов IPv6\n"
 
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "%s(%s%d) ÚÁ×ÅÒÛÉÔØ? (y/N) "
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"    -                  отменить предыдущие параметры\n"
+"\n"
+"  Имена udp/tcp: [локальный_порт][,[удалённый_узел][,[удалённый_порт]]]\n"
+"\n"
 
-#: src/killall.c:121
+#: src/fuser.c:160
 #, c-format
-msgid "Cannot get UID from process status\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
 
-#: src/killall.c:147 src/killall.c:682
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "Bad regular expression: %s\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
 msgstr ""
+"PSmisc поставляется БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.\n"
+"Это свободная программа; вы можете распространять её на условиях\n"
+"Универсальной общественной лицензии GNU.\n"
+"Подробная информация об этих условиях приведена в файле COPYING.\n"
 
-#: src/killall.c:343
+#: src/fuser.c:184
 #, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "ÉÇÎÏÒÉÒÕÀ ÎÅÐÏÌÎÏÅ ÓÏ×ÐÁÄÅÎÉÅ %s(%d)\n"
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Не удалось открыть каталог /proc: %s\n"
 
-#: src/killall.c:445
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) ÚÁ×ÅÒۣΠÓÉÇÎÁÌÏÍ %d\n"
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Не удалось выделить память для проверяемого proc: %s\n"
 
-#: src/killall.c:459
+#: src/fuser.c:478
 #, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: ÎÅ ÚÁ×ÅÒۣΠÎÉ ÏÄÉΠÐÒÏÃÅÓÓ\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Указанное имя файла %s не существует.\n"
 
-#: src/killall.c:497
-#, fuzzy, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Не удалось выполнить функцию stat для %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Не удалось определить имя локального порта %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Неизвестный локальный порт AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Не удалось открыть файл протокола \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: неправильный параметр %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Для параметра области требуется значение."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Неверное имя области"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Вы можете использовать файлы только с параметрами mountpoint"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Не указан процесс"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
 msgstr ""
-"óÉÎÔÁËÓÉÓ: pidof [ -eg ] ÉÍÑ-ÐÒÏÃÅÓÓÁ ...\n"
-"           pidof -V\n"
-"\n"
-"   -e   ÔÒÅÂÏ×ÁÔØ ÐÏÌÎÏÇÏ ÓÏ×ÐÁÄÅÎÉÑ ÄÌÑ ÏÞÅÎØ ÄÌÉÎÎÙÈ ÉÍ£Î;\n"
-"        ÉÇÎÏÒÉÒÏ×ÁÔØ, ÅÓÌÉ ËÏÍÁÎÄÎÁÑ ÓÔÒÏËÁ ÎÅÄÏÓÔÕÐÎÁ\n"
-"   -g   ÐÏËÁÚÙ×ÁÔØ ÉÄÅÎÔÉÆÉËÁÔÏÒ ÇÒÕÐÐÙ ÐÒÏÃÅÓÓÁ ×ÍÅÓÔÏ ÉÄÅÎÔÉÆÉËÁÔÏÒÁ "
-"ÐÒÏÃÅÓÓÁ\n"
-"   -V   ÐÏËÁÚÁÔØ ×ÅÒÓÉÀ ÐÒÏÇÒÁÍÍÙ\n"
-"\n"
+"Параметр показа всех файлов нельзя использовать вместе с параметром "
+"отключения сообщений."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Нельзя выполнять поиск только по сокетам IPv4 и IPv6 одновременно"
 
-#: src/killall.c:511
-#, fuzzy, c-format
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s ПОЛЬЗ-ЛЬ    PID ДОСТУП КОМАНДА\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(неизвестно)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Не удалось выполнить функцию stat для файла %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Не удалось открыть /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Завершить процесс %d? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Не удалось завершить процесс %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Не удалось открыть сетевой сокет.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Не удалось найти номер устройства сокета.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Завершить %s(%s%d)? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Послать сигнал %s(%s%d)? (y/N) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: не удалось получить UID из состояния процесса\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: неправильное регулярное выражение: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: пропуск частичного совпадения %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) завершён сигналом %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: процесс не найден\n"
+
+#: src/killall.c:615
+#, c-format
 msgid ""
 "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
 msgstr ""
-"óÉÎÔÁËÓÉÓ: killall [-s sid] [-c context] [ -egiqvw ] [ -signal ] name ...\n"
+"Использование: killall [-Z КОНТЕКСТ] [-u ПОЛЬЗОВАТЕЛЬ]\n"
+"                       [ -eIgiqrvw ] [ -СИГНАЛ ] ИМЯ…\n"
 
-#: src/killall.c:514
-#, fuzzy, c-format
+#: src/killall.c:618
+#, c-format
 msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "óÉÎÔÁËÓÉÓ: killall [ OPTIONS ] [ -- ] name ...\n"
+msgstr "Использование: killall [ПАРАМЕТР]… [--] ИМЯ…\n"
 
-#: src/killall.c:517
-#, fuzzy, c-format
+#: src/killall.c:621
+#, c-format
 msgid ""
 "       killall -l, --list\n"
 "       killall -V, --version\n"
@@ -92,6 +282,8 @@ msgid ""
 "  -e,--exact          require exact match for very long names\n"
 "  -I,--ignore-case    case insensitive process name match\n"
 "  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
 "  -i,--interactive    ask for confirmation before killing\n"
 "  -l,--list           list all known signal names\n"
 "  -q,--quiet          don't print complaints\n"
@@ -103,414 +295,408 @@ msgid ""
 "  -w,--wait           wait for processes to die\n"
 msgstr ""
 "       killall -l, --list\n"
-"       killall -V --version\n"
-"\n"
-"  -e,--exact          ÔÒÅÂÏ×ÁÔØ ÐÏÌÎÏÇÏ ÓÏ×ÐÁÄÅÎÉÑ ÄÌÑ ÏÞÅÎØ ÄÌÉÎÎÙÈ ÉÍ£Î\n"
-"  -I,--ignore-case    ÉÇÎÏÒÉÒÏ×ÁÔØ ÒÅÇÉÓÔÒ ÓÉÍ×ÏÌÏ× × ÉÍÅÎÁÈ ÐÒÏÃÅÓÓÏ×\n"
-"  -g,--process-group  ÚÁ×ÅÒÛÁÔØ ÇÒÕÐÐÕ ÐÒÏÃÅÓÓÁ × ÄÏÐÏÌÎÅÎÉÅ Ë ÓÁÍÏÍÕ "
-"ÐÒÏÃÅÓÓÕ\n"
-"  -i,--interactive    ÚÁÐÒÁÛÉ×ÁÔØ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ ÐÅÒÅÄ ÚÁ×ÅÒÛÅÎÉÅÍ ÐÒÏÃÅÓÓÏ×\n"
-"  -l,--list           ×Ù×ÅÓÔÉ ÓÐÉÓÏË ÄÏÐÕÓÔÉÍÙÈ ÉͣΠÓÉÇÎÁÌÏ×\n"
-"  -q,--quiet          ÏÔËÌÀÞÉÔØ ÌÉÛÎÉÅ ÓÏÏÂÝÅÎÉÑ\n"
-"  -s,--signal         ÐÏÓÙÌÁÔØ ÕËÁÚÁÎÎÙÊ ÓÉÇÎÁÌ ×ÍÅÓÔÏ SIGTERM\n"
-"  -v,--verbose        Õ×ÅÄÏÍÌÑÔØ Ï ÕÓÐÅÛÎÏÊ ÏÔÐÒÁ×ËÅ ÓÉÇÎÁÌÏ×\n"
-"  -V,--version        ÐÏËÁÚÁÔØ ÎÏÍÅÒ ×ÅÒÓÉÉ\n"
-"  -w,--wait           ÏÖÉÄÁÔØ ÚÁ×ÅÒÛÅÎÉÑ ÐÒÏÃÅÓÓÏ×\n"
+"       killall -V, --version\n"
 "\n"
-
-#: src/killall.c:533
-#, fuzzy, c-format
+"  -e,--exact           требовать полного совпадения для очень длинных имён\n"
+"  -I,--ignore-case     игнорировать регистр символов в именах процессов\n"
+"  -g,--process-group   завершать группу процесса вместо одного процесса\n"
+"  -y,--younger-than    завершить процессы, новее чем заданного ВРЕМЕНИ\n"
+"  -o,--older-than      завершить процессы, старее чем заданного ВРЕМЕНИ\n"
+"  -i,--interactive     запрашивать подтверждение перед завершением "
+"процессов\n"
+"  -l,--list            вывести список допустимых имён сигналов\n"
+"  -q,--quiet           не показывать подробные сообщения\n"
+"  -r,--regexp          рассматривать ИМЯ как расширенное регулярное "
+"выражение\n"
+"  -s,--signal СИГНАЛ   посылать указанный СИГНАЛ, а не SIGTERM\n"
+"  -u,--user ПОЛЬЗВ      завершить процесс(ы), запущенный только "
+"ПОЛЬЗОВАТЕЛЕМ\n"
+"  -v,--verbose         уведомлять только при успешной отправке сигнала\n"
+"  -V,--version         показать информацию о версии\n"
+"  -w,--wait            ожидать завершения процессов\n"
+
+#: src/killall.c:639
+#, c-format
 msgid ""
 "  -Z,--context REGEXP kill only process(es) having context\n"
 "                      (must precede other arguments)\n"
 msgstr ""
-"  -d,--sid            ÚÁ×ÅÒÛÁÔØ ÔÏÌØËÏ ÐÒÏÃÅÓÓÙ(Ù) Ó ÕËÁÚÁÎÎÙÍ SID\n"
-"  -c,--context        ÚÁ×ÅÒÛÁÔØ ÔÏÌØËÏ ÐÒÏÃÅÓÓÙ(Ù) Ó ÕËÁÚÁÎÎÙÍ SCONTEXT\n"
-"   (-s, -c ×ÚÁÉÍÎÏ ÉÓËÌÀÞÁÀÔ ÄÒÕÇ ÄÒÕÇÁ É ÄÏÌÖÎÙ ÂÙÔØ ÐÅÒ×ÙÍ ÁÒÇÕÍÅÎÔÏÍ)\n"
+"  -Z,--context РЕГВЫР  завершать только процессы(ы) с подходящим контекстом\n"
+"                       (должен указываться раньше остальных параметров)\n"
 "\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/killall.c:651
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "неправильный формат времени"
 
-#: src/killall.c:656
+#: src/killall.c:767
 #, c-format
 msgid "Cannot find user %s\n"
-msgstr ""
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "ëÏÌÉÞÅÓÔ×Ï ÉͣΠÎÅ ÍÏÖÅÔ ÐÒÅ×ÙÛÁÔØ %d\n"
+msgstr "Пользователь %s не найден\n"
 
-#: src/killall.c:720 src/pstree.c:710
+#: src/killall.c:798
 #, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s ÐÕÓÔ (ÎÅ ÓÍÏÎÔÉÒÏ×ÁΠ?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"óÉÎÔÁËÓÉÓ: fuser [ -a | -s ] [ -n ÏÂÌÁÓÔØ ] [ -signal ] [ -kimuv ] ÉÍÑ ...\n"
-"                 [ - ] [ -n ÏÂÌÁÓÔØ ] [ -signal ] [ -kimuv ] ÉÍÑ ...\n"
-"           fuser -l\n"
-"           fuser -V\n"
-"\n"
-"    -a         ÐÏËÁÚÙ×ÁÔØ ÔÁËÖÅ ÎÅÉÓÐÏÌØÚÕÅÍÙÅ ÆÁÊÌÙ\n"
-"    -f         ÉÇÎÏÒÉÒÕÅÔÓÑ (ÄÌÑ ÓÏ×ÍÅÓÔÉÍÏÓÔÉ Ó POSIX)\n"
-"    -k         ÚÁ×ÅÒÛÉÔØ ÐÒÏÃÅÓÓÙ, ÏÔËÒÙ×ÛÉÅ ÄÁÎÎÙÊ ÆÁÊÌ\n"
-"    -i         ÚÁÐÒÁÛÉ×ÁÔØ ÐÏÄÔ×ÅÒÖÄÅÎÉÅ (ÅÓÌÉ ÕËÁÚÁΠ-k)\n"
-"    -l         ÐÏËÁÚÁÔØ ÄÏÐÕÓÔÉÍÙÅ ÉÍÅÎÁ ÓÉÇÎÁÌÏ×\n"
-"    -m         ÓÍÏÎÔÉÒÏ×ÁÎÎÙÅ ÆÁÊÌÏ×ÙÅ ÓÉÓÔÅÍÙ\n"
-"    -n ÏÂÌÁÓÔØ ÉÓËÁÔØ × ÕËÁÚÁÎÎÏÍ ÐÒÏÓÔÒÁÎÓÔ×Å ÉͣΠ(file, udp, ÉÌÉ tcp)\n"
-"    -s         ÏÔËÌÀÞÉÔØ ÓÏÏÂÝÅÎÉÑ\n"
-"    -signal    ÐÏÓÙÌÁÔØ ÕËÁÚÁÎÎÙÊ ÓÉÇÎÁÌ ×ÍÅÓÔÏ SIGKILL\n"
-"    -u         ÐÏËÁÚÙ×ÁÔØ ÉÄÅÎÔÉÆÉËÁÔÏÒ ÐÏÌØÚÏ×ÁÔÅÌÑ (uid)\n"
-"    -v         ×ËÌÀÞÉÔØ ÐÏÄÒÏÂÎÙÅ ÓÏÏÂÝÅÎÉÑ\n"
-"    -V         ÐÏËÁÚÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ×ÅÒÓÉÉ\n"
-"    -4         ÉÓËÁÔØ ÔÏÌØËÏ ÓÏËÅÔÙ ÓÅÍÅÊÓÔ×Á IPv4\n"
-"    -6         ÉÓËÁÔØ ÔÏÌØËÏ ÓÏËÅÔÙ ÓÅÍÅÊÓÔ×Á IPv6\n"
-"    -          ÓÂÒÏÓÉÔØ ÐÒÅÄÙÄÕÝÉÅ ÏÐÃÉÉ\n"
-"\n"
-"  éÍÅÎÁ udp/tcp: [ÌÏËÁÌØÎÙÊ_ÐÏÒÔ][,[ÕÄÁÌ£ÎÎÙÊ_ÈÏÓÔ][,[ÕÄÁÌ£ÎÎÙÊ_ÐÏÒÔ]]]\n"
-"\n"
+msgid "Bad regular expression: %s\n"
+msgstr "Неправильное регулярное выражение: %s\n"
 
-#: src/fuser.c:109
+#: src/killall.c:830
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: количество имён не может превышать %d\n"
 
-#: src/fuser.c:113
+#: src/killall.c:835
 #, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, fuzzy, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: в %s нет записей о процессах (не смонтирован?)\n"
 
-#: src/fuser.c:147
+#: src/peekfd.c:96
 #, c-format
-msgid "Cannot open /proc directory: %s\n"
-msgstr ""
+msgid "Error attaching to pid %i\n"
+msgstr "Ошибка присоединения к процессу с pid %i\n"
 
-#: src/fuser.c:283
+#: src/peekfd.c:104
 #, c-format
-msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr ""
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
 
-#: src/fuser.c:316
+#: src/peekfd.c:106
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 msgstr ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/peekfd.c:116
 #, c-format
-msgid "Cannot stat %s: %s\n"
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
 msgstr ""
+"Использование: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 в потоках не сбрасывается 8-й бит.\n"
+"    -n не отображать fd заголовки при чтении/записи.\n"
+"    -c наблюдать также за всеми новыми дочерними процессами.\n"
+"    -d удалять повторяющиеся операции чтения/записи при выводе.\n"
+"    -V вывести информацию о версии.\n"
+"    -h вывести эту справку.\n"
+"\n"
+"  Нажмите CTRL-C для завершения.\n"
 
-#: src/fuser.c:476
+#: src/prtstat.c:54
 #, c-format
-msgid "Cannot resolve local port %s: %s\n"
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
 msgstr ""
+"Использование: prtstat [параметры] PID …\n"
+"       prtstat -V\n"
+"Выводит информацию о процессе\n"
+"    -r,--raw       вывести информацию в необработанном виде\n"
+"    -V,--version   вывести информацию о версии и закончить работу\n"
 
-#: src/fuser.c:492
+#: src/prtstat.c:65
 #, c-format
-msgid "Unknown local port AF %d\n"
-msgstr ""
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
 
-#: src/fuser.c:553
+#: src/prtstat.c:66
 #, c-format
-msgid "Cannot open protocol file \"%s\": %s\n"
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 msgstr ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
 
-#: src/fuser.c:746
-msgid "Namespace option requires an argument."
-msgstr ""
+#: src/prtstat.c:78
+msgid "running"
+msgstr "работает"
 
-#: src/fuser.c:755
-msgid "Invalid namespace name"
-msgstr ""
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "спит"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr ""
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "спит из-за диска"
 
-#: src/fuser.c:840
-msgid "No process specification given"
-msgstr ""
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "зомби"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "трассируется"
 
-#: src/fuser.c:852
-msgid "all option cannot be used with silent option."
-msgstr ""
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "замещает страницы"
 
-#: src/fuser.c:856
-msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
-msgstr ""
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "неизвестно"
 
-#: src/fuser.c:901
+#: src/prtstat.c:164
 #, c-format
-msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
-
-#: src/fuser.c:926 src/fuser.c:951
-msgid "(unknown)"
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
 msgstr ""
+"Процесс: %-14s\t\tСостояние: %c (%s)\n"
+"  ЦП#:  %-3d\t\tTTY: %s\tНитей: %ld\n"
 
-#: src/fuser.c:1019
+#: src/prtstat.c:169
 #, c-format
-msgid "Cannot stat file %s: %s\n"
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
 msgstr ""
+"ID процесса, группы и сеанса\n"
+"  ID процесса: %d\t\t  ID родителя: %d\n"
+"    ID группы: %d\t\t ID сеанса: %d\n"
+"  ID T-группы: %d\n"
+"\n"
 
-#: src/fuser.c:1113
+#: src/prtstat.c:175
 #, c-format
-msgid "Cannot open /proc/net/unix: %s\n"
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
 msgstr ""
+"Страничные отказы\n"
+"  Этот процесс      (первичный вторичный): %8lu  %8lu\n"
+"  Дочерние процессы (первичный вторичный): %8lu  %8lu\n"
 
-#: src/fuser.c:1149
+#: src/prtstat.c:180
 #, c-format
-msgid "Cannot open /etc/mtab: %s\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
 msgstr ""
+"Процессорное время\n"
+"  Этот процесс      (польз. систем. гостевое blkio): %6.2f %6.2f %6.2f "
+"%6.2f\n"
+"  Дочерние процессы (польз. систем. гостевое):       %6.2f %6.2f %6.2f\n"
 
-#: src/fuser.c:1198
+#: src/prtstat.c:189
 #, c-format
-msgid "Kill process %d ? (y/N) "
-msgstr "úÁ×ÅÒÛÉÔØ ÐÒÏÃÅÓÓ %d ? (y/N) "
-
-#: src/fuser.c:1222
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Память\n"
+"  Vsize:        %-10s\n"
+"  RSS:          %-10s \t\t Предел RSS: %s\n"
+"  Начало кода:  %#-10lx\t\t Конец кода:  %#-10lx\n"
+"  Начало стека: %#-10lx\n"
+"  Указатель стека (ESP): %#10lx\t Указатель инстр. (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
 #, c-format
-msgid "Could not kill process %d: %s\n"
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
 msgstr ""
+"Планировка\n"
+"  Политика:     %s\n"
+"  Уступчивость: %ld \t\t Приоритет RT: %ld %s\n"
 
-#: src/fuser.c:1237
-#, c-format
-msgid "Cannot open a network socket.\n"
-msgstr ""
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf в print_stat завершилась неудачно.\n"
 
-#: src/fuser.c:1241
-#, fuzzy, c-format
-msgid "Cannot find socket's device number.\n"
-msgstr "ÎÅ ÍÏÇÕ ÎÁÊÔÉ ÎÏÍÅÒ ÕÓÔÒÏÊÓÔ×Á ÓÏËÅÔÁ"
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Процесс с pid %d не существует.\n"
 
-#: src/peekfd.c:75
+#: src/prtstat.c:228
 #, c-format
-msgid "Error attaching to pid %i\n"
-msgstr ""
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Не удалось открыть файл stat для pid %d (%s)\n"
 
-#: src/peekfd.c:83
-#, fuzzy, c-format
-msgid "peekfd (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "неправильный параметр"
 
-#: src/peekfd.c:85
-#, c-format
-msgid ""
-"Copyright (C) 2007 Trent Waddington\n"
-"\n"
-msgstr ""
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Вы должны указать не менее одного PID."
 
-#: src/peekfd.c:95
+#: src/prtstat.c:317
 #, c-format
-msgid ""
-"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
-"    -8 output 8 bit clean streams.\n"
-"    -n don't display read/write from fd headers.\n"
-"    -c peek at any new child processes too.\n"
-"    -d remove duplicate read/writes from the output.\n"
-"    -V prints version info.\n"
-"    -h prints this help.\n"
-"\n"
-"  Press CTRL-C to end output.\n"
-msgstr ""
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc не смонтирован, возможно выполнить stat /proc/self/stat.\n"
 
-#: src/pstree.c:374
-#, fuzzy, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "MAX_DEPTH ÄÏÌÖÅΠÂÙÔØ ÓÄÅÌÁΠÂÏÌØÛÅ.\n"
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s пуст (не смонтирован?)\n"
 
-#: src/pstree.c:750
-#, fuzzy, c-format
+#: src/pstree.c:830
+#, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
-msgstr ""
-"óÉÎÔÁËÓÉÓ: pstree [ -a ] [ -c ] [ -h | -H pid ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
-"                  [ -A | -G | -U ] [ pid | user]\n"
-"           pstree -V\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Использование: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ]\n"
+"              [ -g ] [ -u ] [ -A | -G | -U ] [ PID | ПОЛЬЗОВАТЕЛЬ ]\n"
+"       pstree -V\n"
+"Показывает дерево процессов.\n"
 "\n"
-"    -a     ÐÏËÁÚÙ×ÁÔØ ÓÏÄÅÒÖÉÍÏÅ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ\n"
-"    -A     ÉÓÐÏÌØÚÏ×ÁÔØ ÓÉÍ×ÏÌÙ ÐÓÅ×ÄÏÇÒÁÆÉËÉ ASCII ÄÌÑ ÒÉÓÏ×ÁÎÉÑ ÌÉÎÉÊ\n"
-"    -c     ÎÅ ÓÖÉÍÁÔØ ÏÄÉÎÁËÏ×ÙÅ ÐÏÄÄÅÒÅ×ØÑ\n"
-"    -h     ×ÙÄÅÌÑÔØ Ã×ÅÔÏÍ ÔÅËÕÝÉÊ ÐÒÏÃÅÓÓ É ÅÇÏ ÐÒÅÄËÏ×\n"
-"    -H pid ×ÙÄÅÌÑÔØ Ã×ÅÔÏÍ ÐÒÏÃÅÓÓ \"pid\" É ÅÇÏ ÐÒÅÄËÏ×\n"
-"    -G     ÉÓÐÏÌØÚÏ×ÁÔØ ÄÌÑ ÒÉÓÏ×ÁÎÉÑ ÌÉÎÉÊ ÕÐÒÁ×ÌÑÀÝÉÅ ÓÉÍ×ÏÌÙ ÔÅÒÍÉÎÁÌÁ "
-"VT100\n"
-"    -l     ÎÅ ÏÂÒÅÚÁÔØ ÄÌÉÎÎÙÅ ÓÔÒÏËÉ\n"
-"    -n     ÓÏÒÔÉÒÏ×ÁÔØ ×Ù×ÏÄ ÐÏ ÐÏÌÀ PID\n"
-"    -p     ÐÏËÁÚÙ×ÁÔØ ÉÄÅÎÔÉÆÉËÁÔÏÒÙ ÐÒÏÃÅÓÓÏ× (PIDs); ×ËÌÀÞÁÅÔ -c\n"
-"    -u     ÐÏËÁÚÙ×ÁÔØ ÐÅÒÅÈÏÄÙ ÉÄÅÎÔÉÆÉËÁÔÏÒÏ× ÐÏÌØÚÏ×ÁÔÅÌÅÊ (uid "
-"transitions)\n"
-
-#: src/pstree.c:768
-#, fuzzy, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr ""
-"    -s     ÐÏËÁÚÁÔØ Flask SIDs\n"
-"    -x     ÐÏËÁÚÁÔØ Flask security contexts\n"
-
-#: src/pstree.c:771
+"  -a, --arguments     показывать аргументы командной строки\n"
+"  -A, --ascii         использовать ASCII-символы для рисования линий\n"
+"  -c, --compact       не сжимать одинаковые поддеревья\n"
+"  -h, --highlight-all выделять цветом текущий процесс и его предков\n"
+"  -H PID,\n"
+"  --highlight-pid=PID выделить цветом процесс PID и его предков\n"
+"  -g, --show-pgids    показывать идентификаторы групп процесса;\n"
+"                      включает -c\n"
+"  -G, --vt100         использовать символы терминала VT100 для рисования "
+"линий\n"
+"  -l, --long          не обрезать длинные строки\n"
+"  -n, --numeric-sort  сортировать вывод по PID\n"
+"  -p, --show-pids     показывать идентификаторы процессов (PID); включает -"
+"c\n"
+"  -u, --uid-changes   показывать переходы идентификаторов пользователей\n"
+"  -U, --unicode       использовать символы UTF-8 (юникод) для рисования "
+"линий\n"
+"  -V, --version       показать информацию о версии\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     show         показывать контексты безопасности SELinux\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
+"  PID                 начинать от указанного PID; по умолчанию 1 (init)\n"
+"  ПОЛЬЗОВАТЕЛЬ        показать только дерево процессов указанного "
+"пользователя\n"
+"\n"
 
-#: src/pstree.c:778
-#, fuzzy, c-format
+#: src/pstree.c:859
+#, c-format
 msgid "pstree (PSmisc) %s\n"
-msgstr "fuser (psmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr "ðÅÒÅÍÅÎÎÁÑ ÏËÒÕÖÅÎÉÑ TERM ÎÅ ÕÓÔÁÎÏ×ÌÅÎÁ\n"
+msgstr "Переменная окружения TERM не установлена\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
-msgstr "îÅ ÍÏÇÕ ÏÐÒÅÄÅÌÉÔØ ÈÁÒÁËÔÅÒÉÓÔÉËÉ ÔÅÒÍÉÎÁÌÁ\n"
+msgstr "Не удалось определить характеристики терминала\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
-msgstr "îÅÉÚ×ÅÓÔÎÏÅ ÉÑ ÐÏÌØÚÏ×ÁÔÅÌÑ: %s\n"
+msgstr "Неизвестное имя пользователя: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
-msgstr "îÅ ÎÁÊÄÅÎÏ ÎÉ ÏÄÎÏÇÏ ÐÒÏÃÅÓÓÁ.\n"
+msgstr "Не найдено ни одного процесса.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
-msgstr "îÁÖÍÉÔÅ Enter ÄÌÑ ×ÙÈÏÄÁ\n"
+msgstr "Нажмите Enter для выхода\n"
 
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ÓÉÇÎÁÌ; %s -l ×Ù×ÏÄÉÔ ÓÐÉÓÏË ÄÏÓÔÕÐÎÙÈ ÓÉÇÎÁÌÏ×.\n"
-
-#~ msgid "%s: SID (%s) must be numeric\n"
-#~ msgstr "%s: SID (%s) ÄÏÌÖÅΠÂÙÔØ ÞÉÓÌÏ×ÙÍ\n"
-
-#~ msgid "-4 flag used but proc file %s is not readable\n"
-#~ msgstr "ÕËÁÚÁΠÆÌÁÇ -4, ÎÏ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ proc-ÆÁÊÌ %s ÎÅÄÏÓÔÕÐÅÎ\n"
-
-#~ msgid "-6 flag used but proc file %s is not readable\n"
-#~ msgstr "ÕËÁÚÁΠÆÌÁÇ -6, ÎÏ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÊ proc-ÆÁÊÌ %s ÎÅÄÏÓÔÕÐÅÎ\n"
-
-#~ msgid "kill %d"
-#~ msgstr "úÁ×ÅÒÛÅÎÉÅ ÐÒÏÃÅÓÓÁ %d"
-
-#~ msgid "No automatic removal. Please use  umount %s\n"
-#~ msgstr ""
-#~ "á×ÔÏÍÁÔÉÞÅÓËÏÅ ÏÔËÌÀÞÅÎÉÅ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ. éÓÐÏÌØÚÕÊÔÅ umount %s\n"
-
-#~ msgid "No automatic removal. Please use  swapoff %s\n"
-#~ msgstr ""
-#~ "á×ÔÏÍÁÔÉÞÅÓËÏÅ ÏÔËÌÀÞÅÎÉÅ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ. éÓÐÏÌØÚÕÊÔÅ swapoff %s\n"
-
-#~ msgid "Internal error (type %d)\n"
-#~ msgstr "÷ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ (ÔÉР%d)\n"
-
-#~ msgid "kernel mount  "
-#~ msgstr "Kernel mount  "
-
-#~ msgid "kernel loop   "
-#~ msgstr "Kernel loop   "
-
-#~ msgid "kernel swap   "
-#~ msgstr "Kernel swap   "
-
-#~ msgid "ignoring -m in name space \"%s\"\n"
-#~ msgstr "-m ÂÕÄÅÔ ÉÇÎÏÒÉÒÏ×ÁΠנÐÒÏÓÔÒÁÎÓÔ×Å ÉͣΠ\"%s\"\n"
-
-#~ msgid "%s/%s: invalid specification\n"
-#~ msgstr "%s/%s: ÎÅËÏÒÒÅËÔÎÙÊ ÆÏÒÍÁÔ\n"
+msgstr "%s: неизвестный сигнал; %s -l выводит список доступных сигналов.\n"
 
 #~ msgid ""
-#~ "    -U     use UTF-8 (Unicode) line drawing characters\n"
-#~ "    -V     display version information\n"
-#~ "    pid    start at pid, default 1 (init)\n"
-#~ "    user   show only trees rooted at processes of that user\n"
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
 #~ "\n"
 #~ msgstr ""
-#~ "    -U     ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÄÉÒÏ×ËÕ UTF-8 (Unicode) ÄÌÑ ÒÉÓÏ×ÁÎÉÑ ÌÉÎÉÊ\n"
-#~ "    -V     ÐÏËÁÚÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ×ÅÒÓÉÉ\n"
-#~ "    pid    ÉÄÅÎÔÉÆÉËÁÔÏÒ ËÏÒÎÅ×ÏÇÏ ÐÒÏÃÅÓÓÁ, ÐÏ ÕÍÏÌÞÁÎÉÀ 1 (init)\n"
-#~ "    user   ÐÏËÁÚÙ×ÁÔØ ÔÏÌØËÏ ÄÅÒÅ×ØÑ Ó ËÏÒÎÅ×ÙÍÉ ÐÒÏÃÅÓÓÁÍÉ,\n"
-#~ "           ÐÒÉÎÁÄÌÅÖÁÝÉÍÉ ÄÁÎÎÏÍÕ ÐÏÌØÚÏ×ÁÔÅÌÀ\n"
+#~ "Использование: pidof [ -eg ] ИМЯ…\n"
+#~ "               pidof -V\n"
+#~ "\n"
+#~ "   -e          требовать полного совпадения для очень длинных имён;\n"
+#~ "               игнорировать, если командная строка недоступна\n"
+#~ "   -g          показывать идентификатор группы вместо идентификатора "
+#~ "процесса\n"
+#~ "   -V          показать информацию о версии\n"
 #~ "\n"
 
-#~ msgid "No process references; use -v for the complete list\n"
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
 #~ msgstr ""
-#~ "Keine Prozess Referenzen; verwenden Sie -v fuer die komplette Liste\n"
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
diff --git a/po/sr.gmo b/po/sr.gmo
new file mode 100644 (file)
index 0000000..a0f4d78
Binary files /dev/null and b/po/sr.gmo differ
diff --git a/po/sr.po b/po/sr.po
new file mode 100644 (file)
index 0000000..3589b49
--- /dev/null
+++ b/po/sr.po
@@ -0,0 +1,687 @@
+# Serbian translation of psmisc.
+# Copyright (C) 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Мирослав Николић <miroslavnikolic@rocketmail.com>, 2012.
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc-22.17rc1\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-05-24 22:46+0200\n"
+"Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
+"Language-Team: Serbian <gnu@prevod.org>\n"
+"Language: sr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Употреба: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n РАЗМАК] [-k [-i] [-"
+"СИГНАЛ]] НАЗИВ...\n"
+"          fuser -l\n"
+"          fuser -V\n"
+"Приказује који процеси користе именоване датотеке, прикључке, или системе "
+"датотека.\n"
+"\n"
+"  -a,--all                такође приказује неупотребљене датотеке\n"
+"  -i,--interactive        пита пре него што убије (занемарено без -k)\n"
+"  -k,--kill               убија процесе приступајући именованој датотеци\n"
+"  -l,--list-signals       наводи називе доступног сигнала\n"
+"  -m,--mount              приказује све процесе користећи именоване системе "
+"датотека или блок уређај\n"
+"  -M,--ismountpoint       испуњава захтев само ако је НАЗИВ тачка качења\n"
+"  -n,--namespace ПРОСТОР  тражи у овим просторима назива (датотека, удп, или "
+"тцп)\n"
+"  -s,--silent             нечујна радња\n"
+"  -SIGNAL                 шаље овај сигнал уместо СИГУБИЈ\n"
+"  -u,--user               приказује ИБ корисника\n"
+"  -v,--verbose            опширан излаз\n"
+"  -w,--writeonly          убија само процесе са правом приступа\n"
+"  -V,--version            приказује обавештење о издању\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             тражи само ИПв4 прикључке\n"
+"  -6,--ipv6             тражи само ИПв6 прикључке\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     поново подешава опције\n"
+"\n"
+"  удп/тцп називе: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (ПСмисц) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Ауторска права (C) 1993-2010 Вернер Алмесбергер и Крег Смол\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"ПСмисц долази без БИЛО КАКВЕ ГАРАНЦИЈЕ.\n"
+"Ово је слободан софтвер, и можете да га расподељујете\n"
+"под одредбама ГНУ-ове Опште јавне лиценце.\n"
+"Да сазнате више о овоме, погледајте датотеку под називом „COPYING“.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Не могу да отворим „/proc“ директоријум: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Не могу да доделим меморију одговарајућем проку: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "Наведени назив датотеке %s не постоји.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Не могу да добијем податке о %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Не могу да решим локални прикључак %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Непознати локални порт АФ %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Не могу да отворим датотеку протокола „%s“: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: неисправна опција „%s“\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Опција простора назива захтева аргумент."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Неиспрван назив простора назива"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Можете само да користите датотеке са опцијама тачке качења"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Није дата одредница процеса"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "све опције не могу бити коришћене са тихом опцијом."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "Не можете да тражите само ИПв4 и само ИПв6 прикључке у исто време"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s КОРИСНИК        НАРЕДБА ПРИСТУПА ПИБ-у\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(непознато)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Не могу да добијем податке о датотеци %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Не могу да отворим „/proc/net/unix“: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Да убијем процес %d ? (y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Не могу да убијем процес %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Не могу да отворим мрежни прикључак.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Не могу да пронађем број уређаја прикључка.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Да убијем %s(%s%d) (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Да обавестим %s(%s%d) (y/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Не могу да добавим УИБ из стања процеса\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Лош регуларни израз: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "прескачем делимично поклапање %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Убио сам %s(%s%d) са сигналом %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: нисам пронашао процес\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Употреба: killall [-Z КОНТЕКСТ] [-u КОРИСНИК] [ -eIgiqrvw ] [ -СИГНАЛ ] "
+"НАЗИВ...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Употреба: killall [ОПЦИЈА]... [--] НАЗИВ...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact           захтева тачно поклапање за врло дуге називе\n"
+"  -I,--ignore-case     поклапа називе процеса без обзира на величину слова\n"
+"  -g,--process-group   убија групу процеса уместо процеса\n"
+"  -y,--younger-than    убија процесе који су млађи од ВРЕМЕНА\n"
+"  -o,--older-than      убија процесе који су старији од ВРЕМЕНА\n"
+"  -i,--interactive     тражи потврду пре убијања\n"
+"  -l,--list            исписује све познате називе сигнала\n"
+"  -q,--quiet           не исписује замерке\n"
+"  -r,--regexp          тумачи НАЗИВ као проширени регуларни израз\n"
+"  -s,--signal СИГНАЛ   шаље овај сигнал уместо СИГТЕРМ\n"
+"  -u,--user КОРИСНИК   убија само процес(е) радећи као КОРИСНИК\n"
+"  -v,--verbose         извештава ако је сигнал успешно послат\n"
+"  -V,--version         приказује обавештење о издању\n"
+"  -w,--wait            чека док процес не умре\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context РЕГИЗР убија само процес(е) који има(ју) контекст\n"
+"                      (мора да претходи другим аргументима)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Ауторска права (C) 1993-2010 Вернер Алмесбергер и Крег Смол\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Неисправни облик времена"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Не могу да пронађем корисника %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Лош регуларни израз: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Највећи број назива је %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s нема уносе процеса (није прикачено ?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Грешка приликом прикачињања пибу %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (ПСмисц) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"Ауторска права (C) 2007 Трент Вадингтон\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Употреба: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8   исписује чисте токове од 8 бита.\n"
+"    -n   не приказује читај/пиши из фд заглавља.\n"
+"    -c   такође осматра све нове подређене процесе.\n"
+"    -d   уклања двоструке читај/упиши из излаза.\n"
+"    -V   исписује податке о издању.\n"
+"    -h   исписује ову помоћ.\n"
+"\n"
+"  Притисните КТРЛ-Ц да зауставите излаз.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Употреба: prtstat [опција] ПИБ ...\n"
+"       prtstat -V\n"
+"Исписује податке о процесу\n"
+"    -r,--raw       Сиров приказ података\n"
+"    -V,--version   Приказује податке о издању и излази\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (ПСмисц) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Ауторска права (C) 2009 Крег Смол\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "покренут"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "успаван"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "диск‑спава"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "зомби"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "оцртан"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "остраничен"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "непознато"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Процес:     %-14s\t\tСтање: %c (%s)\n"
+"Процесор#:  %-3d\t\tТТУ: %s\tНити: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Процес, Група и ИБ-ови Сесије\n"
+"  ИБ процеса: %d\t\t  ИБ родитеља: %d\n"
+"    ИБ групе: %d\t\t    ИБ сесије: %d\n"
+"  ИБ Т групе: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Неуспеси странице\n"
+"  Овај процес       (најмањи највећи): %8lu  %8lu\n"
+"  Подређени процеси (најмањи највећи): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Времена процесора\n"
+"  Овај процес       (блкио гост корисничког система): %6.2f %6.2f %6.2f "
+"%6.2f\n"
+"  Подређени процеси (гост корисничког система):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Меморија\n"
+"  Ввеличина:       %-10s\n"
+"  РСС:         %-10s \t\t РСС ограничење: %s\n"
+"  Почетак кода:  %#-10lx\t\t Крај кода:  %#-10lx\n"
+"  Почетак стека: %#-10lx\n"
+"  Указивач стека (ЕСП): %#10lx\t Указивач уметања (ЕИП): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Планирање\n"
+"  Политика: %s\n"
+"  Фино:   %ld \t\t РТ приоритет: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "Није успело  „asprintf“ у „print_stat“.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Процес са пибом %d не постоји.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Не могу да отворим датотеку статистике за пиб %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Неисправна опција"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Морате да обезбедите барем један ПИБ."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+"„/proc“ није прикачен, не могу да добавим стање за „/proc/self/stat“.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s је празно (није прикачено ?)\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Употреба: pstree [ -a ] [ -c ] [ -h | -H ПИБ ] [ -l ] [ -n ] [ -p ] [ -g ] "
+"[ -u ]\n"
+"              [ -A | -G | -U ] [ ПИБ | КОРИСНИК ]\n"
+"       pstree -V\n"
+"Приказује стабло процеса.\n"
+"\n"
+"  -a, --arguments      приказује аргументе линије наредби\n"
+"  -A, --ascii          користи знаке за исцртавање АСКРИ реда\n"
+"  -c, --compact        не сабија истоветна подстабла\n"
+"  -h, --highlight-all  истиче текући процес и његовог претходника\n"
+"  -H ПИБ,\n"
+"  --highlight-pid=ПИБ  истиче овај процес и његовог претходника\n"
+"  -g, --show-pgids     приказује ибове процесне групе; подразумева „-c“\n"
+"  -G, --vt100          користи знаке за исцртавање ВТ100 реда\n"
+"  -l, --long           не крати дуге редове\n"
+"  -n, --numeric-sort   ређа излаз према ПИБ-у\n"
+"  -p, --show-pids      приказује ПИБ-ове; подразумева -c\n"
+"  -s, --show-parents   приакзује родитеље изабраног процеса\n"
+"  -u, --uid-changes    приказује прелазе уиба\n"
+"  -U, --unicode        користи знакове за исцртавање УТФ-8 (Уникод) реда\n"
+"  -V, --version        приказује податке о издању\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     приказује         СЕЛинукс безбедносни контекст\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  ПИБ        почиње са овим ПИБ-ом; основни је 1 (init)\n"
+"  КОРИСНИК   приказује само стабла укорењена у процесима овог корисника\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (ПСмисц) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Ауторска права (C) 1993-2009 Вернер Алмесбергер и Крег Смол\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "ТЕРМ није подешен\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Не могу да добавим могућности терминала\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Нема таквог корисничког имена: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Нисам пронашао процесе.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Притисните „унеси“ да затворите\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: непознат сигнал; %s -l исписује сигнале.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Употреба: pidof [ -eg ] НАЗИВ...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      захтева тачно поклапање за врло дуге називе;\n"
+#~ "            прескаче ако није доступна линија наредби\n"
+#~ "    -g      приказује ИБ групе процеса уместо ИБ процеса\n"
+#~ "    -V      приказује обавештење о издању\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Ауторска права (C) 1993-2005 Вернер Алмесбергер и Крег Смол\n"
+#~ "\n"
index 933e69d..012861b 100644 (file)
Binary files a/po/sv.gmo and b/po/sv.gmo differ
index d0824b1..96b3658 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
 # Swedish language file for psmisc.
-# Copyright (C) 2006 Free Software Foundation, Inc.
-# Daniel Nylander <po@danielnylander.se>, 2006.
+# Copyright (C) 2003, 2006, 2007, 2009 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
 # Joakim Mared <joakim at bfcom dot se>, 2003.
+# Daniel Nylander <po@danielnylander.se>, 2006, 2007, 2009.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.2pre1\n"
+"Project-Id-Version: psmisc 22.11-pre1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2006-05-04 00:08+0100\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2010-06-07 18:11+0100\n"
 "Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
+"Language: sv\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Avsluta %s(%s%d) ? (y/N) "
-
-#: src/killall.c:77
+#: src/fuser.c:133
 #, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Avsluta %s(%s%d) ? (y/N) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Kan inte hämta UID från processtatus\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Felaktigt reguljärt uttryck: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "hoppar över delvis matchande process: %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Avslutade %s(%s%d) med signal %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: ingen process avslutad\n"
-
-#: src/killall.c:497
-#, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
-"användning: pidof [-eg] NAMN...\n"
-"       pidof -V\n"
-"\n"
-"    -e      kräv exakt matchning för långa namn;\n"
-"             hoppa över om kommandorad är otillgänglig\n"
-"    -g      visa processgruppens ID istället för processens ID\n"
-"    -V      visa versionsinformation\n"
+"Användning: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n RYMD] [-k [-i] [-"
+"SIGNAL]] NAMN...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Visa vilka processer som använder namngivna filer, uttag eller filsystem.\n"
 "\n"
-
-#: src/killall.c:511
+"  -a,--all              visa även filer som inte används\n"
+"  -i,--interactive      fråga innan processen dödas (ignoreras utan -k)\n"
+"  -k,--kill             döda processer som använder namngiven fil\n"
+"  -l,--list-signals     lista tillgängliga signalnamn\n"
+"  -m,--mount            visa alla processer som använder namngivna filsystem "
+"eller blockenheter\n"
+"  -M,--ismountpoint     genomför begäran endast om NAMN är en "
+"monteringspunkt\n"
+"  -n,--namespace RYMD   sök i denna namnrymd (fil, udp, tcp)\n"
+"  -s,--silent           tyst körning\n"
+"  -SIGNAL               skicka denna signal istället för SIGKILL\n"
+"  -u,--user             visa användarid\n"
+"  -v,--verbose          informativ utskrift\n"
+"  -V,--version          visa versionsinformation\n"
+
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
-"Användning: killall [-Z KONTEXT] [-u ANVÄNDARE] [ -eIgiqrvw ] [ -SIGNAL ] "
-"NAMN...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Användning: killall [FLAGGA]... [--] NAMN...\n"
+"  -4,--ipv4             sök endast bland IPv4-uttag (socket)\n"
+"  -6,--ipv6             sök endast bland IPv6-uttag (socket)\n"
 
-#: src/killall.c:517
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
 msgstr ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     nollställ flaggor\n"
+"\n"
+"  udp/tcp-namn: [lokal_port][,[fjärrvärd][,[fjärrport]]]\n"
 "\n"
-"  -e,--exact         kräver exakt matchning för väldigt långa namn\n"
-"  -I,--ignore-case   ingen skillnad på gemener/versaler vid namnmatchning\n"
-"  -g,--process-group döda processgrupp istället för process\n"
-"  -i,--interactive   fråga efter bekräftelse före dödandet\n"
-"  -l,--list          lista alla kända signalnamn\n"
-"  -q,--quiet         skriv inte ut klagomål\n"
-"  -r,--regexp         tolka NAMN som ett utökat reguljärt uttryck\n"
-"  -s,--signal SIGNAL  skicka signal istället för SIGTERM\n"
-"  -u,--user ANVÄNDARE döda endast process(er) som körs som ANVÄNDARE\n"
-"  -v,--verbose       rapportera om signalen blev skickad korrekt\n"
-"  -V,--version       visa versionsinformation\n"
-"  -w,--wait          vänta tills processerna är döda\n"
-
-#: src/killall.c:533
+
+#: src/fuser.c:160
 #, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context REGEXP döda endast process(er) som har kontext\n"
-"                      (måste föregå andra argument)\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/fuser.c:163
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Copyright 1993-2005 Werner Almesberger och Craig Small\n"
+"Copyright © 1993-2010 Werner Almesberger och Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
 msgid ""
 "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
@@ -146,226 +108,265 @@ msgid ""
 "For more information about these matters, see the files named COPYING.\n"
 msgstr ""
 "PSmisc kommer med ABSOLUT INGEN GARANTI.\n"
-"Detta är fri programvara och du är välkommen att distribuera den under\n"
-"villkoren för GNU General Public License.\n"
-"För mer information om dessa villkor, se filerna kallade COPYING.\n"
-"Följande text är en informell översättning som enbart tillhandahålls\n"
-"i informativt syfte. För alla juridiska tolkningar gäller den engelska "
+"Detta är fri programvara och du är välkommen att distribuera den under\n"
+"villkoren för GNU General Public License.\n"
+"För mer information om dessa villkor, se filerna kallade COPYING.\n"
+"Följande text är en informell översättning som enbart tillhandahålls\n"
+"i informativt syfte. För alla juridiska tolkningar gäller den engelska "
 "originaltexten.\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Kan inte hitta användare %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Maximalt antal namn är %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s är tom (inte monterad ?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Användning: fuser [ -a | -s | -c ] [ -n UTRYMME ] [ -SIGNAL ] [ -kimuv ] "
-"NAMN ...\n"
-"             [ - ] [ -n UTRYMME ] [ -SIGNAL ] [ -kimuv ] NAMN...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Visar vilka processer som använder angivna filer, uttag eller filsystem.\n"
-"\n"
-"    -a       visa även filer som inte används\n"
-"    -c       monterat filsystem\n"
-"    -f       ignorera tyst (för POSIX-kompatibilitet)\n"
-"    -i       fråga innan process avslutas (ignoreras om -k ej används)\n"
-"    -k       avsluta processer som använder filen\n"
-"    -l       lista tillgängliga signalnamn\n"
-"    -m        visa alla processer som använder namngivna filsystem\n"
-"    -n UTRYMME    utrymme leta i specifierat namnutrymme (fil, udp, tcp)\n"
-"    -s       tyst användning\n"
-"    -SIGNAL  skicka denna signal istället för SIGKILL\n"
-"    -u       visa användarid\n"
-"    -v       informativ utskrift\n"
-"    -V       visa versionsinformation\n"
-"    -4       sök bara bland IPv4-uttag (socket)\n"
-"    -6       sök bara bland IPv6-uttag (socket)\n"
-"    -        nollställ flaggor\n"
-"\n"
-"  udp/tcp-namn: [lokal_port][,[fjärrvärd][,[fjärrport]]]\n"
-"\n"
-
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
-
-#: src/fuser.c:113
-#, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
-msgstr "Kan inte öppna katalogen /proc: %s\n"
+msgstr "Kan inte öppna katalogen /proc: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
-msgstr "Kan inte allokera minne för matchande proc: %s\n"
+msgstr "Kan inte allokera minne för matchande proc: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Kan inte ta status på monteringspunkt %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Angivna filnamnet %s finns inte.\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
-msgstr "Kan inte ta status på %s: %s\n"
+msgstr "Kan inte ta status på %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
-msgstr "Kan inte slå upp lokal port %s: %s\n"
+msgstr "Kan inte slå upp lokal port %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
-msgstr "Okänt lokal port AF %d\n"
+msgstr "Okänt lokal port AF %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
-msgstr "Kan inte öppna protokollfil \"%s\": %s\n"
+msgstr "Kan inte öppna protokollfilen \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Ogiltig flagga %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
-msgstr "Flagga för namnrymd kräver ett argument."
+msgstr "Flagga för namnrymd kräver ett argument."
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
-msgstr "Ogiltigt namn för namnrymd"
+msgstr "Ogiltigt namn för namnrymd"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr "Du kan endast använda filer med monteringspunktflagga"
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Du kan endast använda filer med monteringspunktflaggor"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Ingen processpecifikation angiven"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "Du kan inte använda monterade och monteringspunktflaggorna samtidigt"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
-msgstr "flagga för alla, -m,  kan inte användas med flaggan för tyst, -s."
+msgstr "flagga för alla, -m,  kan inte användas med flaggan för tyst, -s."
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
-msgstr "Du kan inte söka efter endast IPv4- och endast IPv6-uttag samtidigt"
+msgstr "Du kan inte söka efter endast IPv4- och endast IPv6-uttag samtidigt"
 
-#: src/fuser.c:901
-#, fuzzy, c-format
+#: src/fuser.c:1246
+#, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr ""
-"\n"
-"%*s ANVÄNDARE   PID ÅTKOMS KOMMANDO\n"
+msgstr "%*s ANVÄNDARE   PID ÅTKOMS KOMMANDO\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
-msgstr "(okänd)"
+msgstr "(okänd)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
-msgstr "Kan inte ta status på fil %s: %s\n"
+msgstr "Kan inte ta status på fil %s: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
-msgstr "Kan inte öppna /proc/net/unix: %s\n"
-
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Kan inte öppna /etc/mtab: %s\n"
+msgstr "Kan inte öppna /proc/net/unix: %s\n"
 
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
-msgstr "Avsluta process %d ? (y/N) "
+msgstr "Döda process %d ? (y/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
-msgstr "Kunde inte döda process %d: %s\n"
+msgstr "Kunde inte döda process %d: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
-msgstr "Kan inte öppna ett nätverksuttag.\n"
+msgstr "Kan inte öppna ett nätverksuttag.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
-msgstr "Kunde inte hitta uttagets enhetsnummer.\n"
+msgstr "Kan inte hitta uttagets enhetsnummer.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
 #, c-format
-msgid "Error attaching to pid %i\n"
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Döda %s(%s%d) ? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Signalera %s(%s%d) ? (y/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "Kan inte hämta UID från processtatus\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "Felaktigt reguljärt uttryck: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "hoppar över delvis matchande process: %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Dödade %s(%s%d) med signal %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: ingen process hittades\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Användning: killall [-Z KONTEXT] [-u ANVÄNDARE] [ -eIgiqrvw ] [ -SIGNAL ] "
+"NAMN...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Användning: killall [FLAGGA]... [--] NAMN...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          kräver exakt matchning för väldigt långa namn\n"
+"  -I,--ignore-case    ingen skillnad på gemener/versaler vid namnmatchning\n"
+"  -g,--process-group  döda processgrupp istället för process\n"
+"  -y,--younger-than   döda processer yngre än TID\n"
+"  -o,--older-than     döda processer äldre än TID\n"
+"  -i,--interactive    fråga efter bekräftelse före dödandet\n"
+"  -l,--list           lista alla kända signalnamn\n"
+"  -q,--quiet          skriv inte ut klagomål\n"
+"  -r,--regexp         tolka NAMN som ett utökat reguljärt uttryck\n"
+"  -s,--signal SIGNAL  skicka signal istället för SIGTERM\n"
+"  -u,--user ANVÄNDARE döda endast process(er) som körs som ANVÄNDARE\n"
+"  -v,--verbose        rapportera om signalen blev skickad korrekt\n"
+"  -V,--version        visa versionsinformation\n"
+"  -w,--wait           vänta tills processerna är döda\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP döda endast process(er) som har kontext\n"
+"                      (måste föregå andra argument)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
 msgstr ""
+"Copyright © 1993-2010 Werner Almesberger och Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Ogiltigt tidsformat"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Kan inte hitta användare %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Felaktigt reguljärt uttryck: %s\n"
 
-#: src/peekfd.c:83
+#: src/killall.c:830
 #, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "Maximalt antal namn är %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s är tom (inte monterad?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Fel vid koppling till pid %i\n"
+
+#: src/peekfd.c:104
+#, c-format
 msgid "peekfd (PSmisc) %s\n"
-msgstr "pstree (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
 "\n"
 msgstr ""
+"Copyright © 2007 Trent Waddington\n"
+"\n"
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -378,103 +379,303 @@ msgid ""
 "\n"
 "  Press CTRL-C to end output.\n"
 msgstr ""
+"Användning: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 skriv ut 8-bitars rena strömmar.\n"
+"    -n visa inte läs/skriv från fd-huvuden.\n"
+"    -c titta även på alla nya barnprocesser.\n"
+"    -d Ta bort dubletter av läs/skriv från utdata.\n"
+"    -V visar versionsinformation.\n"
+"    -h visar den här hjälpen.\n"
+"\n"
+"  Tryck CTRL-C för att avsluta utdata.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Användning: prtstat [flaggor] PID ...\n"
+"       prtstat -V\n"
+"Skriv ut information om en process\n"
+"    -r,--raw       Rå visning av information\n"
+"    -V,--version   Visa versionsinformation och avsluta\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 2009 Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "kör"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "sover"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "zombie"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "okänd"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Process: %-14s\t\tTillstånd: %c (%s)\n"
+"  Proc.:  %-3d\t\tTTY: %s\tTrådar: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
 
-#: src/pstree.c:374
+#: src/prtstat.c:180
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "Internt fel: MAX_DEPTH är inte tillräckligt stor.\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf i print_stat misslyckades.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Någon process med pid %d finns inte.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Ogiltig flagga"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Du måste tillhandahålla minst en PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc är inte monterad, kan inte ta status på /proc/self/stat.\n"
 
-#: src/pstree.c:750
+#: src/pstree.c:794
 #, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s är tom (inte monterad?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
-"Användning: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -"
+"Användning: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -"
 "u ]\n"
-"              [ -A | -G | -U ] [ PID | ANVÄNDARE]\n"
+"              [ -A | -G | -U ] [ PID | ANVÄNDARE]\n"
 "       pstree -V\n"
-"Visar ett träd av processer.\n"
+"Visa ett träd av processer.\n"
 "\n"
-"    -a     visa kommandoradsargument\n"
-"    -A     använd ASCII linjeritningstecken\n"
-"    -c     packa inte identiska underträd\n"
-"    -h     framhäv nuvarande process och dess förfäder\n"
-"    -H PID framhäv processen \"pid\" och dess förfäder\n"
-"    -G     använd VT100 linjeritningstecken\n"
-"    -l     klipp inte långa rader\n"
-"    -n     sortera utskrift efter PID\n"
-"    -p     visa PID; medför -c\n"
-"    -u     visa uid övergångar\n"
-"    -U     använd UTF-8 (Unicode) linjeritningstecken\n"
-"    -V     visa versionsinformation\n"
-
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -Z     visa SELinux säkerhetskontexter\n"
-
-#: src/pstree.c:771
+"  -a, --arguments     visa kommandoradsargument\n"
+"  -A, --ascii         använd ASCII-linjeritningstecken\n"
+"  -c, --compact       komprimera inte identiska underträd\n"
+"  -h, --highlight-all markera aktuell process och dess förfäder\n"
+"  -H PID,\n"
+"  --highlight-pid=PID markera denna process och dess förfäder\n"
+"  -G, --vt100         använd VT100-linjeritningstecken\n"
+"  -l, --long          korta inte ner långa rader\n"
+"  -n, --numeric-sort  sortera utdata efter PID\n"
+"  -p, --show-pids     visa PID:ar; medför -c\n"
+"  -u, --uid-changes   visa uid-övergångar\n"
+"  -U, --unicode       använd UTF-8-linjeritningstecken (Unicode)\n"
+"  -V, --version       visa versionsinformation\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     show         SELinux-säkerhetskontexter\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"    PID    starta vid denna PID; förvald är 1 (init)\n"
-"    ANVÄNDARE   visa endast träd med denna användares\n"
-"                processer som rot.\n"
+"  PID    starta vid denna PID; standardvärde är 1 (init)\n"
+"  ANVÄNDARE   visa endast träd med denna användares\n"
+"              processer som rot.\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Copyright © 1993-2009 Werner Almesberger och Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr "TERM är inte satt\n"
+msgstr "TERM är inte inställd\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
-msgstr "Kan inte ta reda på terminalens beskaffenhet\n"
+msgstr "Kan inte ta reda på terminalens förmågor\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
-msgstr "Ingen sådan användare: %s\n"
+msgstr "Ingen sådan användare: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
-msgstr "Inga processer funna.\n"
+msgstr "Inga processer hittades.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
-msgstr "Tryck retur för att stänga\n"
+msgstr "Tryck Retur för att stänga\n"
 
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr "%s: okänd signal; %s -l listar signaler.\n"
+msgstr "%s: okänd signal; %s -l listar signaler.\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Användning: pidof [-eg] NAMN...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      kräv exakt matchning för långa namn;\n"
+#~ "            hoppa över om kommandoraden är otillgänglig\n"
+#~ "    -g      visa processgruppens ID istället för processens ID\n"
+#~ "    -V      visa versionsinformation\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Copyright © 1993-2005 Werner Almesberger och Craig Small\n"
+#~ "\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr ""
+#~ "Du kan inte använda monterade och monteringspunktflaggorna samtidigt"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "Kan inte ta status på monteringspunkten %s: %s\n"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "Kan inte öppna /etc/mtab: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "Internt fel: MAX_DEPTH är inte tillräckligt stor.\n"
 
 #~ msgid "Cannot open protocol file \"%s\": %s"
-#~ msgstr "Kan inte öppna protokollfil \"%s\": %s"
+#~ msgstr "Kan inte öppna protokollfil \"%s\": %s"
diff --git a/po/uk.gmo b/po/uk.gmo
new file mode 100644 (file)
index 0000000..786fa76
Binary files /dev/null and b/po/uk.gmo differ
diff --git a/po/uk.po b/po/uk.po
new file mode 100644 (file)
index 0000000..e0fff7e
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,694 @@
+# Ukrainian translation for psmisc.
+# Copyright (C) 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+#
+# Yuri Chornoivan <yurchor@ukr.net>, 2011, 2012.
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc-22.20rc1\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-08-31 19:30+0300\n"
+"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
+"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
+"Language: uk\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
+"X-Generator: Lokalize 1.5\n"
+
+#: src/fuser.c:133
+#, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"Користування: fuser [-fMuv] [-a|-s] [-4|-6] [-c|-m|-n ПРОСТІР] [-k [-i] [-"
+"СИГНАЛ]] НАЗВА...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Показує, які процеси користуються вказаними файлами, сокетами або файловими "
+"системами.\n"
+"\n"
+"  -a,--all               показувати також невикористані файли\n"
+"  -i,--interactive       запитувати перед завершенням роботи процесу "
+"(ігнорується без -k)\n"
+"  -k,--kill              завершити роботу процесів, які користуються "
+"вказаним файлом\n"
+"  -l,--list-signals      показати список доступних назв сигналів\n"
+"  -m,--mount             показати всі процеси, що використовують вказані "
+"файлові системи або блоковий пристрій\n"
+"  -M,--ismountpoint      виконати запит, лише якщо НАЗВА є точкою "
+"монтування\n"
+"  -n,--namespace ПРОСТІР шукати лише у вказаному просторі назв (file, udp "
+"або tcp)\n"
+"  -s,--silent            не виводити повідомлень\n"
+"  -СИГНАЛ                надіслати вказаний сигнал замість SIGKILL\n"
+"  -u,--user              показувати ідентифікатори користувачів\n"
+"  -v,--verbose           виводити дані докладно\n"
+"  -w,--writeonly         завершити роботу лише процесів з доступом на запис\n"
+"  -V,--version           показати дані щодо версії\n"
+
+#: src/fuser.c:150
+#, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"  -4,--ipv4             шукати лише серед сокетів IPv4\n"
+"  -6,--ipv6             шукати лише серед сокетів IPv6\n"
+
+#: src/fuser.c:153
+#, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"  -                     скинути параметри\n"
+"\n"
+"  назви udp/tcp: [локлаьний_порт][,[вузол_rmt][,[порт_rmt]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"© Werner Almesberger та Craig Small, 1993–2010\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"Щодо PSmisc вам НЕ НАДАЄТЬСЯ ЖОДНИХ ГАРАНТІЙ.\n"
+"Це вільне програмне забезпечення, ми будемо раді, якщо ви поширюватимете\n"
+"його відповідно до умов Загальної громадської ліцензії GNU (GPL).\n"
+"Щоб дізнатися більше про це, ознайомтеся з файлом з назвою COPYING.\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "Не вдалося відкрити каталог /proc: %s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "Не вдалося отримати область пам’яті для відповідного процесу: %s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr "Файл з вказаною назвою, %s, не існує.\n"
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "Не вдалося отримати дані за допомогою stat %s: %s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "Не вдалося визначити локальний порт %s: %s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "Невідомий локальний порт AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "Не вдалося відкрити файл протоколу «%s»: %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: некоректний параметр, %s\n"
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "Параметр простору назв слід вказувати з аргументом."
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "Некоректна назва простору назв"
+
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Файли можна використовувати лише разом з параметрами точки монтування"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "Не вказано специфікації процесу"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "параметр «all» не можна використовувати разом з параметром «silent»."
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr ""
+"Одночасно можна виконувати пошук лише для сокетів IPv4 або сокетів IPv6"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s КОРИСТУВАЧ  PID ДОСТУП КОМАНДА\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(невідомий)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "Не вдалося обробити файл за допомогою stat %s: %s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "Не вдалося відкрити /proc/net/unix: %s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "Завершити процес %d? (y (так) або N (ні)) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "Не вдалося завершити роботу процесу %d: %s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "Не вдалося відкрити сокет мережі.\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "Не вдалося визначити номер пристрою сокета.\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Завершити роботу %s(%s%d)? (y (так) або N (ні)) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Надіслати сигнал %s(%s%d)? (y (так) або N (ні)) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: не вдалося отримати UID з даних щодо стану процесу\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: помилковий формальний вираз: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: пропускаємо частковий відповідник %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Завершено роботу %s(%s%d) за допомогою сигналу %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: процес не знайдено\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Використання: killall [-Z КОНТЕКСТ] [-u КОРИСТУВАЧ] [ -eIgiqrvw ] [ -"
+"СИГНАЛ ] НАЗВА...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Використання: killall [ПАРАМЕТР]... [--] НАЗВА...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact           вимагати повної відповідності для дуже довгих назв\n"
+"  -I,--ignore-case     встановлювати відповідність без врахування регістру "
+"символів\n"
+"  -g,--process-group   завершити роботу групи процесів, а не окремого "
+"процесу\n"
+"  -y,--younger-than    завершити роботу процесів, чий вік не перевищує "
+"вказаного часу\n"
+"  -o,--older-than      завершити роботу процесів, чий вік перевищує вказаний "
+"час\n"
+"  -i,--interactive     просити підтвердження щодо завершення роботи\n"
+"  -l,--list            показати список всіх відомих назв сигналів\n"
+"  -q,--quiet           не виводити повідомлень\n"
+"  -r,--regexp          вважати параметр НАЗВА формальним виразом\n"
+"  -s,--signal СИГНАЛ   надіслати вказаний сигнал замість SIGTERM\n"
+"  -u,--user КОРИСТУВАЧ завершити роботу лише процесів КОРИСТУВАЧа\n"
+"  -v,--verbose         повідомляти про успішне надсилання сигналу\n"
+"  -V,--version         показати дані щодо версії\n"
+"  -w,--wait            чекати на завершення процесів\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP завершити роботу лише процесів з відповідним "
+"контекстом\n"
+"                      (слід вказувати перед іншими аргументами)\n"
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"© Werner Almesberger та Craig Small, 1993–2012\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Некоректний формат визначення часу"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Не вдалося знайти користувача %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Помилковий формальний вираз: %s\n"
+
+#: src/killall.c:830
+#, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: максимальною кількістю назв є %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s не містить записів процесів (не змонтовано?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "Помилка під час спроби приєднатися до pid %i\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"© Trent Waddington, 2007\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"Використання: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 виводити 8-бітові очищені потоки даних.\n"
+"    -n не показувати читання/запис з заголовків дескрипторів файлів.\n"
+"    -c зондувати будь-які нові дочірні процеси.\n"
+"    -d вилучити дублікати записів читання/запису з виведених даних.\n"
+"    -V вивести дані щодо версії.\n"
+"    -h вивести ці довідкові дані.\n"
+"\n"
+"  Натисніть Ctrl-C, щоб перервати виведення даних.\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Використання: prtstat [параметри] PID ...\n"
+"       prtstat -V\n"
+"Вивести дані що вказаного процесу\n"
+"    -r,--raw       показати дані без обробки\n"
+"    -V,--version   показати дані щодо версії і завершити роботу\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"© Craig Small, 2009\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "працює"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "спить"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "спить на диску"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "зомбі"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "трасування"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "гортання"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "невідомий"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Процес: %-14s\t\tСтан: %c (%s)\n"
+" Проц.:  %-3d\t\tTTY: %s\tПотоки: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Ідентифікатори процесу, групи і сеансу\n"
+" Ід. процесу: %d\t\t Ід. батьків.: %d\n"
+"   Ід. групи: %d\t\t   Ід. сеансу: %d\n"
+" T Ід. групи: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Промахи за сторінками\n"
+"  Цей процес      (мін.  макс.): %8lu  %8lu\n"
+"  Доч. процеси    (мін.  макс.): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Цикли процесора\n"
+"  Цей процес      (користувач система гість blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Дочірній процес (користувач система гість):       %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Пам’ять\n"
+"  Вірт. розмір: %-10s\n"
+"  RSS:          %-10s \t\t Обмеження RSS: %s\n"
+"  Поч. коду:    %#-10lx\t\t Кінець коду:  %#-10lx\n"
+"  Поч. стека:   %#-10lx\n"
+"  Вказівник стека (ESP): %#10lx\t Вказівник команди (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Планування\n"
+"  Правила:       %s\n"
+"  Поступливість: %ld \t\t Пріоритет РЧ: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "Помилка asprintf у print_stat.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Процесу з pid %d не існує.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Не вдалося відкрити файл stat для процесу з pid %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Некоректний параметр"
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Вам слід вказати принаймні одне значення PID."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr "/proc не змонтовано, виконання обробки /proc/self/stat неможливе.\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s є порожнім (не змонтовано?)\n"
+
+#: src/pstree.c:830
+#, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"Використання: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -"
+"g ] [ -u ]\n"
+"              [ -A | -G | -U ] [ PID | КОРИСТУВАЧ\t ]\n"
+"       pstree -V\n"
+"Показати ієрархію процесів.\n"
+"\n"
+"  -a, --arguments     показати аргументи командного рядка\n"
+"  -A, --ascii         використовувати для малювання ліній символи ASCII\n"
+"  -c, --compact       не ущільнювати ідентичні гілки ієрархії\n"
+"  -h, --highlight-all позначити поточний процес та його дочірні процеси\n"
+"  -H PID,\n"
+"  --highlight-pid=PID позначити вказаний процес та його дочірні процеси\n"
+"  -g, --show-pgids    показати ідентифікатори груп процесів; додається -c\n"
+"  -G, --vt100         використовувати символи малювання ліній VT100\n"
+"  -l, --long          не обрізати довгі рядки\n"
+"  -n, --numeric-sort  впорядкувати дані за PID\n"
+"  -p, --show-pids     показати PID; додається -c\n"
+"  -s, --show-parents  показати основні процеси вибраного процесу\n"
+"  -u, --uid-changes   показати переходи uid\n"
+"  -U, --unicode       використовувати символи малювання ліній UTF-8 "
+"(Unicode)\n"
+"  -V, --version       показати дані щодо версії програми\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     показати       контексти захисту SELinux\n"
+
+#: src/pstree.c:852
+#, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"  PID        розпочати з вказаного PID; типовим початковим значенням є 1 "
+"(init)\n"
+"  КОРИСТУВАЧ показати лише ієрархії з кореневими процесами цього "
+"користувача\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"© Werner Almesberger та Craig Small, 1993–2009\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "Не встановлено змінної TERM\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "Не вдалося отримати дані щодо можливостей термінала\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "Користувача з таким іменем не існує: %s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "Не знайдено жодного процесу.\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "Натисніть Enter, щоб закрити.\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr ""
+"%s: невідомий сигнал; щоб отримати список сигналів віддайте команду %s -l .\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Використання: pidof [ -eg ] НАЗВА...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      вимагати повної відповідності для дуже довгих назв;\n"
+#~ "            пропустити, якщо не вдається визначити рядок команди\n"
+#~ "    -g      показувати ідентифікатор групи процесу замість ідентифікатора "
+#~ "процесу\n"
+#~ "    -V      показати дані щодо версії\n"
+#~ "\n"
index 064e22f..e2f0dc4 100644 (file)
Binary files a/po/vi.gmo and b/po/vi.gmo differ
index 24bffe3..2bbf2f5 100644 (file)
--- a/po/vi.po
+++ b/po/vi.po
 # Vietnamese translation for PSmisc.
-# Copyright © 2007 Free Software Foundation, Inc.
-# Clytie Siddall <clytie@riverland.net.au>, 2005, 2006, 2007.
-# 
+# Copyright © 2012 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Clytie Siddall <clytie@riverland.net.au>, 2005, 2006, 2007, 2008, 2009, 2010.
+# Trần Ngọc Quân <vnwildman@gmail.com>, 2012.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.5\n"
+"Project-Id-Version: psmisc 22.20rc1\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2007-05-31 18:04+0930\n"
-"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
-"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2012-09-01 07:54+0700\n"
+"Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
+"Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
+"Language: vi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: LocFactoryEditor 1.6.3b1\n"
+"X-Generator: LocFactoryEditor 1.8\n"
+"X-Poedit-SourceCharset: utf-8\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "Có buộc kết thúc %s(%s%d) không? (y/n) (có/không) "
-
-#: src/killall.c:77
-#, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "Có buộc kết thúc %s(%s%d) không? (y/n) (có/không) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "Không thể lấy UID từ trạng thái của tiến trình\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "Biểu thức chính quy sai: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "đang bỏ qua điều khớp bộ phần %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "Mới buộc kết thúc %s(%s%d) với tín hiệu %d\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: chưa buộc kết thúc tiến trình\n"
-
-#: src/killall.c:497
+#: src/fuser.c:133
 #, c-format
 msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
-"Cách sử dụng: pidof [ -eg ] TÊN ...\n"
-"       pidof -V\n"
-"\n"
-"    -e      cần đến điều khớp _chính xác_ với mọi tên rất dài\n"
-"\tbỏ qua nếu không có dòng lệnh sẵn sàng\n"
-"    -g      hiện ID của _nhóm_ tiến trình thay thế ID tiến trình\n"
-"    -V      hiện thông tin _phiên bản_\n"
+"Sử dụng: fuser [ -fMuvw ] [-a|-s] [-4|-6] [-c|-m|-n KHOẢNG] [-k [-i] [-"
+"TÍN_HIỆU]] TÊN...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Hiển thị những tiến trình nào đang dùng những tập tin, ổ cắm hay hệ thống "
+"tập tin có tên đưa ra.\n"
 "\n"
-
-#: src/killall.c:511
+"  -a,--all              cũng hiển thị các tập tin không dùng\n"
+"  -i,--interactive      hỏi trước khi ép buộc (bị bỏ qua mà không có \"-k"
+"\")\n"
+"  -k,--kill             buộc kết thúc mỗi tiến trình đang truy cập đến tập "
+"tin có tên đưa ra\n"
+"  -l,--list-signals     liệt kê những tên tín hiệu vẫn sẵn sàng\n"
+"  -m,--mount            hiển thị tất cả các tiến trình đang sử dụng\n"
+"\t\tnhững hệ thống tập tin hay thiết bị khối có tên đưa ra\n"
+"  -M,--ismountpoint     đáp ứng chỉ khi TÊN là một điểm lắp\n"
+"  -n,--namespace KHOẢNG  tìm kiếm trong miền tên này (file, udp hay tcp)\n"
+"  -s,--silent           không xuất chi tiết\n"
+"  -SIGNAL               gửi tín hiệu này thay cho SIGKILL\n"
+"  -u,--user             hiển thị các mã nhận diện người dùng (UID)\n"
+"  -v,--verbose          kết xuất chi tiết\n"
+"  -w,--writeonly        chỉ buộc chấm dứt những tiến trình mà có quyền ghi\n"
+"  -V,--version          hiển thị thông tin về phiên bản\n"
+
+#: src/fuser.c:150
 #, c-format
 msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
 msgstr ""
-"Cách sử dụng: killall [-Z NGỮ_CẢNH] [-u NGƯỜI_DÙNG] [ -eIgiqrvw ] [ -"
-"TÍN_HIỆU ] TÊN...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "Cách sử dụng: killall [ TÙY_CHỌN ]... [--] TÊN...\n"
+"  -4,--ipv4             chỉ tìm kiếm ổ cắm kiểu IPv4\n"
+"  -6,--ipv6             chỉ tìm kiếm ổ cắm kiểu IPv6\n"
 
-#: src/killall.c:517
+#: src/fuser.c:153
 #, c-format
 msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
 "\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
 msgstr ""
-"       killall -l, --list \t\t(_liệt kê_)\n"
-"       killall -V --version \t\t(_phiên bản_)\n"
+"  -       \tđặt lại các tùy chọn\n"
 "\n"
-"  -e,--exact          \t\tcần đến điều khớp _chính xác_ với mọi tên rất dài\n"
-"  -I,--ignore-case    \t_bỏ qua _chữ hoa/thường_ khi khớp tên tiến trình\n"
-"  -g,--process-group  \tbuộc kết thúc _nhóm tiến trình_ thay thế tiến trình\n"
-"  -i,--interactive    \t\txin xác nhận trước khi buộc kết thúc (_tương "
-"tác_)\n"
-"  -l,--list           \t\t_liệt kê_ mọi tên tín hiệu đã biết\n"
-"  -q,--quiet          \t\tkhông hiển thị lời than phiền (_im_)\n"
-"  -r,--regexp        \t\tgiải thích TÊN là _biểu thức chính quy_ nối dài\n"
-"  -s,--signal TÍN_HIỆU\t\tgởi tín hiệu này thay thế SIGTERM\n"
-"  -u,--user NG_DÙNG      \tbuộc kết thúc chỉ những tiến trình đang chạy\n"
-"\t\t\t\t\t\t\tvới tư cách _người dùng_ này\n"
-"  -v,--verbose        \tthông báo khi đã gởi tín hiệu\n"
-"  -V,--version        \thiện thông tin _phiên bản_\n"
-"  -w,--wait           \t\t_đợi_ tiến trình kết thúc\n"
+"  Các tên udp/tcp: [cổng_cục_bộ][,[máy_từ_xa][,[cổng_từ_xa]]]\n"
 "\n"
 
-#: src/killall.c:533
+#: src/fuser.c:160
 #, c-format
-msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context BIỂU_THỨC_CHÍNH _QUY\n"
-"\t\tbuộc kết thúc chỉ những tiến trình có ngữ cảnh\n"
-"\t\t\t(phải đi trước các đối số khác)\n"
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
+#: src/fuser.c:163
 #, c-format
 msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
-"Bản quyền © 1993-2005 Werner Almesberger và Craig Small\n"
+"Tác quyền © năm 1993-2010 của Werner Almesberger và Craig Small\n"
 "\n"
 
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
 msgid ""
 "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
@@ -155,213 +118,251 @@ msgstr ""
 "Quyền Công Chung Gnu (GPL).\n"
 "Để tìm thấy thông tin thêm thì hãy xem tập tin có tên COPYING (cách chép)\n"
 
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "Không tìm thấy người dùng %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "Số tên tối đa là %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s trống (lắp chưa?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Show which processes use the named files, sockets, or filesystems.\n"
-"\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
-msgstr ""
-"Cách sử dụng: fuser [ -a | -s | -c ] [ -n MIỀN ] [ -KÝ_HIỆU ] [ -kimuv ] "
-"TÊN...\n"
-"             [ - ] [ -n MIỀN ] [ -KÝ_HIỆU ] [ -kimuv ] TÊN...\n"
-"       fuser -l\n"
-"       fuser -V\n"
-"Hiển thị tiến trình nào có dùng những tập tin, ổ cắm\n"
-"hay hệ thống tập tin có tên này.\n"
-"\n"
-"    -a   \tcũng hiện các tập tin không được dùng\n"
-"    -c     \thệ thống tập tin đã lắp\n"
-"    -f     \tbị bỏ qua im (để tương thích với POSIX)\n"
-"    -i     \thỏi trước khi buộc kết thúc\n"
-"\t\t\t(bị bỏ qua nếu không có tùy chọn « -k »)\n"
-"    -k     \t_buộc kết thúc_ các tiến trình đang truy cập tập tin tên này\n"
-"    -l   \t_liệt kê_ các tên ký hiệu sẵn sàng\n"
-"    -m     \thiện các tiến trình đang dùng những hệ thống tập tin c\n"
-"    -n MIỀN  \ttìm kiếm trong miền _tên_ này (file, udp, hay tcp)\n"
-"    -s        thao tác _im_ (không xuất chi tiết)\n"
-"    -TÍN_HIỆU   \tgởi tín hiệu này thay vào SIGKILL\n"
-"    -u        hiện các ID của _người dùng_ (UID)\n"
-"    -v        xuất _chi tiết_\n"
-"    -V        hiện thông tin phiên bản\n"
-"    -4        chỉ tìm kiếm ổ cắm kiểu IPv4\n"
-"    -6        chỉ tìm kiếm ổ cắm kiểu IPv6\n"
-"    -       \tđặt lại các tùy chọn\n"
-"\n"
-"  Các tên udp/tcp: [cổng_cục_bộ][,[máy_từ_xa][,[cổng_từ_xa]]]\n"
-"\n"
-
-#: src/fuser.c:109
-#, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
-
-#: src/fuser.c:113
-#, c-format
-msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
-"\n"
-msgstr ""
-
-#: src/fuser.c:120
-#, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
-
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "Không thể mở thư mục </proc>: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "Không thể cấp phát bộ nhớ cho tiến trình được khớp: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "Không thể lấy các thông tin về điểm lắp %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr "Đưa ra tên tập tin %s không tồn tại.\n"
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "Không thể lấy các thông tin về %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "Không tìm thấy tên cổng cục bộ %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "Không biết cổng cục bộ AF %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
-msgstr "Không thể mở tập tin giao thức « %s »: %s\n"
+msgstr "Không thể mở tập tin giao thức \"%s\": %s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr "%s: Sai đặt tuỳ chọn %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "Tùy chọn miền tên cần đến một đối số."
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "Tên miền tên không hợp lệ"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
-msgstr "Bạn có thể sử dụng chỉ tập tin với tùy chọn điểm lắp"
+#: src/fuser.c:1102
+msgid "You can only use files with mountpoint options"
+msgstr "Bạn có thể sử dụng tập tin chỉ với tùy chọn điểm_lắp"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "Chưa nhập đặc tả tiến trình"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr ""
-"Không cho phép bạn sử dụng cờ kiểu cả « được lắp » lẫn « điểm lắp » đều"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
-msgstr "không cho phép bạn sử dụng chọn « tất cả » với tùy chọn « im »."
+msgstr "tất cả các tùy chọn không cho phép bạn dùng với tùy chọn \"im lặng\"."
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "Không cho phép bạn tìm kiếm ổ cắm kiểu cả IPv4 lẫn IPv6 đều đồng thời"
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
-msgstr "%*s NGƯỜI_DÙNG        PID TRUY CẬP LỆNH\n"
+msgstr "%*s NGƯỜI_DÙNG        PID TRUY_CẬP LỆNH\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(không biết)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "Không thể lấy các thông tin về tập tin %s: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "Không thể mở thư mục </proc/net/unix>: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "Không thể mở </etc/mtab>: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
-msgstr "Có buá»\91c kết thúc tiến trình %d không? (y/N) (có/không) "
+msgstr "Có buá»\99c kết thúc tiến trình %d không? (y/N) (có/không) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "Không thể buộc kết thúc tiến trình %d: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "Không thể mở một ổ cắm mạng.\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "Không tìm thấy số hiệu thiết bị ổ cắm.\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "Có buộc kết thúc %s(%s%d) không? (c/K)"
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "Tín hiệu %s(%s%d) không? (y/N)(c/K) "
+
+#: src/killall.c:211
+#, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "killall: Không thể lấy UID từ trạng thái của tiến trình\n"
+
+#: src/killall.c:237
+#, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "killall: Biểu thức chính quy sai: %s\n"
+
+#: src/killall.c:447
+#, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "killall: bỏ qua phần khớp thiên lệch %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "Mới buộc kết thúc %s(%s%d) với tín hiệu %d\n"
+
+#: src/killall.c:576
+#, c-format
+msgid "%s: no process found\n"
+msgstr "%s: không tìm thấy tiến trình\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Cách sử dụng: killall [-Z NGỮ_CẢNH] [-u NGƯỜI_DÙNG] [ -eIgiqrvw ] [ -"
+"TÍN_HIỆU ] TÊN...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "Cách sử dụng: killall [ TÙY_CHỌN ]... [--] TÊN...\n"
+
+#: src/killall.c:621
+#, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list \t\t(_liệt kê_)\n"
+"       killall -V, --version \t\t(_phiên bản_)\n"
+"\n"
+"  -e,--exact          \t\tcần đến điều khớp chính xác với mọi tên rất dài\n"
+"  -I,--ignore-case    \t_bỏ qua chữ hoa/thường khi khớp tên tiến trình\n"
+"  -g,--process-group  \tbuộc kết thúc nhóm tiến trình thay thế tiến trình\n"
+"  -y,--younger-than   buộc kết thúc mỗi tiến trình mới hơn THỜI_GIAN\n"
+"  -o,--older-than     buộc kết thúc mỗi tiến trình cũ hơn THỜI_GIAN\n"
+"  -i,--interactive    \t\txin xác nhận trước khi buộc kết thúc\n"
+"  -l,--list           \t\tliệt kê mọi tên tín hiệu đã biết\n"
+"  -q,--quiet          \t\tkhông hiển thị lời than phiền (_im_)\n"
+"  -r,--regexp        \t\tgiải thích TÊN là biểu thức chính quy nối dài\n"
+"  -s,--signal TÍN_HIỆU\t\tgởi tín hiệu này thay thế SIGTERM\n"
+"  -u,--user NG_DÙNG      \tbuộc kết thúc chỉ những tiến trình đang chạy\n"
+"\t\t\t\t\t\t\tvới tư cách người dùng này\n"
+"  -v,--verbose        \tthông báo khi đã gởi tín hiệu\n"
+"  -V,--version        \thiện thông tin phiên bản\n"
+"  -w,--wait           \t\tđợi tiến trình kết thúc\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context BIỂU_THỨC_CHÍNH _QUY\n"
+"\t\tbuộc kết thúc chỉ những tiến trình có ngữ cảnh\n"
+"\t\t\t(phải đi trước các đối số khác)\n"
+
+#: src/killall.c:651
+#, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Tác quyền © năm 1993-2012 của Werner Almesberger và Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr "Sai đặt định dạng thời gian"
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "Không tìm thấy người dùng %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "Biểu thức chính quy sai: %s\n"
+
+#: src/killall.c:830
+#, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "killall: Số lượng tên tối đa là %d\n"
+
+#: src/killall.c:835
+#, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "killall: %s thiếu các mục tuyến trình (đã gắn (mount) chưa?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr "Gặp lỗi khi đính kèm đến PID %i\n"
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "peekfd (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
@@ -370,7 +371,7 @@ msgstr ""
 "Tác quyền © năm 2007 của Trent Waddington\n"
 "\n"
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -393,99 +394,302 @@ msgstr ""
 "\n"
 "  Bấm tổ hợp phím CTRL-C để thôi xuất.\n"
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+"Sử dụng: prtstat [tùy_chọn...] PID ...\n"
+"       prtstat -V\n"
+"In ra thông tin về một tiến trình nào đó (PID là mã số tiến trình)\n"
+"    -r,--raw       Hiển thị thông tin dạng thô\n"
+"    -V,--version   Hiển thị thông tin về phiên bản, sau đó thoát\n"
+
+#: src/prtstat.c:65
+#, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "prtstat (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"Tác quyền © năm 2009 của Craig Small\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr "đang chạy"
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr "đang ngủ"
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr "đĩa ngủ"
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr "ma"
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr "đã tìm vết"
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr "đang dàn trang"
+
+#: src/prtstat.c:90
+msgid "unknown"
+msgstr "không rõ"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+"Tiến trình: %-14s\t\tTình trạng: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tNhánh: %ld\n"
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+"Mã số cho tiến trình, nhóm và buổi hợp\n"
+"    Mã số Tiến trình: %d\tMã số Trình mẹ: %d\n"
+"    Mã số Nhóm: %d\tMã số Buổi hợp: %d\n"
+"    Mã số Nhóm T: %d\n"
+"\n"
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+"Sai trang\n"
+"    Tiến trình này\t(nhỏ lớn): %8lu  %8lu\n"
+"    Tiến trình con\t(nhỏ lớn): %8lu  %8lu\n"
+
+#: src/prtstat.c:180
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "Lỗi nội bộ : « MAX_DEPTH » (độ sâu tối đa) chưa đủ.\n"
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+"Thời gian sử dụng CPU\n"
+"    Tiến trình này\t(ndùng hệ khách khốiVR):  %6.2f %6.2f %6.2f %6.2f\n"
+"    Tiến trình con\t(ndùng hệ khách):\t %6.2f %6.2f %6.2f\n"
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+"Vùng nhớ\n"
+"  Cỡ ảo:       %-10s\n"
+"  RSS:         %-10s \t\t Giới hạn RSS: %s\n"
+"  Đầu mã:  %#-10lx\t\t Cuối mã:  %#-10lx\n"
+"  Đầu đống: %#-10lx\n"
+"  Con trỏ đống (ESP): %#10lx\t Con trỏ thể hiện (EIP): %#10lx\n"
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+"Định thời\n"
+"  Chính sách: %s\n"
+"  Mức ưu tiên: %ld \t\t Mức ưu tiên RT: %ld %s\n"
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr "asprintf trong print_stat bị lỗi.\n"
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr "Tiến trình có PID %d không tồn tại.\n"
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr "Không thể mở tập tin trạng thái về PID %d (%s)\n"
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr "Sai tuỳ chọn"
 
-#: src/pstree.c:750
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr "Phải cung cấp ít nhất một PID (mã số tiến trình)."
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+"Chưa gắn kết \"/proc\" thì không lấy được trạng thái về \"/proc/self/stat».\n"
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s trống (lắp chưa?)\n"
+
+#: src/pstree.c:830
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
-"Cách sử dụng: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -"
-"u ]\n"
+"Sử dụng: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ]  "
+"[ -u ]\n"
 "              [ -A | -G | -U ] [ PID | NGƯỜI_DÙNG]\n"
 "       pstree -V\n"
 "\n"
-"Hiá»\87n má»\99t cây tiến trình.\n"
+"Hiá»\83n thá»\8b các tiến trình á»\9f dạng cây.\n"
 "\n"
-"    -a     \thiện các _đối số_ dòng lệnh\n"
-"    -A   \tsử dụng các ký tự vẽ đờng kiểu _ASCII_\n"
-"    -c     \tkhông _gọn_ phụ cây trùng\n"
-"    -h     \t_nổi bật_ tiến trình hiện có và các tổ tiên của nó\n"
-"    -H PID\t\t_nổi bật_ tiến trình này và các tổ tiên của nó\n"
-"     -G     \tsử dụng các ký tự vẽ dòng kiểu VT100\n"
-"    -l     \tkhông chặt cụt _dòng dài_\n"
-"    -n     \tsắp xếp kết xuất theo PID\n"
-"    -p     \thiện các PID; ngụ ý  tùy chọn « -c »\n"
-"    -u\thiện các việc chuyển tiếp _UID\n"
-"    -U\tsử dụng các ký tự vẽ dòng UTF-8\n"
-"    -V\thiện thông tin _phiên bản_\n"
-
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
-msgstr "    -Z     hiện các ngữ cảnh bảo mật kiểu SELinux\n"
-
-#: src/pstree.c:771
+"  -a, --arguments       hiển thị các đối số dòng lệnh\n"
+"  -A, --ascii                  dùng các ký tự vẽ đường kiểu ASCII\n"
+"  -c, --compact            đừng kết lại các cây phụ trùng nhau\n"
+"  -h, --highlight-alt      tô sáng tiến trình đang chạy và các tiến trình "
+"cấp trên\n"
+"  -H PID,\n"
+"  --highlight-pid=PID    tô sáng tiến trình này và các tiến trình cấp trên\n"
+"  -g, --show-pgids    hiển thị id nhóm tiến trình; ngụ ý sử dụng -c\n"
+"  -G, --vt100                dùng các ký tự vẽ đường kiểu VT100\n"
+"  -l, --long                    đừng cắt ngắn dòng dài\n"
+"  -n, --numeric-sort    sắp xếp kết xuất theo PID (mã số tiến trình)\n"
+"  -p, --show-pids        hiển thị các PID (ngụ ý sử dụng \"-c\")\n"
+"  -u, --uid-changes    hiển thị các sự chuyển tiếp UID (mã số người dùng)\n"
+"  -U, --unicode           dùng các ký tự vẽ đường sử dụng bảng mã UTF-8 "
+"(Unicode)\n"
+"  -V, --version             hiển thị thông tin về phiên bản\n"
+
+#: src/pstree.c:850
+#, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "  -Z     show         Các ngữ cảnh bảo mật SELinux\n"
+
+#: src/pstree.c:852
 #, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
-"    PID    \tbắt đầu tại PID này; mặc định là 1 (init)\n"
-"    USER   hiện chỉ các cây có gốc là tiến trình của _người dùng_ này\n"
+"  PID    \t\t\tbắt đầu ở PID này; mặc định là 1 (init)\n"
+"  NGƯỜI_DÙNG \thiển thị chỉ những cây có gốc là tiến trình của người dùng "
+"này\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"Tác quyền © 1993-2009 Werner Almesberger và Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
-msgstr "Chưa lặp TERM\n"
+msgstr "Chưa đặt TERM\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "Không thể gọi khả năng thiết bị cuối\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "Không có tên người dùng như vậy: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "Không tìm thấy tiến trình.\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
-msgstr "Hãy bấm phím Return để đóng\n"
+msgstr "Bấm phím Return để đóng\n"
 
 #: src/signals.c:84
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
-msgstr "%s: không biết tín hiệu; lệnh « %s -l » liệt kê các tín hiệu\n"
+msgstr "%s: không rõ tín hiệu; câu lệnh \"%s -l\" liệt kê các tín hiệu\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Cách sử dụng: pidof [ -eg ] TÊN ...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      cần đến điều khớp _chính xác_ với mọi tên rất dài\n"
+#~ "\tbỏ qua nếu không có dòng lệnh sẵn sàng\n"
+#~ "    -g      hiện ID của _nhóm_ tiến trình thay thế ID tiến trình\n"
+#~ "    -V      hiện thông tin _phiên bản_\n"
+#~ "\n"
+
+#~ msgid ""
+#~ "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
+#~ "\n"
+#~ msgstr ""
+#~ "Bản quyền © 1993-2005 Werner Almesberger và Craig Small\n"
+#~ "\n"
index 6b87a0f..79f48a2 100644 (file)
Binary files a/po/zh_CN.gmo and b/po/zh_CN.gmo differ
index e382426..25fe07b 100644 (file)
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: psmisc 22.5\n"
+"Project-Id-Version: psmisc 22.6\n"
 "Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
-"POT-Creation-Date: 2007-11-04 17:27+1100\n"
-"PO-Revision-Date: 2007-06-21 14:33+0800\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2007-11-06 21:28+0800\n"
 "Last-Translator: LI Daobing <lidaobing@gmail.com>\n"
-"Language-Team: Chinese (simplified) <translation-team-zh-cn@lists."
-"sourceforge.net>\n"
+"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
+"Language: zh_CN\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: src/killall.c:74
-#, c-format
-msgid "Kill %s(%s%d) ? (y/N) "
-msgstr "杀死 %s(%s%d) ? (y/N) "
-
-#: src/killall.c:77
+#: src/fuser.c:133
 #, fuzzy, c-format
-msgid "Signal %s(%s%d) ? (y/N) "
-msgstr "杀死 %s(%s%d) ? (y/N) "
-
-#: src/killall.c:121
-#, c-format
-msgid "Cannot get UID from process status\n"
-msgstr "无法从进程状态获取用户ID(UID)\n"
-
-#: src/killall.c:147 src/killall.c:682
-#, c-format
-msgid "Bad regular expression: %s\n"
-msgstr "错误的正则表达式: %s\n"
-
-#: src/killall.c:343
-#, c-format
-msgid "skipping partial match %s(%d)\n"
-msgstr "跳过部分符合的部分 %s(%d)\n"
-
-#: src/killall.c:445
-#, c-format
-msgid "Killed %s(%s%d) with signal %d\n"
-msgstr "%s(%s%d) 被信号 %d 杀死\n"
-
-#: src/killall.c:459
-#, c-format
-msgid "%s: no process killed\n"
-msgstr "%s: 没有进程被杀死\n"
-
-#: src/killall.c:497
-#, c-format
-msgid ""
-"Usage: pidof [ -eg ] NAME...\n"
-"       pidof -V\n"
-"\n"
-"    -e      require exact match for very long names;\n"
-"            skip if the command line is unavailable\n"
-"    -g      show process group ID instead of process ID\n"
-"    -V      display version information\n"
-"\n"
-msgstr ""
-"用法: pidof [ -eg ] 程序名...\n"
-"      pidof -V\n"
-"\n"
-"    -e      对长程序名需要严格匹配\n"
-"            如果命令行不可用则忽略该选项\n"
-"    -g      显示进程组ID而不是进程ID\n"
-"    -V      显示版本信息\n"
-"\n"
-
-#: src/killall.c:511
-#, c-format
-msgid ""
-"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
-msgstr ""
-"Usage: killall [-Z 上下文] [-u 用户名] [ -eIgiqrvw ] [ -信号 ] 程序名...\n"
-
-#: src/killall.c:514
-#, c-format
-msgid "Usage: killall [OPTION]... [--] NAME...\n"
-msgstr "用法: killall [选项]... [--] 进程名...\n"
-
-#: src/killall.c:517
-#, c-format
-msgid ""
-"       killall -l, --list\n"
-"       killall -V, --version\n"
-"\n"
-"  -e,--exact          require exact match for very long names\n"
-"  -I,--ignore-case    case insensitive process name match\n"
-"  -g,--process-group  kill process group instead of process\n"
-"  -i,--interactive    ask for confirmation before killing\n"
-"  -l,--list           list all known signal names\n"
-"  -q,--quiet          don't print complaints\n"
-"  -r,--regexp         interpret NAME as an extended regular expression\n"
-"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
-"  -u,--user USER      kill only process(es) running as USER\n"
-"  -v,--verbose        report if the signal was successfully sent\n"
-"  -V,--version        display version information\n"
-"  -w,--wait           wait for processes to die\n"
-msgstr ""
-"      killall -l, --list\n"
-"      killall -V, --version\n"
-"\n"
-"  -e,--exact          对长名字需要严格匹配\n"
-"  -I,--ignore-case    匹配进程名时忽略大小写\n"
-"  -g,--process-group  杀死进程组而不是进程\n"
-"  -i,--interactive    在杀死进程前要求确认\n"
-"  -l,--list           显示所有的信号名\n"
-"  -q,--quiet          不要打印抱怨信息\n"
-"  -r,--regexp         将 \"进程名\" 视为扩展正则表达式\n"
-"  -s,--signal 信号    发送 \"信号\" 而不是 SIGTERM\n"
-"  -u,--user 用户      仅杀死 \"用户\" 的进程\n"
-"  -v,--verbose        信号成功送出时打印信息\n"
-"  -V,--version        显示版本信息\n"
-"  -w,--wait           等待进程死亡\n"
-
-#: src/killall.c:533
-#, c-format
 msgid ""
-"  -Z,--context REGEXP kill only process(es) having context\n"
-"                      (must precede other arguments)\n"
-msgstr ""
-"  -Z,--context 正则表达式 仅杀死含有指定上下文的进程\n"
-"                          (必须在其他参数前使用)\n"
-
-#: src/killall.c:554 src/fuser.c:122 src/pstree.c:780
-#, c-format
-msgid ""
-"Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n"
-"\n"
-msgstr ""
-"版权所有 © 1993-2005 Werner Almesberger 和 Craig Small\n"
-"\n"
-
-#: src/killall.c:556 src/fuser.c:124 src/peekfd.c:87 src/pstree.c:782
-#, c-format
-msgid ""
-"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-"This is free software, and you are welcome to redistribute it under\n"
-"the terms of the GNU General Public License.\n"
-"For more information about these matters, see the files named COPYING.\n"
-msgstr ""
-"PSmisc 无任何保证。\n"
-"该程序为自由软件,欢迎你在 GNU 通用公共许可证(GPL) 下重新发布。\n"
-"详情可参阅 COPYING 文件。\n"
-
-#: src/killall.c:656
-#, c-format
-msgid "Cannot find user %s\n"
-msgstr "无法找到用户 %s\n"
-
-#: src/killall.c:715
-#, c-format
-msgid "Maximum number of names is %d\n"
-msgstr "最大名字数量是 %d\n"
-
-#: src/killall.c:720 src/pstree.c:710
-#, c-format
-msgid "%s is empty (not mounted ?)\n"
-msgstr "%s 是空的 (未挂载?)\n"
-
-#: src/fuser.c:89
-#, fuzzy, c-format
-msgid ""
-"Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-"             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
 "       fuser -l\n"
 "       fuser -V\n"
 "Show which processes use the named files, sockets, or filesystems.\n"
 "\n"
-"    -a        display unused files too\n"
-"    -c        mounted FS\n"
-"    -f        silently ignored (for POSIX compatibility)\n"
-"    -i        ask before killing (ignored without -k)\n"
-"    -k        kill processes accessing the named file\n"
-"    -l        list available signal names\n"
-"    -m        show all processes using the named filesystems\n"
-"    -n SPACE  search in this name space (file, udp, or tcp)\n"
-"    -s        silent operation\n"
-"    -SIGNAL   send this signal instead of SIGKILL\n"
-"    -u        display user IDs\n"
-"    -v        verbose output\n"
-"    -V        display version information\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
 msgstr ""
 "Usage: fuser [ -a | -s | -c ] [ -n 名字空间 ] [ -信号 ] [ -kimuv ] 名字...\n"
 "             [ - ] [ -n 名字空间 ] [ -信号 ] [ -kimuv ] 名字...\n"
@@ -207,152 +60,297 @@ msgstr ""
 "    -u          显示用户 ID\n"
 "    -v          输出更多信息\n"
 "    -V          显示版本信息\n"
+
+#: src/fuser.c:150
+#, fuzzy, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
 "    -4          仅查找 IPv4 端口\n"
 "    -6          仅查找 IPv6 端口\n"
+
+#: src/fuser.c:153
+#, fuzzy, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
 "    -           重置选项\n"
 "\n"
 "  udp/tcp 名字格式: [本地端口][,[远程主机][,[远程端口]]]\n"
 "\n"
 
-#: src/fuser.c:109
+#: src/fuser.c:160
 #, c-format
-msgid ""
-"    -4        search IPv4 sockets only\n"
-"    -6        search IPv6 sockets only\n"
-msgstr ""
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
 
-#: src/fuser.c:113
-#, c-format
+#: src/fuser.c:163
+#, fuzzy, c-format
 msgid ""
-"    -         reset options\n"
-"\n"
-"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
 "\n"
 msgstr ""
+"版权所有 © 1993-2005 Werner Almesberger 和 Craig Small\n"
+"\n"
 
-#: src/fuser.c:120
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
 #, c-format
-msgid "fuser (PSmisc) %s\n"
-msgstr "fuser (PSmisc) %s\n"
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc 无任何保证。\n"
+"该程序为自由软件,欢迎你在 GNU 通用公共许可证(GPL) 下重新发布。\n"
+"详情可参阅 COPYING 文件。\n"
 
-#: src/fuser.c:147
+#: src/fuser.c:184
 #, c-format
 msgid "Cannot open /proc directory: %s\n"
 msgstr "无法打开 /proc 目录: %s\n"
 
-#: src/fuser.c:283
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
 #, c-format
 msgid "Cannot allocate memory for matched proc: %s\n"
 msgstr "无法为已找到的进程分配内存: %s\n"
 
-#: src/fuser.c:316
+#: src/fuser.c:478
 #, c-format
-msgid "Cannot stat mount point %s: %s\n"
-msgstr "无法分析挂载点 %s: %s\n"
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
 
-#: src/fuser.c:333 src/fuser.c:352 src/fuser.c:375
+#: src/fuser.c:481
 #, c-format
 msgid "Cannot stat %s: %s\n"
 msgstr "无法分析 %s: %s\n"
 
-#: src/fuser.c:476
+#: src/fuser.c:618
 #, c-format
 msgid "Cannot resolve local port %s: %s\n"
 msgstr "无法解析本地端口 %s: %s\n"
 
-#: src/fuser.c:492
+#: src/fuser.c:636
 #, c-format
 msgid "Unknown local port AF %d\n"
 msgstr "未知本地端口 AF %d\n"
 
-#: src/fuser.c:553
+#: src/fuser.c:724
 #, c-format
 msgid "Cannot open protocol file \"%s\": %s\n"
 msgstr "无法打开协议文件 \"%s\": %s\n"
 
-#: src/fuser.c:746
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
 msgid "Namespace option requires an argument."
 msgstr "名字空间选项需要一个参数"
 
-#: src/fuser.c:755
+#: src/fuser.c:1041
 msgid "Invalid namespace name"
 msgstr "无效的名字空间名"
 
-#: src/fuser.c:811
-msgid "You can only use files with mountpoint option"
+#: src/fuser.c:1102
+#, fuzzy
+msgid "You can only use files with mountpoint options"
 msgstr "你只能使用有挂载选项的文件。"
 
-#: src/fuser.c:840
+#: src/fuser.c:1156
 msgid "No process specification given"
 msgstr "未指定进程"
 
-#: src/fuser.c:845
-msgid "You cannot use the mounted and mountpoint flags together"
-msgstr "你不能同时是用已挂载和挂载点选项"
-
-#: src/fuser.c:852
+#: src/fuser.c:1163
 msgid "all option cannot be used with silent option."
 msgstr "所有选项都不能与不输出信息选项同时使用。"
 
-#: src/fuser.c:856
+#: src/fuser.c:1168
 msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
 msgstr "你无法同时搜索 IPv4 和 IPv6 端口"
 
-#: src/fuser.c:901
+#: src/fuser.c:1246
 #, c-format
 msgid "%*s USER        PID ACCESS COMMAND\n"
 msgstr "%*s 用户     进程号 权限   命令\n"
 
-#: src/fuser.c:926 src/fuser.c:951
+#: src/fuser.c:1279 src/fuser.c:1336
 msgid "(unknown)"
 msgstr "(未知)"
 
-#: src/fuser.c:1019
+#: src/fuser.c:1415 src/fuser.c:1454
 #, c-format
 msgid "Cannot stat file %s: %s\n"
 msgstr "无法获取 %s 的文件状态: %s\n"
 
-#: src/fuser.c:1113
+#: src/fuser.c:1540
 #, c-format
 msgid "Cannot open /proc/net/unix: %s\n"
 msgstr "无法打开 /proc/net/unix: %s\n"
 
-#: src/fuser.c:1149
-#, c-format
-msgid "Cannot open /etc/mtab: %s\n"
-msgstr "无法打开 /etc/mtab: %s\n"
-
-#: src/fuser.c:1198
+#: src/fuser.c:1616
 #, c-format
 msgid "Kill process %d ? (y/N) "
 msgstr "杀死进程 %d ? (y/N) "
 
-#: src/fuser.c:1222
+#: src/fuser.c:1652
 #, c-format
 msgid "Could not kill process %d: %s\n"
 msgstr "无法杀死进程 %d: %s\n"
 
-#: src/fuser.c:1237
+#: src/fuser.c:1667
 #, c-format
 msgid "Cannot open a network socket.\n"
 msgstr "无法打开网络端口。\n"
 
-#: src/fuser.c:1241
+#: src/fuser.c:1671
 #, c-format
 msgid "Cannot find socket's device number.\n"
 msgstr "无法找到 socket 的设备号。\n"
 
-#: src/peekfd.c:75
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "杀死 %s(%s%d) ? (y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "信号 %s(%s%d) ? (y/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "无法从进程状态获取用户ID(UID)\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "错误的正则表达式: %s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "跳过部分符合的部分 %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "%s(%s%d) 被信号 %d 杀死\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: 没有进程被杀死\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"Usage: killall [-Z 上下文] [-u 用户名] [ -eIgiqrvw ] [ -信号 ] 程序名...\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "用法: killall [选项]... [--] 进程名...\n"
+
+#: src/killall.c:621
+#, fuzzy, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"      killall -l, --list\n"
+"      killall -V, --version\n"
+"\n"
+"  -e,--exact          对长名字需要严格匹配\n"
+"  -I,--ignore-case    匹配进程名时忽略大小写\n"
+"  -g,--process-group  杀死进程组而不是进程\n"
+"  -i,--interactive    在杀死进程前要求确认\n"
+"  -l,--list           显示所有的信号名\n"
+"  -q,--quiet          不要打印抱怨信息\n"
+"  -r,--regexp         将 \"进程名\" 视为扩展正则表达式\n"
+"  -s,--signal 信号    发送 \"信号\" 而不是 SIGTERM\n"
+"  -u,--user 用户      仅杀死 \"用户\" 的进程\n"
+"  -v,--verbose        信号成功送出时打印信息\n"
+"  -V,--version        显示版本信息\n"
+"  -w,--wait           等待进程死亡\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context 正则表达式 仅杀死含有指定上下文的进程\n"
+"                          (必须在其他参数前使用)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"版权所有 © 1993-2005 Werner Almesberger 和 Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "无法找到用户 %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "错误的正则表达式: %s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "最大名字数量是 %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s 是空的 (未挂载?)\n"
+
+#: src/peekfd.c:96
 #, c-format
 msgid "Error attaching to pid %i\n"
 msgstr "帮定%i号进程时发生错误\n"
 
-#: src/peekfd.c:83
+#: src/peekfd.c:104
 #, c-format
 msgid "peekfd (PSmisc) %s\n"
 msgstr "peekfd (PSmisc) %s\n"
 
-#: src/peekfd.c:85
+#: src/peekfd.c:106
 #, c-format
 msgid ""
 "Copyright (C) 2007 Trent Waddington\n"
@@ -361,7 +359,7 @@ msgstr ""
 "版权所有 © 2007 Trent Waddington\n"
 "\n"
 
-#: src/peekfd.c:95
+#: src/peekfd.c:116
 #, c-format
 msgid ""
 "Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
@@ -384,31 +382,167 @@ msgstr ""
 "\n"
 "  输入 CTRL-C 来终止输出。\n"
 
-#: src/pstree.c:374
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"版权所有 © 2007 Trent Waddington\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+#, fuzzy
+msgid "unknown"
+msgstr "(未知)"
+
+#: src/prtstat.c:164
 #, c-format
-msgid "Internal error: MAX_DEPTH not big enough.\n"
-msgstr "内部错误: MAX_DEPTH 不够大。\n"
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
 
-#: src/pstree.c:750
+#: src/prtstat.c:169
 #, c-format
 msgid ""
-"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s 是空的 (未挂载?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
 "              [ -A | -G | -U ] [ PID | USER ]\n"
 "       pstree -V\n"
 "Display a tree of processes.\n"
 "\n"
-"    -a     show command line arguments\n"
-"    -A     use ASCII line drawing characters\n"
-"    -c     don't compact identical subtrees\n"
-"    -h     highlight current process and its ancestors\n"
-"    -H PID highlight this process and its ancestors\n"
-"    -G     use VT100 line drawing characters\n"
-"    -l     don't truncate long lines\n"
-"    -n     sort output by PID\n"
-"    -p     show PIDs; implies -c\n"
-"    -u     show uid transitions\n"
-"    -U     use UTF-8 (Unicode) line drawing characters\n"
-"    -V     display version information\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
 msgstr ""
 "用法: pstree [ -a ] [ -c ] [ -h | -H 进程号 ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
 "             [ -A | -G | -U ] [ 进程号 | 用户 ]\n"
@@ -428,48 +562,57 @@ msgstr ""
 "    -U        使用 UTF-8 (Unicode) 划线符\n"
 "    -V        显示版本信息\n"
 
-#: src/pstree.c:768
-#, c-format
-msgid "    -Z     show SELinux security contexts\n"
+#: src/pstree.c:850
+#, fuzzy, c-format
+msgid "  -Z     show         SELinux security contexts\n"
 msgstr "    -Z     显示 SELinux 安全环境\n"
 
-#: src/pstree.c:771
-#, c-format
+#: src/pstree.c:852
+#, fuzzy, c-format
 msgid ""
-"    PID    start at this PID; default is 1 (init)\n"
-"    USER   show only trees rooted at processes of this user\n"
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
 "\n"
 msgstr ""
 "    进程号    从 \"进程号\" 开始,缺省是1(init)\n"
 "    用户      仅显示从该 \"用户\" 的进程开始的进程树\n"
 "\n"
 
-#: src/pstree.c:778
+#: src/pstree.c:859
 #, c-format
 msgid "pstree (PSmisc) %s\n"
 msgstr "pstree (PSmisc) %s\n"
 
-#: src/pstree.c:871
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"版权所有 © 1993-2005 Werner Almesberger 和 Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
 #, c-format
 msgid "TERM is not set\n"
 msgstr "未设置环境变量TERM\n"
 
-#: src/pstree.c:876
+#: src/pstree.c:979
 #, c-format
 msgid "Can't get terminal capabilities\n"
 msgstr "无法获取终端大小\n"
 
-#: src/pstree.c:920
+#: src/pstree.c:1030
 #, c-format
 msgid "No such user name: %s\n"
 msgstr "无用户名: %s\n"
 
-#: src/pstree.c:936
+#: src/pstree.c:1053
 #, c-format
 msgid "No processes found.\n"
 msgstr "未发现进程。\n"
 
-#: src/pstree.c:941
+#: src/pstree.c:1059
 #, c-format
 msgid "Press return to close\n"
 msgstr "按回车后关闭\n"
@@ -478,3 +621,34 @@ msgstr "按回车后关闭\n"
 #, c-format
 msgid "%s: unknown signal; %s -l lists signals.\n"
 msgstr "%s: 未知的信号; %s -l 显示信号列表。\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "用法: pidof [ -eg ] 程序名...\n"
+#~ "      pidof -V\n"
+#~ "\n"
+#~ "    -e      对长程序名需要严格匹配\n"
+#~ "            如果命令行不可用则忽略该选项\n"
+#~ "    -g      显示进程组ID而不是进程ID\n"
+#~ "    -V      显示版本信息\n"
+#~ "\n"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "无法分析挂载点 %s: %s\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "你不能同时是用已挂载和挂载点选项"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "无法打开 /etc/mtab: %s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "内部错误: MAX_DEPTH 不够大。\n"
diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo
new file mode 100644 (file)
index 0000000..a18adad
Binary files /dev/null and b/po/zh_TW.gmo differ
diff --git a/po/zh_TW.po b/po/zh_TW.po
new file mode 100644 (file)
index 0000000..4bb30b5
--- /dev/null
@@ -0,0 +1,655 @@
+# Traditional Chinese Messages for psmisc.
+# Copyright (C) 2008 Free Software Foundation, Inc.
+# This file is distributed under the same license as the psmisc package.
+# Wei-Lun Chao <chaoweilun@gmail.com>, 2009.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: psmisc 22.6\n"
+"Report-Msgid-Bugs-To: csmall@small.dropbear.id.au\n"
+"POT-Creation-Date: 2012-09-20 22:13+1000\n"
+"PO-Revision-Date: 2009-03-23 23:10+0800\n"
+"Last-Translator: Wei-Lun Chao <chaoweilun@gmail.com>\n"
+"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
+"Language: zh_TW\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: src/fuser.c:133
+#, fuzzy, c-format
+msgid ""
+"Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] "
+"NAME...\n"
+"       fuser -l\n"
+"       fuser -V\n"
+"Show which processes use the named files, sockets, or filesystems.\n"
+"\n"
+"  -a,--all              display unused files too\n"
+"  -i,--interactive      ask before killing (ignored without -k)\n"
+"  -k,--kill             kill processes accessing the named file\n"
+"  -l,--list-signals     list available signal names\n"
+"  -m,--mount            show all processes using the named filesystems or "
+"block device\n"
+"  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+"  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+"  -s,--silent           silent operation\n"
+"  -SIGNAL               send this signal instead of SIGKILL\n"
+"  -u,--user             display user IDs\n"
+"  -v,--verbose          verbose output\n"
+"  -w,--writeonly        kill only processes with write access\n"
+"  -V,--version          display version information\n"
+msgstr ""
+"用法:fuser [ -a | -s | -c ] [ -n 空格 ] [ -SIGNAL ] [ -kimuv ] 名稱…\n"
+"            [ - ] [ -n 空格 ] [ -SIGNAL ] [ -kimuv ] 名稱…\n"
+"      fuser -l\n"
+"      fuser -V\n"
+"顯示何項進程使用指名的檔案、通訊端或檔案系統。\n"
+"\n"
+"   -a        也顯示未使用的檔案\n"
+"   -c        掛載的檔案系統\n"
+"   -f        安靜地忽略 (為了 POSIX 相容性)\n"
+"   -i        砍除之前先詢問 (若無 -k 則忽略)\n"
+"   -k        砍除存取指名檔案的進程\n"
+"   -l        列出可用的信號名稱\n"
+"   -m        顯示所有使用指名檔案系統的進程\n"
+"   -n 空間   在這個名稱空間中搜尋 (檔案、udp 或 tcp)\n"
+"   -s        安靜地作業\n"
+"   -SIGNAL   發送這個信號以代替 SIGKILL\n"
+"   -u        顯示使用者識別號\n"
+"   -v        詳細的輸出\n"
+"   -V        顯示版本資訊\n"
+
+#: src/fuser.c:150
+#, fuzzy, c-format
+msgid ""
+"  -4,--ipv4             search IPv4 sockets only\n"
+"  -6,--ipv6             search IPv6 sockets only\n"
+msgstr ""
+"    -4        只搜尋 IPv4 通訊端\n"
+"    -6        只搜尋 IPv6 通訊端\n"
+
+#: src/fuser.c:153
+#, fuzzy, c-format
+msgid ""
+"  -                     reset options\n"
+"\n"
+"  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n"
+"\n"
+msgstr ""
+"    -         重置選項\n"
+"\n"
+"  udp/tcp 名稱:[本機通訊埠][,[遠端主機][,[遠端通訊埠]]]\n"
+"\n"
+
+#: src/fuser.c:160
+#, c-format
+msgid "fuser (PSmisc) %s\n"
+msgstr "fuser (PSmisc) %s\n"
+
+#: src/fuser.c:163
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"著作權 © 1993-2005 Werner Almesberger 與 Craig Small\n"
+"\n"
+
+#: src/fuser.c:165 src/killall.c:653 src/peekfd.c:108 src/prtstat.c:68
+#: src/pstree.c:864
+#, c-format
+msgid ""
+"PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+"This is free software, and you are welcome to redistribute it under\n"
+"the terms of the GNU General Public License.\n"
+"For more information about these matters, see the files named COPYING.\n"
+msgstr ""
+"PSmisc 完全不附帶任何擔保。\n"
+"這是自由軟體,並且歡迎您依照 GNU 通用公共授權\n"
+"來再次散布它。\n"
+"請參看名為 COPYING 的檔案,以獲得更多關於這些問題的資訊。\n"
+
+#: src/fuser.c:184
+#, c-format
+msgid "Cannot open /proc directory: %s\n"
+msgstr "無法開啟 /proc 目錄:%s\n"
+
+#: src/fuser.c:397 src/fuser.c:450 src/fuser.c:1923
+#, c-format
+msgid "Cannot allocate memory for matched proc: %s\n"
+msgstr "無法為符合的進程配置記憶體:%s\n"
+
+#: src/fuser.c:478
+#, c-format
+msgid "Specified filename %s does not exist.\n"
+msgstr ""
+
+#: src/fuser.c:481
+#, c-format
+msgid "Cannot stat %s: %s\n"
+msgstr "無法顯示 %s:%s\n"
+
+#: src/fuser.c:618
+#, c-format
+msgid "Cannot resolve local port %s: %s\n"
+msgstr "無法解析本機通訊埠 %s:%s\n"
+
+#: src/fuser.c:636
+#, c-format
+msgid "Unknown local port AF %d\n"
+msgstr "不明的本機通訊埠 AF %d\n"
+
+#: src/fuser.c:724
+#, c-format
+msgid "Cannot open protocol file \"%s\": %s\n"
+msgstr "無法開啟協定檔案「%s」:%s\n"
+
+#: src/fuser.c:972
+#, c-format
+msgid "%s: Invalid option %s\n"
+msgstr ""
+
+#: src/fuser.c:1023
+msgid "Namespace option requires an argument."
+msgstr "名稱空間選項需要一個引數。"
+
+#: src/fuser.c:1041
+msgid "Invalid namespace name"
+msgstr "無效的名稱空間名稱"
+
+#: src/fuser.c:1102
+#, fuzzy
+msgid "You can only use files with mountpoint options"
+msgstr "您只能將檔案與掛載點選項一起使用"
+
+#: src/fuser.c:1156
+msgid "No process specification given"
+msgstr "沒有給定任何進程規格"
+
+#: src/fuser.c:1163
+msgid "all option cannot be used with silent option."
+msgstr "所有選項無法與安靜選項一起使用。"
+
+#: src/fuser.c:1168
+msgid "You cannot search for only IPv4 and only IPv6 sockets at the same time"
+msgstr "您無法同時只搜尋 IPv4 又只搜尋 IPv6 通訊端"
+
+#: src/fuser.c:1246
+#, c-format
+msgid "%*s USER        PID ACCESS COMMAND\n"
+msgstr "%*s 使用者      PID 存取命令\n"
+
+#: src/fuser.c:1279 src/fuser.c:1336
+msgid "(unknown)"
+msgstr "(不明)"
+
+#: src/fuser.c:1415 src/fuser.c:1454
+#, c-format
+msgid "Cannot stat file %s: %s\n"
+msgstr "無法顯示檔案 %s:%s\n"
+
+#: src/fuser.c:1540
+#, c-format
+msgid "Cannot open /proc/net/unix: %s\n"
+msgstr "無法開啟 /proc/net/unix:%s\n"
+
+#: src/fuser.c:1616
+#, c-format
+msgid "Kill process %d ? (y/N) "
+msgstr "砍除進程 %d?(y/N) "
+
+#: src/fuser.c:1652
+#, c-format
+msgid "Could not kill process %d: %s\n"
+msgstr "無法砍除進程 %d:%s\n"
+
+#: src/fuser.c:1667
+#, c-format
+msgid "Cannot open a network socket.\n"
+msgstr "無法開啟網路通訊端。\n"
+
+#: src/fuser.c:1671
+#, c-format
+msgid "Cannot find socket's device number.\n"
+msgstr "找不到通訊端裝置編號。\n"
+
+#: src/killall.c:100
+#, c-format
+msgid "Kill %s(%s%d) ? (y/N) "
+msgstr "砍除 %s(%s%d)?(y/N) "
+
+#: src/killall.c:103
+#, c-format
+msgid "Signal %s(%s%d) ? (y/N) "
+msgstr "信號 %s(%s%d)?(y/N) "
+
+#: src/killall.c:211
+#, fuzzy, c-format
+msgid "killall: Cannot get UID from process status\n"
+msgstr "無法從進程狀態取得 UID\n"
+
+#: src/killall.c:237
+#, fuzzy, c-format
+msgid "killall: Bad regular expression: %s\n"
+msgstr "不當的正規表示式:%s\n"
+
+#: src/killall.c:447
+#, fuzzy, c-format
+msgid "killall: skipping partial match %s(%d)\n"
+msgstr "跳過部份符合 %s(%d)\n"
+
+#: src/killall.c:562
+#, c-format
+msgid "Killed %s(%s%d) with signal %d\n"
+msgstr "藉由信號 %4$d 砍除 %1$s(%2$s%3$d)\n"
+
+#: src/killall.c:576
+#, fuzzy, c-format
+msgid "%s: no process found\n"
+msgstr "%s: 沒有砍除任何進程\n"
+
+#: src/killall.c:615
+#, c-format
+msgid ""
+"Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"
+msgstr ""
+"用法:killall [-Z 上下文] [-u 使用者] [ -eIgiqrvw ] [ -SIGNAL ] 名稱…\n"
+
+#: src/killall.c:618
+#, c-format
+msgid "Usage: killall [OPTION]... [--] NAME...\n"
+msgstr "用法:killall [選項]… [--] 名稱…\n"
+
+#: src/killall.c:621
+#, fuzzy, c-format
+msgid ""
+"       killall -l, --list\n"
+"       killall -V, --version\n"
+"\n"
+"  -e,--exact          require exact match for very long names\n"
+"  -I,--ignore-case    case insensitive process name match\n"
+"  -g,--process-group  kill process group instead of process\n"
+"  -y,--younger-than   kill processes younger than TIME\n"
+"  -o,--older-than     kill processes older than TIME\n"
+"  -i,--interactive    ask for confirmation before killing\n"
+"  -l,--list           list all known signal names\n"
+"  -q,--quiet          don't print complaints\n"
+"  -r,--regexp         interpret NAME as an extended regular expression\n"
+"  -s,--signal SIGNAL  send this signal instead of SIGTERM\n"
+"  -u,--user USER      kill only process(es) running as USER\n"
+"  -v,--verbose        report if the signal was successfully sent\n"
+"  -V,--version        display version information\n"
+"  -w,--wait           wait for processes to die\n"
+msgstr ""
+"       killall -l, --list\n"
+"      killall -V, --version\n"
+"\n"
+" -e,--exact          對於很長的名稱需要精確的符合\n"
+" -I,--ignore-case    進程名稱符合時大小寫不須相符\n"
+" -g,--process-group  砍除進程群組以代替進程\n"
+" -i,--interactive    砍除之前徵詢確認\n"
+" -l,--list           列出所有已知信號名稱\n"
+" -q,--quiet          不印出抱怨訊息\n"
+" -r,--regexp         將名稱以進階正規表示式解譯\n"
+" -s,--signal 信號    發送這個信號以代替 SIGTERM\n"
+" -u,--user 使用者    只砍除指定使用者執行的進程\n"
+" -v,--verbose        如果信號已被成功發送則回報\n"
+" -V,--version        顯示版本資訊\n"
+" -w,--wait           等待進程的消滅\n"
+
+#: src/killall.c:639
+#, c-format
+msgid ""
+"  -Z,--context REGEXP kill only process(es) having context\n"
+"                      (must precede other arguments)\n"
+msgstr ""
+"  -Z,--context REGEXP 只砍除有此上下文的進程\n"
+"                     (必須位於其他引數之前)\n"
+
+#: src/killall.c:651
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"著作權 © 1993-2005 Werner Almesberger 與 Craig Small\n"
+"\n"
+
+#: src/killall.c:741 src/killall.c:747
+msgid "Invalid time format"
+msgstr ""
+
+#: src/killall.c:767
+#, c-format
+msgid "Cannot find user %s\n"
+msgstr "找不到使用者 %s\n"
+
+#: src/killall.c:798
+#, c-format
+msgid "Bad regular expression: %s\n"
+msgstr "不當的正規表示式:%s\n"
+
+#: src/killall.c:830
+#, fuzzy, c-format
+msgid "killall: Maximum number of names is %d\n"
+msgstr "名稱的最大數量為 %d\n"
+
+#: src/killall.c:835
+#, fuzzy, c-format
+msgid "killall: %s lacks process entries (not mounted ?)\n"
+msgstr "%s 是空的 (尚未掛載?)\n"
+
+#: src/peekfd.c:96
+#, c-format
+msgid "Error attaching to pid %i\n"
+msgstr "附加到 pid %i 時發生錯誤\n"
+
+#: src/peekfd.c:104
+#, c-format
+msgid "peekfd (PSmisc) %s\n"
+msgstr "peekfd (PSmisc) %s\n"
+
+#: src/peekfd.c:106
+#, c-format
+msgid ""
+"Copyright (C) 2007 Trent Waddington\n"
+"\n"
+msgstr ""
+"著作權 © 2007 Trent Waddington\n"
+"\n"
+
+#: src/peekfd.c:116
+#, c-format
+msgid ""
+"Usage: peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 output 8 bit clean streams.\n"
+"    -n don't display read/write from fd headers.\n"
+"    -c peek at any new child processes too.\n"
+"    -d remove duplicate read/writes from the output.\n"
+"    -V prints version info.\n"
+"    -h prints this help.\n"
+"\n"
+"  Press CTRL-C to end output.\n"
+msgstr ""
+"用法:peekfd [-8] [-n] [-c] [-d] [-V] [-h] <pid> [<fd> ..]\n"
+"    -8 輸出不含第八位元的資料流。\n"
+"    -n 不從 fd 標頭顯示讀取/寫入。\n"
+"    -c 也取自任何新的子進程。\n"
+"    -d 從輸出移除重複的讀取/寫入。\n"
+"    -V 印出版本資訊。\n"
+"    -h 印出這個說明。\n"
+"\n"
+"  按下 CTRL-C 以結束輸出。\n"
+
+#: src/prtstat.c:54
+#, c-format
+msgid ""
+"Usage: prtstat [options] PID ...\n"
+"       prtstat -V\n"
+"Print information about a process\n"
+"    -r,--raw       Raw display of information\n"
+"    -V,--version   Display version information and exit\n"
+msgstr ""
+
+#: src/prtstat.c:65
+#, fuzzy, c-format
+msgid "prtstat (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/prtstat.c:66
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 2009 Craig Small\n"
+"\n"
+msgstr ""
+"著作權 © 2007 Trent Waddington\n"
+"\n"
+
+#: src/prtstat.c:78
+msgid "running"
+msgstr ""
+
+#: src/prtstat.c:80
+msgid "sleeping"
+msgstr ""
+
+#: src/prtstat.c:82
+msgid "disk sleep"
+msgstr ""
+
+#: src/prtstat.c:84
+msgid "zombie"
+msgstr ""
+
+#: src/prtstat.c:86
+msgid "traced"
+msgstr ""
+
+#: src/prtstat.c:88
+msgid "paging"
+msgstr ""
+
+#: src/prtstat.c:90
+#, fuzzy
+msgid "unknown"
+msgstr "(不明)"
+
+#: src/prtstat.c:164
+#, c-format
+msgid ""
+"Process: %-14s\t\tState: %c (%s)\n"
+"  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"
+msgstr ""
+
+#: src/prtstat.c:169
+#, c-format
+msgid ""
+"Process, Group and Session IDs\n"
+"  Process ID: %d\t\t  Parent ID: %d\n"
+"    Group ID: %d\t\t Session ID: %d\n"
+"  T Group ID: %d\n"
+"\n"
+msgstr ""
+
+#: src/prtstat.c:175
+#, c-format
+msgid ""
+"Page Faults\n"
+"  This Process    (minor major): %8lu  %8lu\n"
+"  Child Processes (minor major): %8lu  %8lu\n"
+msgstr ""
+
+#: src/prtstat.c:180
+#, c-format
+msgid ""
+"CPU Times\n"
+"  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+"  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"
+msgstr ""
+
+#: src/prtstat.c:189
+#, c-format
+msgid ""
+"Memory\n"
+"  Vsize:       %-10s\n"
+"  RSS:         %-10s \t\t RSS Limit: %s\n"
+"  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+"  Stack Start: %#-10lx\n"
+"  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"
+msgstr ""
+
+#: src/prtstat.c:199
+#, c-format
+msgid ""
+"Scheduling\n"
+"  Policy: %s\n"
+"  Nice:   %ld \t\t RT Priority: %ld %s\n"
+msgstr ""
+
+#: src/prtstat.c:221
+msgid "asprintf in print_stat failed.\n"
+msgstr ""
+
+#: src/prtstat.c:226
+#, c-format
+msgid "Process with pid %d does not exist.\n"
+msgstr ""
+
+#: src/prtstat.c:228
+#, c-format
+msgid "Unable to open stat file for pid %d (%s)\n"
+msgstr ""
+
+#: src/prtstat.c:308
+msgid "Invalid option"
+msgstr ""
+
+#: src/prtstat.c:313
+msgid "You must provide at least one PID."
+msgstr ""
+
+#: src/prtstat.c:317
+#, c-format
+msgid "/proc is not mounted, cannot stat /proc/self/stat.\n"
+msgstr ""
+
+#: src/pstree.c:794
+#, c-format
+msgid "%s is empty (not mounted ?)\n"
+msgstr "%s 是空的 (尚未掛載?)\n"
+
+#: src/pstree.c:830
+#, fuzzy, c-format
+msgid ""
+"Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -"
+"u ]\n"
+"              [ -A | -G | -U ] [ PID | USER ]\n"
+"       pstree -V\n"
+"Display a tree of processes.\n"
+"\n"
+"  -a, --arguments     show command line arguments\n"
+"  -A, --ascii         use ASCII line drawing characters\n"
+"  -c, --compact       don't compact identical subtrees\n"
+"  -h, --highlight-all highlight current process and its ancestors\n"
+"  -H PID,\n"
+"  --highlight-pid=PID highlight this process and its ancestors\n"
+"  -g, --show-pgids    show process group ids; implies -c\n"
+"  -G, --vt100         use VT100 line drawing characters\n"
+"  -l, --long          don't truncate long lines\n"
+"  -n, --numeric-sort  sort output by PID\n"
+"  -p, --show-pids     show PIDs; implies -c\n"
+"  -s, --show-parents  show parents of the selected process\n"
+"  -u, --uid-changes   show uid transitions\n"
+"  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+"  -V, --version       display version information\n"
+msgstr ""
+"用法:pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
+"             [ -A | -G | -U ] [ PID | 使用者 ]\n"
+"       pstree -V\n"
+"顯示樹的進程。\n"
+"\n"
+"    -a     顯示命令列引數\n"
+"    -A     使用 ASCII 線條繪製字元\n"
+"    -c     不壓縮相同的子樹\n"
+"    -h     標示目前進程和它的原始節點\n"
+"    -H PID 標示這個進程和它的原始節點\n"
+"    -G     使用 VT100 線條繪製字元\n"
+"    -l     不截斷長列\n"
+"    -n     依照 PID 排序輸出\n"
+"    -p     顯示多個 PID;內含 -c\n"
+"    -u     顯示 uid 轉換\n"
+"    -U     使用 UTF-8 (萬國碼) 線條繪製字元\n"
+"    -V     顯示版本資訊\n"
+
+#: src/pstree.c:850
+#, fuzzy, c-format
+msgid "  -Z     show         SELinux security contexts\n"
+msgstr "    -Z     顯示 SELinux 安全背景\n"
+
+#: src/pstree.c:852
+#, fuzzy, c-format
+msgid ""
+"  PID    start at this PID; default is 1 (init)\n"
+"  USER   show only trees rooted at processes of this user\n"
+"\n"
+msgstr ""
+"    PID    啟始於這個 PID;預設為 1 (init)\n"
+"    使用者 只顯示源於這個使用者的進程樹\n"
+"\n"
+
+#: src/pstree.c:859
+#, c-format
+msgid "pstree (PSmisc) %s\n"
+msgstr "pstree (PSmisc) %s\n"
+
+#: src/pstree.c:862
+#, fuzzy, c-format
+msgid ""
+"Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n"
+"\n"
+msgstr ""
+"著作權 © 1993-2005 Werner Almesberger 與 Craig Small\n"
+"\n"
+
+#: src/pstree.c:975
+#, c-format
+msgid "TERM is not set\n"
+msgstr "TERM 尚未設定\n"
+
+#: src/pstree.c:979
+#, c-format
+msgid "Can't get terminal capabilities\n"
+msgstr "無法取得終端機功能\n"
+
+#: src/pstree.c:1030
+#, c-format
+msgid "No such user name: %s\n"
+msgstr "無此類使用者名稱:%s\n"
+
+#: src/pstree.c:1053
+#, c-format
+msgid "No processes found.\n"
+msgstr "找不到任何進程。\n"
+
+#: src/pstree.c:1059
+#, c-format
+msgid "Press return to close\n"
+msgstr "按下輸入鍵以關閉\n"
+
+#: src/signals.c:84
+#, c-format
+msgid "%s: unknown signal; %s -l lists signals.\n"
+msgstr "%s: 不明的信號;%s -l 列出信號。\n"
+
+#~ msgid ""
+#~ "Usage: pidof [ -eg ] NAME...\n"
+#~ "       pidof -V\n"
+#~ "\n"
+#~ "    -e      require exact match for very long names;\n"
+#~ "            skip if the command line is unavailable\n"
+#~ "    -g      show process group ID instead of process ID\n"
+#~ "    -V      display version information\n"
+#~ "\n"
+#~ msgstr ""
+#~ "用法:pidof [ -eg ] 名稱…\n"
+#~ "      pidof -V\n"
+#~ "\n"
+#~ "   -e      對於很長的名稱需要精確的符合;\n"
+#~ "           如果命令列無法使用就跳過\n"
+#~ "   -g      顯示進程群組識別號以代替進程識別號\n"
+#~ "   -V      顯示版本資訊\n"
+#~ "\n"
+
+#~ msgid "Cannot stat mount point %s: %s\n"
+#~ msgstr "無法顯示掛載點 %s:%s\n"
+
+#~ msgid "You cannot use the mounted and mountpoint flags together"
+#~ msgstr "您無法將已掛載的和掛載點旗標一起使用"
+
+#~ msgid "Cannot open /etc/mtab: %s\n"
+#~ msgstr "無法開啟 /etc/mtab:%s\n"
+
+#~ msgid "Internal error: MAX_DEPTH not big enough.\n"
+#~ msgstr "內部錯誤:MAX_DEPTH 不夠大。\n"
index 8eb661b..9d6f777 100644 (file)
@@ -1,7 +1,10 @@
 
-AM_CFLAGS = -Wall -DLOCALEDIR=\"/usr/share/locale\"
+AM_CFLAGS = -Wall -DLOCALEDIR=\"/usr/share/locale\" @HARDEN_CFLAGS@
 
-bin_PROGRAMS = fuser killall pstree oldfuser 
+bin_PROGRAMS = killall pstree prtstat
+if WANT_FUSER
+  bin_PROGRAMS += fuser
+endif
 if WANT_PEEKFD_I386
   bin_PROGRAMS += peekfd
   AM_CFLAGS += -DI386
@@ -14,20 +17,35 @@ if WANT_PEEKFD_PPC
   bin_PROGRAMS += peekfd
   AM_CFLAGS += -DPPC
 endif
+if WANT_PEEKFD_ARM
+  bin_PROGRAMS += peekfd
+  AM_CFLAGS += -DARM
+endif
+if WANT_PEEKFD_MIPS
+  bin_PROGRAMS += peekfd
+  AM_CFLAGS += -DMIPS
+endif
 
-oldfuser_SOURCES = oldfuser.c comm.h signals.c signals.h loop.h i18n.h
+fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h lists.h
+if WANT_TIMEOUT_STAT
+  fuser_SOURCES += timeout.c timeout.h
+endif
 
-fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h
+fuser_LDADD = @LIBINTL@
 
 killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h
 
-killall_LDADD = @SELINUX_LIB@
+killall_LDADD = @LIBINTL@ @SELINUX_LIB@
 
 peekfd_SOURCES = peekfd.c
 
 pstree_SOURCES = pstree.c comm.h i18n.h
 
-pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@
+pstree_LDADD = @LIBINTL@ @TERMCAP_LIB@ @SELINUX_LIB@
+
+prtstat_SOURCES = prtstat.c prtstat.h
+
+prtstat_LDADD = @LIBINTL@
 
 BUILT_SOURCES = signames.h
 
@@ -39,7 +57,7 @@ signames.h: signames.c Makefile
                export LC_ALL=C ; \
                @CPP@ -dM $< |\
                tr -s '\t ' ' ' | sort -n -k 3 | sed \
-       's:#define SIG\([A-Z]\+[0-9]*\) \([0-9]\+\) *\(\|/\*.*\)$$:{\ \2,"\1" },:p;d' | \
+       's:#define SIG\([A-Z][A-Z]*[0-9]*\) \([0-9][0-9]*\).*$\:{\ \2,"\1" },:p;d' | \
                  grep -v '[0-9][0-9][0-9]' >signames.h || \
                  { rm -f signames.h; exit 1; }
                grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \
index e35b5a2..5b2604c 100644 (file)
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10 from Makefile.am.
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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.
 @SET_MAKE@
 
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 install_sh_DATA = $(install_sh) -c -m 644
 install_sh_PROGRAM = $(install_sh) -c
@@ -32,15 +51,22 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 build_triplet = @build@
 host_triplet = @host@
-bin_PROGRAMS = fuser$(EXEEXT) killall$(EXEEXT) pstree$(EXEEXT) \
-       oldfuser$(EXEEXT) $(am__EXEEXT_1) $(am__EXEEXT_2) \
-       $(am__EXEEXT_3)
-@WANT_PEEKFD_I386_TRUE@am__append_1 = peekfd
-@WANT_PEEKFD_I386_TRUE@am__append_2 = -DI386
-@WANT_PEEKFD_X86_64_TRUE@am__append_3 = peekfd
-@WANT_PEEKFD_X86_64_TRUE@am__append_4 = -DX86_64
-@WANT_PEEKFD_PPC_TRUE@am__append_5 = peekfd
-@WANT_PEEKFD_PPC_TRUE@am__append_6 = -DPPC
+target_triplet = @target@
+bin_PROGRAMS = killall$(EXEEXT) pstree$(EXEEXT) prtstat$(EXEEXT) \
+       $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \
+       $(am__EXEEXT_4) $(am__EXEEXT_5) $(am__EXEEXT_6)
+@WANT_FUSER_TRUE@am__append_1 = fuser
+@WANT_PEEKFD_I386_TRUE@am__append_2 = peekfd
+@WANT_PEEKFD_I386_TRUE@am__append_3 = -DI386
+@WANT_PEEKFD_X86_64_TRUE@am__append_4 = peekfd
+@WANT_PEEKFD_X86_64_TRUE@am__append_5 = -DX86_64
+@WANT_PEEKFD_PPC_TRUE@am__append_6 = peekfd
+@WANT_PEEKFD_PPC_TRUE@am__append_7 = -DPPC
+@WANT_PEEKFD_ARM_TRUE@am__append_8 = peekfd
+@WANT_PEEKFD_ARM_TRUE@am__append_9 = -DARM
+@WANT_PEEKFD_MIPS_TRUE@am__append_10 = peekfd
+@WANT_PEEKFD_MIPS_TRUE@am__append_11 = -DMIPS
+@WANT_TIMEOUT_STAT_TRUE@am__append_12 = timeout.c timeout.h
 subdir = src
 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -51,41 +77,53 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
        $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
        $(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
+mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = $(top_builddir)/config.h
 CONFIG_CLEAN_FILES =
-@WANT_PEEKFD_I386_TRUE@am__EXEEXT_1 = peekfd$(EXEEXT)
-@WANT_PEEKFD_X86_64_TRUE@am__EXEEXT_2 = peekfd$(EXEEXT)
-@WANT_PEEKFD_PPC_TRUE@am__EXEEXT_3 = peekfd$(EXEEXT)
+CONFIG_CLEAN_VPATH_FILES =
+@WANT_FUSER_TRUE@am__EXEEXT_1 = fuser$(EXEEXT)
+@WANT_PEEKFD_I386_TRUE@am__EXEEXT_2 = peekfd$(EXEEXT)
+@WANT_PEEKFD_X86_64_TRUE@am__EXEEXT_3 = peekfd$(EXEEXT)
+@WANT_PEEKFD_PPC_TRUE@am__EXEEXT_4 = peekfd$(EXEEXT)
+@WANT_PEEKFD_ARM_TRUE@am__EXEEXT_5 = peekfd$(EXEEXT)
+@WANT_PEEKFD_MIPS_TRUE@am__EXEEXT_6 = peekfd$(EXEEXT)
 am__installdirs = "$(DESTDIR)$(bindir)"
-binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
 PROGRAMS = $(bin_PROGRAMS)
-am_fuser_OBJECTS = fuser.$(OBJEXT) signals.$(OBJEXT)
+am__fuser_SOURCES_DIST = fuser.c comm.h signals.c signals.h i18n.h \
+       fuser.h lists.h timeout.c timeout.h
+@WANT_TIMEOUT_STAT_TRUE@am__objects_1 = timeout.$(OBJEXT)
+am_fuser_OBJECTS = fuser.$(OBJEXT) signals.$(OBJEXT) $(am__objects_1)
 fuser_OBJECTS = $(am_fuser_OBJECTS)
-fuser_LDADD = $(LDADD)
+fuser_DEPENDENCIES =
 am_killall_OBJECTS = killall.$(OBJEXT) signals.$(OBJEXT)
 killall_OBJECTS = $(am_killall_OBJECTS)
 killall_DEPENDENCIES =
-am_oldfuser_OBJECTS = oldfuser.$(OBJEXT) signals.$(OBJEXT)
-oldfuser_OBJECTS = $(am_oldfuser_OBJECTS)
-oldfuser_LDADD = $(LDADD)
 am_peekfd_OBJECTS = peekfd.$(OBJEXT)
 peekfd_OBJECTS = $(am_peekfd_OBJECTS)
 peekfd_LDADD = $(LDADD)
+am_prtstat_OBJECTS = prtstat.$(OBJEXT)
+prtstat_OBJECTS = $(am_prtstat_OBJECTS)
+prtstat_DEPENDENCIES =
 am_pstree_OBJECTS = pstree.$(OBJEXT)
 pstree_OBJECTS = $(am_pstree_OBJECTS)
 pstree_DEPENDENCIES =
-DEFAULT_INCLUDES = -I. -I$(top_builddir)@am__isrc@
+DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/config/depcomp
 am__depfiles_maybe = depfiles
+am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
        $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(oldfuser_SOURCES) \
-       $(peekfd_SOURCES) $(pstree_SOURCES)
-DIST_SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(oldfuser_SOURCES) \
-       $(peekfd_SOURCES) $(pstree_SOURCES)
+SOURCES = $(fuser_SOURCES) $(killall_SOURCES) $(peekfd_SOURCES) \
+       $(prtstat_SOURCES) $(pstree_SOURCES)
+DIST_SOURCES = $(am__fuser_SOURCES_DIST) $(killall_SOURCES) \
+       $(peekfd_SOURCES) $(prtstat_SOURCES) $(pstree_SOURCES)
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 ETAGS = etags
 CTAGS = ctags
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -100,11 +138,9 @@ CCDEPMODE = @CCDEPMODE@
 CFLAGS = @CFLAGS@
 CPP = @CPP@
 CPPFLAGS = @CPPFLAGS@
-CXX = @CXX@
-CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
 CYGPATH_W = @CYGPATH_W@
 DEFS = @DEFS@
+DEJAGNU = @DEJAGNU@
 DEPDIR = @DEPDIR@
 ECHO_C = @ECHO_C@
 ECHO_N = @ECHO_N@
@@ -114,6 +150,7 @@ EXEEXT = @EXEEXT@
 GMSGFMT = @GMSGFMT@
 GMSGFMT_015 = @GMSGFMT_015@
 GREP = @GREP@
+HARDEN_CFLAGS = @HARDEN_CFLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -141,6 +178,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 PACKAGE_NAME = @PACKAGE_NAME@
 PACKAGE_STRING = @PACKAGE_STRING@
 PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
 PACKAGE_VERSION = @PACKAGE_VERSION@
 PATH_SEPARATOR = @PATH_SEPARATOR@
 POSUB = @POSUB@
@@ -153,6 +191,7 @@ USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 WITH_IPV6 = @WITH_IPV6@
 WITH_SELINUX = @WITH_SELINUX@
+WITH_TIMEOUT_STAT = @WITH_TIMEOUT_STAT@
 XGETTEXT = @XGETTEXT@
 XGETTEXT_015 = @XGETTEXT_015@
 abs_builddir = @abs_builddir@
@@ -160,7 +199,6 @@ 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@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
@@ -202,18 +240,27 @@ sbindir = @sbindir@
 sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
+target = @target@
 target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
 top_srcdir = @top_srcdir@
-AM_CFLAGS = -Wall -DLOCALEDIR=\"/usr/share/locale\" $(am__append_2) \
-       $(am__append_4) $(am__append_6)
-oldfuser_SOURCES = oldfuser.c comm.h signals.c signals.h loop.h i18n.h
-fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h
+AM_CFLAGS = -Wall -DLOCALEDIR=\"/usr/share/locale\" @HARDEN_CFLAGS@ \
+       $(am__append_3) $(am__append_5) $(am__append_7) \
+       $(am__append_9) $(am__append_11)
+fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h \
+       lists.h $(am__append_12)
+fuser_LDADD = @LIBINTL@
 killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h
-killall_LDADD = @SELINUX_LIB@
+killall_LDADD = @LIBINTL@ @SELINUX_LIB@
 peekfd_SOURCES = peekfd.c
 pstree_SOURCES = pstree.c comm.h i18n.h
-pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@
+pstree_LDADD = @LIBINTL@ @TERMCAP_LIB@ @SELINUX_LIB@
+prtstat_SOURCES = prtstat.c prtstat.h
+prtstat_LDADD = @LIBINTL@
 BUILT_SOURCES = signames.h
 EXTRA_DIST = signames.c 
 CLEANFILES = signames.h
@@ -226,14 +273,14 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
        @for dep in $?; do \
          case '$(am__configure_deps)' in \
            *$$dep*) \
-             cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
-               && exit 0; \
+             ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+               && { if test -f $@; then exit 0; else break; fi; }; \
              exit 1;; \
          esac; \
        done; \
-       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/Makefile'; \
-       cd $(top_srcdir) && \
-         $(AUTOMAKE) --gnu  src/Makefile
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --gnu src/Makefile
 .PRECIOUS: Makefile
 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
        @case '$?' in \
@@ -251,42 +298,60 @@ $(top_srcdir)/configure:  $(am__configure_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 $(ACLOCAL_M4):  $(am__aclocal_m4_deps)
        cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
 install-binPROGRAMS: $(bin_PROGRAMS)
        @$(NORMAL_INSTALL)
-       test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
-       @list='$(bin_PROGRAMS)'; for p in $$list; do \
-         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
-         if test -f $$p \
-         ; then \
-           f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
-          echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
-          $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
-         else :; fi; \
-       done
+       @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+       if test -n "$$list"; then \
+         echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
+         $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
+       fi; \
+       for p in $$list; do echo "$$p $$p"; done | \
+       sed 's/$(EXEEXT)$$//' | \
+       while read p p1; do if test -f $$p; \
+         then echo "$$p"; echo "$$p"; else :; fi; \
+       done | \
+       sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \
+           -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
+       sed 'N;N;N;s,\n, ,g' | \
+       $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
+         { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
+           if ($$2 == $$4) files[d] = files[d] " " $$1; \
+           else { print "f", $$3 "/" $$4, $$1; } } \
+         END { for (d in files) print "f", d, files[d] }' | \
+       while read type dir files; do \
+           if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
+           test -z "$$files" || { \
+             echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
+             $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
+           } \
+       ; done
 
 uninstall-binPROGRAMS:
        @$(NORMAL_UNINSTALL)
-       @list='$(bin_PROGRAMS)'; for p in $$list; do \
-         f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
-         echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
-         rm -f "$(DESTDIR)$(bindir)/$$f"; \
-       done
+       @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
+       files=`for p in $$list; do echo "$$p"; done | \
+         sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
+             -e 's/$$/$(EXEEXT)/' `; \
+       test -n "$$list" || exit 0; \
+       echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
+       cd "$(DESTDIR)$(bindir)" && rm -f $$files
 
 clean-binPROGRAMS:
        -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
-fuser$(EXEEXT): $(fuser_OBJECTS) $(fuser_DEPENDENCIES) 
+fuser$(EXEEXT): $(fuser_OBJECTS) $(fuser_DEPENDENCIES) $(EXTRA_fuser_DEPENDENCIES) 
        @rm -f fuser$(EXEEXT)
        $(LINK) $(fuser_OBJECTS) $(fuser_LDADD) $(LIBS)
-killall$(EXEEXT): $(killall_OBJECTS) $(killall_DEPENDENCIES) 
+killall$(EXEEXT): $(killall_OBJECTS) $(killall_DEPENDENCIES) $(EXTRA_killall_DEPENDENCIES) 
        @rm -f killall$(EXEEXT)
        $(LINK) $(killall_OBJECTS) $(killall_LDADD) $(LIBS)
-oldfuser$(EXEEXT): $(oldfuser_OBJECTS) $(oldfuser_DEPENDENCIES) 
-       @rm -f oldfuser$(EXEEXT)
-       $(LINK) $(oldfuser_OBJECTS) $(oldfuser_LDADD) $(LIBS)
-peekfd$(EXEEXT): $(peekfd_OBJECTS) $(peekfd_DEPENDENCIES) 
+peekfd$(EXEEXT): $(peekfd_OBJECTS) $(peekfd_DEPENDENCIES) $(EXTRA_peekfd_DEPENDENCIES) 
        @rm -f peekfd$(EXEEXT)
        $(LINK) $(peekfd_OBJECTS) $(peekfd_LDADD) $(LIBS)
-pstree$(EXEEXT): $(pstree_OBJECTS) $(pstree_DEPENDENCIES) 
+prtstat$(EXEEXT): $(prtstat_OBJECTS) $(prtstat_DEPENDENCIES) $(EXTRA_prtstat_DEPENDENCIES) 
+       @rm -f prtstat$(EXEEXT)
+       $(LINK) $(prtstat_OBJECTS) $(prtstat_LDADD) $(LIBS)
+pstree$(EXEEXT): $(pstree_OBJECTS) $(pstree_DEPENDENCIES) $(EXTRA_pstree_DEPENDENCIES) 
        @rm -f pstree$(EXEEXT)
        $(LINK) $(pstree_OBJECTS) $(pstree_LDADD) $(LIBS)
 
@@ -298,21 +363,22 @@ distclean-compile:
 
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fuser.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/killall.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oldfuser.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/peekfd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/prtstat.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pstree.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/signals.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timeout.Po@am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@   $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@   $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(COMPILE) -c $<
 
 .c.obj:
 @am__fastdepCC_TRUE@   $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCC_TRUE@   mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCC_TRUE@   $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(COMPILE) -c `$(CYGPATH_W) '$<'`
@@ -322,45 +388,49 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
        unique=`for i in $$list; do \
            if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
          done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
        mkid -fID $$unique
 tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
                $(TAGS_FILES) $(LISP)
-       tags=; \
+       set x; \
        here=`pwd`; \
        list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
        unique=`for i in $$list; do \
            if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
          done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       shift; \
+       if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
          test -n "$$unique" || unique=$$empty_fix; \
-         $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-           $$tags $$unique; \
+         if test $$# -gt 0; then \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             "$$@" $$unique; \
+         else \
+           $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+             $$unique; \
+         fi; \
        fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
                $(TAGS_FILES) $(LISP)
-       tags=; \
-       here=`pwd`; \
        list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
        unique=`for i in $$list; do \
            if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
          done | \
-         $(AWK) '    { files[$$0] = 1; } \
-              END { for (i in files) print i; }'`; \
-       test -z "$(CTAGS_ARGS)$$tags$$unique" \
+         $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+             END { if (nonempty) { for (i in files) print i; }; }'`; \
+       test -z "$(CTAGS_ARGS)$$unique" \
          || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
-            $$tags $$unique
+            $$unique
 
 GTAGS:
        here=`$(am__cd) $(top_builddir) && pwd` \
-         && cd $(top_srcdir) \
-         && gtags -i $(GTAGS_ARGS) $$here
+         && $(am__cd) $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) "$$here"
 
 distclean-tags:
        -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -381,13 +451,17 @@ distdir: $(DISTFILES)
          if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
          if test -d $$d/$$file; then \
            dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
            if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
-             cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
            fi; \
-           cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
          else \
-           test -f $(distdir)/$$file \
-           || cp -p $$d/$$file $(distdir)/$$file \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
            || exit 1; \
          fi; \
        done
@@ -410,10 +484,15 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-         install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-         `test -z '$(STRIP)' || \
-           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
 mostlyclean-generic:
 
 clean-generic:
@@ -421,6 +500,7 @@ clean-generic:
 
 distclean-generic:
        -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
@@ -442,6 +522,8 @@ dvi-am:
 
 html: html-am
 
+html-am:
+
 info: info-am
 
 info-am:
@@ -450,20 +532,29 @@ install-data-am:
 
 install-dvi: install-dvi-am
 
+install-dvi-am:
+
 install-exec-am: install-binPROGRAMS
        @$(NORMAL_INSTALL)
        $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-
 install-html: install-html-am
 
+install-html-am:
+
 install-info: install-info-am
 
+install-info-am:
+
 install-man:
 
 install-pdf: install-pdf-am
 
+install-pdf-am:
+
 install-ps: install-ps-am
 
+install-ps-am:
+
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
@@ -485,7 +576,7 @@ ps-am:
 
 uninstall-am: uninstall-binPROGRAMS
 
-.MAKE: install-am install-exec-am install-strip
+.MAKE: all check install install-am install-exec-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
        clean-generic ctags distclean distclean-compile \
@@ -505,7 +596,7 @@ signames.h: signames.c Makefile
                export LC_ALL=C ; \
                @CPP@ -dM $< |\
                tr -s '\t ' ' ' | sort -n -k 3 | sed \
-       's:#define SIG\([A-Z]\+[0-9]*\) \([0-9]\+\) *\(\|/\*.*\)$$:{\ \2,"\1" },:p;d' | \
+       's:#define SIG\([A-Z][A-Z]*[0-9]*\) \([0-9][0-9]*\).*$\:{\ \2,"\1" },:p;d' | \
                  grep -v '[0-9][0-9][0-9]' >signames.h || \
                  { rm -f signames.h; exit 1; }
                grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \
@@ -514,6 +605,7 @@ signames.h: signames.c Makefile
 install-exec-hook:
                cd $(DESTDIR)$(bindir) && \
                        ( [ -h pstree.x11 ]  || $(LN_S) pstree pstree.x11)
+
 # 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.
 .NOEXPORT:
index 956383d..f248a43 100644 (file)
@@ -1,18 +1,36 @@
-/* comm.h - command name length definition */
-
-/* Copyright 1995 Werner Almesberger. See file COPYING for details. */
-
+/*
+ * comm.h - command name length definition 
+ *
+ * Copyright 1995 Werner Almesberger
+ * Copyright 2012 Craig Small <csmall@enc.com.au>
+ *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
 
 #ifndef COMM_H
 #define COMM_H
 
-#if 0                          /* broken in 1.3.xx */
-#include <linux/sched.h>
-#define COMM_LEN sizeof(dummy.comm)
-extern struct task_struct dummy;
-#else
-#define COMM_LEN 16            /* synchronize with size of comm in struct task_struct in
-                                  /usr/include/linux/sched.h */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
 #endif
 
+/*
+ * COMM_LEN should be the same size as TASK_COMM_LEN in the Linux source
+ * at include/linux/sched.h
+ */
+#define COMM_LEN 16
+
 #endif
index b88b7a8..0c773fe 100644 (file)
@@ -4,7 +4,7 @@
  * Based on fuser.c Copyright (C) 1993-2005 Werner Almesberger and Craig Small
  *
  * Completely re-written
- * Copyright (C) 2005-2007 Craig Small
+ * Copyright (C) 2005-2012 Craig Small
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #include <stdlib.h>
 #include <string.h>
 #include <errno.h>
+#include <sys/param.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <sys/socket.h>
+#include <sys/wait.h>
 #include <arpa/inet.h>
 #include <netinet/in.h>
 #include <pwd.h>
 #include <mntent.h>
 #include <signal.h>
 #include <getopt.h>
+#include <setjmp.h>
+#include <limits.h>
+/* MAXSYMLINKS is a BSDism.  If it doesn't exist, fall back to SYMLINK_MAX,
+   which is the POSIX name. */
+#ifndef MAXSYMLINKS
+#define MAXSYMLINKS SYMLINK_MAX
+#endif
 
 #include "fuser.h"
 #include "signals.h"
 #include "i18n.h"
 
-/*
-#define DEBUG 1
-*/
-/*
-#define NFS_CHECKS 
-*/
+//#define DEBUG 1
 
 #define NAME_FIELD 20          /* space reserved for file name */
 /* Function defines */
-static void add_matched_proc(struct names *name_list, const pid_t pid, const uid_t uid, const char access);
-static void check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head, struct inode_list *ino_head, const uid_t uid, const char access);
-static void check_map(const pid_t pid, const char *filename, struct device_list *dev_head, struct inode_list *ino_head, const uid_t uid, const char access);
+static void add_matched_proc(struct names *name_list, const pid_t pid,
+                            const uid_t uid, const char access);
+static void add_special_proc(struct names *name_list, const char ptype,
+                            const uid_t uid, const char *command);
+static void check_dir(const pid_t pid, const char *dirname,
+                     struct device_list *dev_head,
+                     struct inode_list *ino_head, const uid_t uid,
+                     const char access, struct unixsocket_list *sockets,
+                     dev_t netdev);
+static void check_map(const pid_t pid, const char *filename,
+                     struct device_list *dev_head,
+                     struct inode_list *ino_head, const uid_t uid,
+                     const char access);
 static struct stat *get_pidstat(const pid_t pid, const char *filename);
 static uid_t getpiduid(const pid_t pid);
-static int print_matches(struct names *names_head, const opt_type opts, const int sig_number);
-static void kill_matched_proc(struct procs *pptr, const opt_type opts, const int sig_number);
-
-int parse_mount(struct names *this_name, struct device_list **dev_list);
-static void add_device(struct device_list **dev_list, struct names  *this_name, dev_t device);
-void scan_mount_devices(const opt_type opts, struct mountdev_list **mount_devices);
+static int print_matches(struct names *names_head, const opt_type opts,
+                        const int sig_number);
+static int kill_matched_proc(struct procs *pptr, const opt_type opts,
+                            const int sig_number);
+
+/*int parse_mount(struct names *this_name, struct device_list **dev_list);*/
+static void add_device(struct device_list **dev_list,
+                      struct names *this_name, dev_t device);
 void fill_unix_cache(struct unixsocket_list **unixsocket_head);
 static dev_t find_net_dev(void);
-static void scan_procs(struct names *names_head, struct inode_list *ino_head, struct device_list *dev_head);
-#ifdef NFS_CHECKS
-static void scan_knfsd(struct names *names_head, struct device_list *dev_head);
-#endif /* NFS_CHECKS */
+static void scan_procs(struct names *names_head, struct inode_list *ino_head,
+                      struct device_list *dev_head,
+                      struct unixsocket_list *sockets, dev_t netdev);
+static void scan_knfsd(struct names *names_head, struct inode_list *ino_head,
+                      struct device_list *dev_head);
+static void scan_mounts(struct names *names_head,
+                       struct inode_list *ino_head,
+                       struct device_list *dev_head);
+static void scan_swaps(struct names *names_head, struct inode_list *ino_head,
+                      struct device_list *dev_head);
 #ifdef DEBUG
-static void debug_match_lists(struct names *names_head, struct inode_list *ino_head, struct device_list *dev_head);
+static void debug_match_lists(struct names *names_head,
+                             struct inode_list *ino_head,
+                             struct device_list *dev_head);
+#endif
+
+#ifdef _LISTS_H
+static void clear_mntinfo(void) __attribute__ ((__destructor__));
+static void init_mntinfo(void) __attribute__ ((__constructor__));
+static dev_t device(const char *path);
 #endif
+static char *expandpath(const char *path);
 
-static void usage (const char *errormsg)
+#ifdef WITH_TIMEOUT_STAT
+#if (WITH_TIMEOUT_STAT == 2)
+#include "timeout.h"
+#else
+typedef int (*stat_t) (const char *, struct stat *);
+static int timeout(stat_t func, const char *path, struct stat *buf,
+                  unsigned int seconds);
+#endif
+#else
+#define timeout(func,path,buf,dummy) (func)((path),(buf))
+#endif                         /* WITH_TIMEOUT_STAT */
+
+static void usage(const char *errormsg)
 {
        if (errormsg != NULL)
                fprintf(stderr, "%s\n", errormsg);
 
-  fprintf (stderr, _(
-    "Usage: fuser [ -a | -s | -c ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-    "             [ - ] [ -n SPACE ] [ -SIGNAL ] [ -kimuv ] NAME...\n"
-    "       fuser -l\n"
-    "       fuser -V\n"
-    "Show which processes use the named files, sockets, or filesystems.\n\n"
-    "    -a        display unused files too\n"
-    "    -c        mounted FS\n"
-    "    -f        silently ignored (for POSIX compatibility)\n"
-    "    -i        ask before killing (ignored without -k)\n"
-    "    -k        kill processes accessing the named file\n"
-    "    -l        list available signal names\n"
-    "    -m        show all processes using the named filesystems\n"
-    "    -n SPACE  search in this name space (file, udp, or tcp)\n"
-    "    -s        silent operation\n"
-    "    -SIGNAL   send this signal instead of SIGKILL\n"
-    "    -u        display user IDs\n"
-    "    -v        verbose output\n"
-    "    -V        display version information\n"));
+       fprintf(stderr,
+               _
+               ("Usage: fuser [-fMuvw] [-a|-s] [-4|-6] [-c|-m|-n SPACE] [-k [-i] [-SIGNAL]] NAME...\n"
+                "       fuser -l\n" "       fuser -V\n"
+                "Show which processes use the named files, sockets, or filesystems.\n\n"
+                "  -a,--all              display unused files too\n"
+                "  -i,--interactive      ask before killing (ignored without -k)\n"
+                "  -k,--kill             kill processes accessing the named file\n"
+                "  -l,--list-signals     list available signal names\n"
+                "  -m,--mount            show all processes using the named filesystems or block device\n"
+                "  -M,--ismountpoint     fulfill request only if NAME is a mount point\n"
+                "  -n,--namespace SPACE  search in this name space (file, udp, or tcp)\n"
+                "  -s,--silent           silent operation\n"
+                "  -SIGNAL               send this signal instead of SIGKILL\n"
+                "  -u,--user             display user IDs\n"
+                "  -v,--verbose          verbose output\n"
+                "  -w,--writeonly        kill only processes with write access\n"
+                "  -V,--version          display version information\n"));
 #ifdef WITH_IPV6
-  fprintf (stderr, _(
-    "    -4        search IPv4 sockets only\n"
-    "    -6        search IPv6 sockets only\n"));
+       fprintf(stderr, _("  -4,--ipv4             search IPv4 sockets only\n"
+                         "  -6,--ipv6             search IPv6 sockets only\n"));
 #endif
-  fprintf (stderr, _(
-    "    -         reset options\n\n"
-    "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n\n"));
-  exit (1);
+       fprintf(stderr, _("  -                     reset options\n\n"
+                         "  udp/tcp names: [local_port][,[rmt_host][,[rmt_port]]]\n\n"));
+       exit(1);
 }
 
 void print_version()
 {
-  fprintf(stderr, _("fuser (PSmisc) %s\n"), VERSION);
-  fprintf(stderr, _(
-    "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n\n"));
-  fprintf(stderr, _(
-    "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-    "This is free software, and you are welcome to redistribute it under\n"
-    "the terms of the GNU General Public License.\n"
-    "For more information about these matters, see the files named COPYING.\n"));
+       fprintf(stderr, _("fuser (PSmisc) %s\n"), VERSION);
+       fprintf(stderr,
+               _
+               ("Copyright (C) 1993-2010 Werner Almesberger and Craig Small\n\n"));
+       fprintf(stderr,
+               _("PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+                 "This is free software, and you are welcome to redistribute it under\n"
+                 "the terms of the GNU General Public License.\n"
+                 "For more information about these matters, see the files named COPYING.\n"));
 }
 
-static void scan_procs(struct names *names_head, struct inode_list *ino_head, struct device_list *dev_head)
+static void
+scan_procs(struct names *names_head, struct inode_list *ino_head,
+          struct device_list *dev_head, struct unixsocket_list *sockets,
+          dev_t netdev)
 {
        DIR *topproc_dir;
        struct dirent *topproc_dent;
-       char *fd_dirpath, *fd_pathname;
        struct inode_list *ino_tmp;
        struct device_list *dev_tmp;
        pid_t pid, my_pid;
        uid_t uid;
-       struct stat *cwd_stat, *exe_stat, *root_stat;
 
-       if ( (fd_dirpath = malloc(MAX_PATHNAME)) == NULL)
-               return;
-       if ( (fd_pathname = malloc(MAX_PATHNAME)) == NULL)
-               return;
-
-       if ( (topproc_dir = opendir("/proc")) == NULL) {
-               fprintf(stderr, _("Cannot open /proc directory: %s\n"), strerror(errno));
+       if ((topproc_dir = opendir("/proc")) == NULL) {
+               fprintf(stderr, _("Cannot open /proc directory: %s\n"),
+                       strerror(errno));
                exit(1);
        }
        my_pid = getpid();
-       while ( (topproc_dent = readdir(topproc_dir)) != NULL) {
-               if (topproc_dent->d_name[0] < '0' || topproc_dent->d_name[0] > '9') /* Not a process */
+       while ((topproc_dent = readdir(topproc_dir)) != NULL) {
+               dev_t cwd_dev, exe_dev, root_dev;
+               struct stat *cwd_stat = NULL;
+               struct stat *exe_stat = NULL;
+               struct stat *root_stat = NULL;
+#ifdef _LISTS_H
+               char path[256] = "/proc/", *slash;
+               ssize_t len;
+#endif
+
+               if (topproc_dent->d_name[0] < '0' || topproc_dent->d_name[0] > '9')     /* Not a process */
                        continue;
                pid = atoi(topproc_dent->d_name);
                /* Dont print myself */
@@ -157,52 +204,104 @@ static void scan_procs(struct names *names_head, struct inode_list *ino_head, st
                        continue;
                uid = getpiduid(pid);
 
-               root_stat = get_pidstat(pid, "root");
+#ifdef _LISTS_H
+               strcpy(&path[6], topproc_dent->d_name);
+               len = strlen(path);
+               slash = &path[len];
+
+               *slash = '\0';
+               strcat(slash, "/cwd");
+               cwd_dev = device(path);
+
+               *slash = '\0';
+               strcat(slash, "/exe");
+               exe_dev = device(path);
+
+               *slash = '\0';
+               strcat(slash, "/root");
+               root_dev = device(path);
+#else
                cwd_stat = get_pidstat(pid, "cwd");
                exe_stat = get_pidstat(pid, "exe");
+               root_stat = get_pidstat(pid, "root");
+               cwd_dev = cwd_stat ? cwd_stat->st_dev : 0;
+               exe_dev = exe_stat ? exe_stat->st_dev : 0;
+               root_dev = root_stat ? root_stat->st_dev : 0;
+#endif
+
                /* Scan the devices */
-               for (dev_tmp = dev_head ; dev_tmp != NULL ; dev_tmp = dev_tmp->next) {
-                       if (exe_stat != NULL && exe_stat->st_dev == dev_tmp->device) 
-                               add_matched_proc(dev_tmp->name, pid, uid, ACCESS_EXE);
-                       if (root_stat != NULL && root_stat->st_dev == dev_tmp->device) 
-                               add_matched_proc(dev_tmp->name, pid, uid, ACCESS_ROOT);
-                       if (cwd_stat != NULL && cwd_stat->st_dev == dev_tmp->device) 
-                               add_matched_proc(dev_tmp->name, pid, uid, ACCESS_CWD);
+               for (dev_tmp = dev_head; dev_tmp != NULL;
+                    dev_tmp = dev_tmp->next) {
+                       if (exe_dev == dev_tmp->device)
+                               add_matched_proc(dev_tmp->name, pid, uid,
+                                                ACCESS_EXE);
+                       if (root_dev == dev_tmp->device)
+                               add_matched_proc(dev_tmp->name, pid, uid,
+                                                ACCESS_ROOT);
+                       if (cwd_dev == dev_tmp->device)
+                               add_matched_proc(dev_tmp->name, pid, uid,
+                                                ACCESS_CWD);
                }
-               for (ino_tmp = ino_head ; ino_tmp != NULL ; ino_tmp = ino_tmp->next) {
-                       if (exe_stat != NULL) {
-                               if (exe_stat->st_dev == ino_tmp->device && exe_stat->st_ino == ino_tmp->inode) {
-                                       add_matched_proc(ino_tmp->name, pid, uid, ACCESS_EXE);
-                               }
+               for (ino_tmp = ino_head; ino_tmp != NULL;
+                    ino_tmp = ino_tmp->next) {
+                       if (exe_dev == ino_tmp->device) {
+                               if (!exe_stat)
+                                       exe_stat = get_pidstat(pid, "exe");
+                               if (exe_stat
+                                   && exe_stat->st_dev == ino_tmp->device
+                                   && exe_stat->st_ino == ino_tmp->inode)
+                                       add_matched_proc(ino_tmp->name, pid,
+                                                        uid, ACCESS_EXE);
                        }
-                       if (root_stat != NULL) {
-                               if (root_stat->st_dev == ino_tmp->device && root_stat->st_ino == ino_tmp->inode){
-                                       add_matched_proc(ino_tmp->name, pid, uid, ACCESS_ROOT);
-                               }
-
+                       if (root_dev == ino_tmp->device) {
+                               if (!root_stat)
+                                       root_stat = get_pidstat(pid, "root");
+                               if (root_stat
+                                   && root_stat->st_dev == ino_tmp->device
+                                   && root_stat->st_ino == ino_tmp->inode)
+                                       add_matched_proc(ino_tmp->name, pid,
+                                                        uid, ACCESS_ROOT);
                        }
-                       if (cwd_stat != NULL){
-                               if (cwd_stat->st_dev == ino_tmp->device && cwd_stat->st_ino == ino_tmp->inode) {
-                                       add_matched_proc(ino_tmp->name, pid, uid, ACCESS_CWD);
-                               }
+                       if (cwd_dev == ino_tmp->device) {
+                               if (!cwd_stat)
+                                       cwd_stat = get_pidstat(pid, "cwd");
+                               if (cwd_stat
+                                   && cwd_stat->st_dev == ino_tmp->device
+                                   && cwd_stat->st_ino == ino_tmp->inode)
+                                       add_matched_proc(ino_tmp->name, pid,
+                                                        uid, ACCESS_CWD);
                        }
                }
-               check_dir(pid, "lib", dev_head, ino_head, uid, ACCESS_MMAP);
-               check_dir(pid, "mmap", dev_head, ino_head, uid, ACCESS_MMAP);
-               check_dir(pid, "fd", dev_head, ino_head, uid, ACCESS_FILE);
+               if (root_stat)
+                       free(root_stat);
+               if (cwd_stat)
+                       free(cwd_stat);
+               if (exe_stat)
+                       free(exe_stat);
+#if !defined (__linux__) && !defined (__CYGWIN__)
+               check_dir(pid, "lib", dev_head, ino_head, uid, ACCESS_MMAP,
+                         sockets, netdev);
+               check_dir(pid, "mmap", dev_head, ino_head, uid, ACCESS_MMAP,
+                         sockets, netdev);
+#endif
+               check_dir(pid, "fd", dev_head, ino_head, uid, ACCESS_FILE,
+                         sockets, netdev);
                check_map(pid, "maps", dev_head, ino_head, uid, ACCESS_MMAP);
 
-       } /* while topproc_dent */
+       }                       /* while topproc_dent */
        closedir(topproc_dir);
 }
-static void add_inode(struct inode_list **ino_list, struct names  *this_name, dev_t device, ino_t inode)
+
+static void
+add_inode(struct inode_list **ino_list, struct names *this_name,
+         dev_t device, ino_t inode)
 {
        struct inode_list *ino_tmp, *ino_head;
 
-       ino_head = *ino_list;
-
-       if ( (ino_tmp = malloc(sizeof(struct inode_list))) == NULL)
+       if ((ino_tmp =
+            (struct inode_list *)malloc(sizeof(struct inode_list))) == NULL)
                return;
+       ino_head = *ino_list;
        ino_tmp->name = this_name;
        ino_tmp->device = device;
        ino_tmp->inode = inode;
@@ -210,29 +309,37 @@ static void add_inode(struct inode_list **ino_list, struct names  *this_name, de
        *ino_list = ino_tmp;
 }
 
-static void add_device(struct device_list **dev_list, struct names  *this_name, dev_t device)
+static void
+add_device(struct device_list **dev_list, struct names *this_name, dev_t device)
 {
        struct device_list *dev_tmp, *dev_head;
+#ifdef DEBUG
+       fprintf(stderr, "add_device(%s %u\n", this_name->filename,
+               (unsigned int)device);
+#endif                         /* DEBUG */
 
-       /*printf("Adding device %s %d\n", this_name->filename, device);*/
-       dev_head = *dev_list;
-
-       if ( (dev_tmp = malloc(sizeof(struct device_list))) == NULL)
+       if ((dev_tmp =
+            (struct device_list *)malloc(sizeof(struct device_list))) == NULL)
                return;
+       dev_head = *dev_list;
        dev_tmp->name = this_name;
        dev_tmp->device = device;
        dev_tmp->next = dev_head;
        *dev_list = dev_tmp;
 }
 
-static void add_ip_conn(struct ip_connections **ip_list, const char *protocol, struct names *this_name, const int lcl_port, const int rmt_port, unsigned long rmt_address)
+static void
+add_ip_conn(struct ip_connections **ip_list, const char *protocol,
+           struct names *this_name, const int lcl_port, const int rmt_port,
+           unsigned long rmt_address)
 {
        struct ip_connections *ip_tmp, *ip_head;
 
-       ip_head = *ip_list;
-
-       if ( (ip_tmp = malloc(sizeof(struct ip_connections))) == NULL)
+       if ((ip_tmp =
+            (struct ip_connections *)malloc(sizeof(struct ip_connections))) ==
+           NULL)
                return;
+       ip_head = *ip_list;
        ip_tmp->name = this_name;
        ip_tmp->lcl_port = lcl_port;
        ip_tmp->rmt_port = rmt_port;
@@ -243,25 +350,32 @@ static void add_ip_conn(struct ip_connections **ip_list, const char *protocol, s
 }
 
 #ifdef WITH_IPV6
-static void add_ip6_conn(struct ip6_connections **ip_list, const char *protocol, struct names *this_name, const int lcl_port, const int rmt_port, struct in6_addr rmt_address)
+static void
+add_ip6_conn(struct ip6_connections **ip_list, const char *protocol,
+            struct names *this_name, const int lcl_port, const int rmt_port,
+            struct in6_addr rmt_address)
 {
        struct ip6_connections *ip_tmp, *ip_head;
 
-       ip_head = *ip_list;
-
-       if ( (ip_tmp = malloc(sizeof(struct ip6_connections))) == NULL)
+       if ((ip_tmp =
+            (struct ip6_connections *)malloc(sizeof(struct ip6_connections)))
+           == NULL)
                return;
+       ip_head = *ip_list;
        ip_tmp->name = this_name;
        ip_tmp->lcl_port = lcl_port;
        ip_tmp->rmt_port = rmt_port;
-       memcpy(&(ip_tmp->rmt_address),&(rmt_address),sizeof(struct in6_addr));
+       memcpy(&(ip_tmp->rmt_address), &(rmt_address), sizeof(struct in6_addr));
        ip_tmp->next = ip_head;
 
        *ip_list = ip_tmp;
 }
 #endif
 
-static void add_matched_proc(struct names *name_list, const pid_t pid, const uid_t uid, const char access)
+/* Adds a normal process only */
+static void
+add_matched_proc(struct names *name_list, const pid_t pid, const uid_t uid,
+                const char access)
 {
        struct procs *pptr, *last_proc;
        char *pathname;
@@ -270,8 +384,7 @@ static void add_matched_proc(struct names *name_list, const pid_t pid, const uid
        FILE *fp;
 
        last_proc = NULL;
-       for (pptr = name_list->matched_procs; pptr != NULL ; pptr = pptr->next)
-       {
+       for (pptr = name_list->matched_procs; pptr != NULL; pptr = pptr->next) {
                last_proc = pptr;
                if (pptr->pid == pid) {
                        pptr->access |= access;
@@ -279,26 +392,35 @@ static void add_matched_proc(struct names *name_list, const pid_t pid, const uid
                }
        }
        /* Not found */
-       if ( (pptr = malloc(sizeof (struct procs))) == NULL) {
-               fprintf(stderr,_("Cannot allocate memory for matched proc: %s\n"), strerror(errno));
+       if ((pptr = (struct procs *)malloc(sizeof(struct procs))) == NULL) {
+               fprintf(stderr,
+                       _("Cannot allocate memory for matched proc: %s\n"),
+                       strerror(errno));
                return;
        }
        pptr->pid = pid;
        pptr->uid = uid;
        pptr->access = access;
+       pptr->proc_type = PTYPE_NORMAL;
        pptr->next = NULL;
        /* set command name */
        pptr->command = NULL;
-       if ( (asprintf(&pathname, "/proc/%d/stat", pid) > 0) &&
-                       ( (fp = fopen(pathname, "r")) != NULL) &&
-                       ( fscanf(fp, "%*d (%100[^)]", cmdname) == 1)) 
-               if ( (pptr->command = malloc(MAX_CMDNAME+1)) != NULL) {
+
+       fp = NULL;
+       pathname = NULL;
+       if ((asprintf(&pathname, "/proc/%d/stat", pid) > 0) &&
+           ((fp = fopen(pathname, "r")) != NULL) &&
+           (fscanf(fp, "%*d (%100[^)]", cmdname) == 1))
+               if ((pptr->command = (char *)malloc(MAX_CMDNAME + 1)) != NULL) {
                        cmdlen = 0;
-                       for (cptr = cmdname; cmdlen < MAX_CMDNAME && *cptr ; cptr++) {
+                       for (cptr = cmdname; cmdlen < MAX_CMDNAME && *cptr;
+                            cptr++) {
                                if (isprint(*cptr))
                                        pptr->command[cmdlen++] = *cptr;
-                               else if(cmdlen < (MAX_CMDNAME-4))
-                                       cmdlen += sprintf(&(pptr->command[cmdlen]), "\\%03o", *cptr);
+                               else if (cmdlen < (MAX_CMDNAME - 4))
+                                       cmdlen +=
+                                           sprintf(&(pptr->command[cmdlen]),
+                                                   "\\%03o", *cptr);
                        }
                        pptr->command[cmdlen] = '\0';
                }
@@ -306,92 +428,108 @@ static void add_matched_proc(struct names *name_list, const pid_t pid, const uid
                name_list->matched_procs = pptr;
        else
                last_proc->next = pptr;
+       if (pathname)
+               free(pathname);
+       if (fp)
+               fclose(fp);
 }
 
-int parse_mount(struct names *this_name, struct device_list **dev_list)
+/* Adds a knfsd etc process */
+static void
+add_special_proc(struct names *name_list, const char ptype, const uid_t uid,
+                const char *command)
 {
-       struct stat st;
+       struct procs *pptr;
 
-       if (stat(this_name->filename, &st) != 0) {
-               fprintf(stderr, _("Cannot stat mount point %s: %s\n"), 
-                               this_name->filename,
-                               strerror(errno));
-               exit(1);
+       for (pptr = name_list->matched_procs; pptr != NULL; pptr = pptr->next) {
+               if (pptr->proc_type == ptype)
+                       return;
        }
-#ifdef DEBUG
-       printf("Debug: parse_mount() adding %s\n", this_name->filename);
-#endif /* DEBUG */
-       add_device(dev_list, this_name, st.st_dev);
-       return 0;
+       if ((pptr = malloc(sizeof(struct procs))) == NULL) {
+               fprintf(stderr,
+                       _("Cannot allocate memory for matched proc: %s\n"),
+                       strerror(errno));
+               return;
+       }
+       pptr->pid = 0;
+       pptr->uid = uid;
+       pptr->access = 0;
+       pptr->proc_type = ptype;
+       /* Append the special processes */
+       pptr->next = name_list->matched_procs;
+       name_list->matched_procs = pptr;
+       /* set command name */
+       pptr->command = strdup(command);
 }
 
-int parse_file(struct names *this_name, struct inode_list **ino_list)
+int parse_file(struct names *this_name, struct inode_list **ino_list,
+              const char opts)
 {
-       struct stat st;
+       char *new = expandpath(this_name->filename);
+       if (new) {
+               if (this_name->filename)
+                       free(this_name->filename);
+               this_name->filename = strdup(new);
+       }
 
-       if (stat(this_name->filename, &st) != 0) {
-               fprintf(stderr,_("Cannot stat %s: %s\n"), this_name->filename,
-                               strerror(errno));
+       if (timeout(stat, this_name->filename, &(this_name->st), 5) != 0) {
+               if (errno == ENOENT)
+                       fprintf(stderr,
+                               _("Specified filename %s does not exist.\n"),
+                               this_name->filename);
+               else
+                       fprintf(stderr, _("Cannot stat %s: %s\n"),
+                               this_name->filename, strerror(errno));
                return -1;
        }
 #ifdef DEBUG
        printf("adding file %s %lX %lX\n", this_name->filename,
-                       (unsigned long)st.st_dev, (unsigned long)st.st_ino);
-#endif /* DEBUG */
-       add_inode(ino_list, this_name, st.st_dev, st.st_ino);
+              (unsigned long)this_name->st.st_dev,
+              (unsigned long)this_name->st.st_ino);
+#endif                         /* DEBUG */
+       add_inode(ino_list, this_name, this_name->st.st_dev,
+                 this_name->st.st_ino);
        return 0;
 }
 
-int parse_unixsockets(struct names *this_name, struct inode_list **ino_list, struct unixsocket_list *sun_head)
+int
+parse_unixsockets(struct names *this_name, struct inode_list **ino_list,
+                 struct unixsocket_list *sun_head)
 {
        struct unixsocket_list *sun_tmp;
-       struct stat st;
-    dev_t net_dev;
-    
-       if (stat(this_name->filename, &st) != 0) {
-               fprintf(stderr,_("Cannot stat %s: %s\n"), this_name->filename,
-                               strerror(errno));
-               return -1;
-       }
-    net_dev = find_net_dev();
+       dev_t net_dev;
 
-       for (sun_tmp = sun_head; sun_tmp != NULL ; sun_tmp = sun_tmp->next)
-       {
-      if (sun_tmp->dev == st.st_dev && sun_tmp->inode == st.st_ino) {
-                       add_inode(ino_list, this_name, net_dev, sun_tmp->net_inode);
-            return 0;
+       net_dev = find_net_dev();
+
+       for (sun_tmp = sun_head; sun_tmp != NULL; sun_tmp = sun_tmp->next) {
+               if (sun_tmp->dev == this_name->st.st_dev
+                   && sun_tmp->inode == this_name->st.st_ino) {
+                       add_inode(ino_list, this_name, net_dev,
+                                 sun_tmp->net_inode);
+                       return 0;
                }
        }
        return 0;
 }
 
-int parse_mounts(struct names *this_name, struct mountdev_list *mounts, struct device_list **dev_list, const char opts) 
+int
+parse_mounts(struct names *this_name, struct device_list **dev_list,
+            const char opts)
 {
-       struct stat st;
-       struct mountdev_list *mountptr;
        dev_t match_device;
 
-       if (stat(this_name->filename, &st) != 0) {
-               fprintf(stderr,_("Cannot stat %s: %s\n"), this_name->filename,
-                               strerror(errno));
-               return -1;
-       }
-       if (S_ISBLK(st.st_mode))
-               match_device = st.st_rdev;
+       if (S_ISBLK(this_name->st.st_mode))
+               match_device = this_name->st.st_rdev;
        else
-               match_device = st.st_dev;
-       for (mountptr = mounts ; mountptr != NULL ; mountptr = mountptr->next) {
-               if (mountptr->device == match_device) {
-                       /*printf("Debug: adding parse_mounts() adding %s\n", 
-                                       this_name->filename);*/
-                       add_device(dev_list, this_name, match_device);
-               }
-       }
+               match_device = this_name->st.st_dev;
+       add_device(dev_list, this_name, match_device);
        return 0;
 }
 
 #ifdef WITH_IPV6
-int parse_inet(struct names *this_name, const int ipv6_only, const int ipv4_only, struct ip_connections **ip_list, struct ip6_connections **ip6_list)
+int
+parse_inet(struct names *this_name, const int ipv6_only, const int ipv4_only,
+          struct ip_connections **ip_list, struct ip6_connections **ip6_list)
 #else
 int parse_inet(struct names *this_name, struct ip_connections **ip_list)
 #endif
@@ -408,19 +546,21 @@ int parse_inet(struct names *this_name, struct ip_connections **ip_list)
        char hostspec[100];
        char *protocol;
        int i;
-       
-       if ( (protocol = strchr(this_name->filename, '/')) == NULL)
+
+       if ((protocol = strchr(this_name->filename, '/')) == NULL)
                return -1;
        protocol++;
        if (protocol[0] == '\0')
                return -1;
-       for (i=0; i < 99 && this_name->filename[i] != '\0' && this_name->filename[i] != '/'; i++)
+       for (i = 0;
+            i < 99 && this_name->filename[i] != '\0'
+            && this_name->filename[i] != '/'; i++)
                hostspec[i] = this_name->filename[i];
        hostspec[i] = '\0';
 
        lcl_port_str = rmt_addr_str = rmt_port_str = NULL;
        /* Split out the names */
-       if ( (tmpstr = strchr(hostspec, ',')) == NULL) {
+       if ((tmpstr = strchr(hostspec, ',')) == NULL) {
                /* Single option */
                lcl_port_str = strdup(hostspec);
        } else {
@@ -432,7 +572,7 @@ int parse_inet(struct names *this_name, struct ip_connections **ip_list)
                }
                tmpstr++;
                if (*tmpstr != '\0') {
-                       if ( (tmpstr2 = strchr(tmpstr, ',')) == NULL) {
+                       if ((tmpstr2 = strchr(tmpstr, ',')) == NULL) {
                                /* Only 2 options */
                                rmt_addr_str = tmpstr;
                        } else {
@@ -449,7 +589,8 @@ int parse_inet(struct names *this_name, struct ip_connections **ip_list)
                }
        }
 #ifdef DEBUG
-       printf("parsed to lp %s rh %s rp %s\n", lcl_port_str, rmt_addr_str, rmt_port_str);
+       printf("parsed to lp %s rh %s rp %s\n", lcl_port_str, rmt_addr_str,
+              rmt_port_str);
 #endif
 
        memset(&hints, 0, sizeof(hints));
@@ -457,9 +598,9 @@ int parse_inet(struct names *this_name, struct ip_connections **ip_list)
        if (ipv6_only) {
                hints.ai_family = PF_INET6;
        } else if (ipv4_only) {
-                       hints.ai_family = PF_INET;
-               } else 
-                       hints.ai_family = PF_UNSPEC;
+               hints.ai_family = PF_INET;
+       } else
+               hints.ai_family = PF_UNSPEC;
 #else
        hints.ai_family = PF_INET;
 #endif
@@ -472,72 +613,102 @@ int parse_inet(struct names *this_name, struct ip_connections **ip_list)
                lcl_port = 0;
        } else {
                /* Resolve local port first */
-               if ( (errcode = getaddrinfo(NULL, lcl_port_str, &hints, &res)) != 0) {
+               if ((errcode =
+                    getaddrinfo(NULL, lcl_port_str, &hints, &res)) != 0) {
                        fprintf(stderr, _("Cannot resolve local port %s: %s\n"),
-                                       lcl_port_str, gai_strerror(errcode));
+                               lcl_port_str, gai_strerror(errcode));
                        return -1;
                }
                if (res == NULL)
                        return -1;
-               switch(res->ai_family) {
-                       case AF_INET:
-                               lcl_port = ((struct sockaddr_in*)(res->ai_addr))->sin_port;
-                               break;
+               switch (res->ai_family) {
+               case AF_INET:
+                       lcl_port =
+                           ((struct sockaddr_in *)(res->ai_addr))->sin_port;
+                       break;
 #ifdef WITH_IPV6
-                       case AF_INET6:
-                               lcl_port = ((struct sockaddr_in6*)(res->ai_addr))->sin6_port;
-                               break;
+               case AF_INET6:
+                       lcl_port =
+                           ((struct sockaddr_in6 *)(res->ai_addr))->sin6_port;
+                       break;
 #endif
-                       default:
-                               fprintf(stderr, _("Unknown local port AF %d\n"), res->ai_family);
-                               freeaddrinfo(res);
-                               return -1;
+               default:
+                       fprintf(stderr, _("Unknown local port AF %d\n"),
+                               res->ai_family);
+                       freeaddrinfo(res);
+                       return -1;
                }
                freeaddrinfo(res);
        }
        free(lcl_port_str);
        res = NULL;
        if (rmt_addr_str == NULL && rmt_port_str == NULL) {
-               add_ip_conn(ip_list, protocol, this_name, ntohs(lcl_port), 0, INADDR_ANY);
+               add_ip_conn(ip_list, protocol, this_name, ntohs(lcl_port), 0,
+                           INADDR_ANY);
 #ifdef WITH_IPV6
-               add_ip6_conn(ip6_list, protocol,this_name, ntohs(lcl_port), 0, in6addr_any);
+               add_ip6_conn(ip6_list, protocol, this_name, ntohs(lcl_port), 0,
+                            in6addr_any);
 #endif
                return 0;
        } else {
                /* Resolve remote address and port */
                if (getaddrinfo(rmt_addr_str, rmt_port_str, &hints, &res) == 0) {
-                       for(resptr = res ; resptr != NULL ; resptr = resptr->ai_next ) {
-                               switch(resptr->ai_family) {
-                                       case AF_INET:
-                      sin = (struct sockaddr_in*)resptr->ai_addr;
-                      if (rmt_addr_str == NULL) {
-                                               add_ip_conn(ip_list, protocol, this_name, ntohs(lcl_port), ntohs(sin->sin_port), INADDR_ANY);
-                      } else {
-                                               add_ip_conn(ip_list, protocol, this_name, ntohs(lcl_port), ntohs(sin->sin_port), sin->sin_addr.s_addr);
-                      }
+                       for (resptr = res; resptr != NULL;
+                            resptr = resptr->ai_next) {
+                               switch (resptr->ai_family) {
+                               case AF_INET:
+                                       sin = (struct sockaddr_in *)
+                                           resptr->ai_addr;
+                                       if (rmt_addr_str == NULL) {
+                                               add_ip_conn(ip_list, protocol,
+                                                           this_name,
+                                                           ntohs(lcl_port),
+                                                           ntohs
+                                                           (sin->sin_port),
+                                                           INADDR_ANY);
+                                       } else {
+                                               add_ip_conn(ip_list, protocol,
+                                                           this_name,
+                                                           ntohs(lcl_port),
+                                                           ntohs
+                                                           (sin->sin_port),
+                                                           sin->sin_addr.
+                                                           s_addr);
+                                       }
                                        break;
 #ifdef WITH_IPV6
                                case AF_INET6:
-                    sin6 = (struct sockaddr_in6*)resptr->ai_addr;
-                    if (rmt_addr_str == NULL) {
-                                               add_ip6_conn(ip6_list, protocol, this_name, ntohs(lcl_port), ntohs(sin6->sin6_port), in6addr_any);
-                    } else {
-                      add_ip6_conn(ip6_list, protocol, this_name, ntohs(lcl_port), ntohs(sin6->sin6_port), sin6->sin6_addr);
-                    }
+                                       sin6 = (struct sockaddr_in6 *)
+                                           resptr->ai_addr;
+                                       if (rmt_addr_str == NULL) {
+                                               add_ip6_conn(ip6_list, protocol,
+                                                            this_name,
+                                                            ntohs(lcl_port),
+                                                            ntohs
+                                                            (sin6->sin6_port),
+                                                            in6addr_any);
+                                       } else {
+                                               add_ip6_conn(ip6_list, protocol,
+                                                            this_name,
+                                                            ntohs(lcl_port),
+                                                            ntohs
+                                                            (sin6->sin6_port),
+                                                            sin6->sin6_addr);
+                                       }
                                        break;
 #endif
                                }
-                       } /*while */
+                       }       /*while */
                        return 0;
                }
        }
        return 1;
 }
 
-
-
-
-void find_net_sockets(struct inode_list **ino_list, struct ip_connections *conn_list, const char *protocol, dev_t netdev)
+void
+find_net_sockets(struct inode_list **ino_list,
+                struct ip_connections *conn_list, const char *protocol,
+                dev_t netdev)
 {
        FILE *fp;
        char pathname[200], line[BUFSIZ];
@@ -546,51 +717,60 @@ void find_net_sockets(struct inode_list **ino_list, struct ip_connections *conn_
        ino_t inode;
        struct ip_connections *conn_tmp;
 
-       if (snprintf(pathname,200, "/proc/net/%s", protocol) < 0) 
-               return ;
+       if (snprintf(pathname, 200, "/proc/net/%s", protocol) < 0)
+               return;
 
-       if ( (fp = fopen(pathname, "r")) == NULL) {
-               fprintf(stderr, _("Cannot open protocol file \"%s\": %s\n"), pathname,strerror(errno));
+       if ((fp = fopen(pathname, "r")) == NULL) {
+               fprintf(stderr, _("Cannot open protocol file \"%s\": %s\n"),
+                       pathname, strerror(errno));
                return;
        }
        while (fgets(line, BUFSIZ, fp) != NULL) {
-               if (sscanf(line, "%*u: %*x:%lx %08lx:%lx %*x %*x:%*x %*x:%*x %*x %*d %*d %lu",
-                       &loc_port,
-                       &rmt_addr,
-                       &rmt_port,
-                       &scanned_inode) != 4)
+               if (sscanf
+                   (line,
+                    "%*u: %*x:%lx %08lx:%lx %*x %*x:%*x %*x:%*x %*x %*d %*d %lu",
+                    &loc_port, &rmt_addr, &rmt_port, &scanned_inode) != 4)
                        continue;
 #ifdef DEBUG
-               printf("Found IPv4 *:%lu with %s:%lu\n", loc_port, inet_ntoa(*((struct in_addr*)&rmt_addr)), rmt_port);
-#endif /* DEBUG */
+               printf("Found IPv4 *:%lu with %s:%lu\n", loc_port,
+                      inet_ntoa(*((struct in_addr *)&rmt_addr)), rmt_port);
+#endif                         /* DEBUG */
                inode = scanned_inode;
-               for(conn_tmp = conn_list ; conn_tmp != NULL ; conn_tmp = conn_tmp->next) {
+               for (conn_tmp = conn_list; conn_tmp != NULL;
+                    conn_tmp = conn_tmp->next) {
 #ifdef DEBUG
-                       printf("  Comparing with *.%lu %s:%lu\n", 
-                                       conn_tmp->lcl_port,
-                                       inet_ntoa(conn_tmp->rmt_address),
-                                       conn_tmp->rmt_port);
+                       printf("  Comparing with *.%lu %s:%lu\n",
+                              conn_tmp->lcl_port,
+                              inet_ntoa(conn_tmp->rmt_address),
+                              conn_tmp->rmt_port);
 #endif
-                       if ( (conn_tmp->lcl_port == 0 || conn_tmp->lcl_port == loc_port) &&
-                                (conn_tmp->rmt_port == 0 || conn_tmp->rmt_port == rmt_port) &&
-                 (conn_tmp->rmt_address.s_addr == INADDR_ANY ||
-                                       (memcmp(&(conn_tmp->rmt_address), &(rmt_addr),4) ==0))
-                          ) {
+                       if ((conn_tmp->lcl_port == 0
+                            || conn_tmp->lcl_port == loc_port)
+                           && (conn_tmp->rmt_port == 0
+                               || conn_tmp->rmt_port == rmt_port)
+                           && (conn_tmp->rmt_address.s_addr == INADDR_ANY
+                               ||
+                               (memcmp
+                                (&(conn_tmp->rmt_address), &(rmt_addr),
+                                 4) == 0))) {
                                /* add inode to list */
 #ifdef DEBUG
-                printf("Added inode!\n");
-#endif /* DEBUG */
-                               add_inode(ino_list, conn_tmp->name, netdev, inode);
+                               printf("Added inode!\n");
+#endif                         /* DEBUG */
+                               add_inode(ino_list, conn_tmp->name, netdev,
+                                         inode);
                        }
                }
-                       
 
        }
-       return ;
+       fclose(fp);
 }
 
 #ifdef WITH_IPV6
-void find_net6_sockets(struct inode_list **ino_list, struct ip6_connections *conn_list, const char *protocol, const dev_t netdev)
+void
+find_net6_sockets(struct inode_list **ino_list,
+                 struct ip6_connections *conn_list, const char *protocol,
+                 const dev_t netdev)
 {
        FILE *fp;
        char pathname[200], line[BUFSIZ];
@@ -598,30 +778,26 @@ void find_net6_sockets(struct inode_list **ino_list, struct ip6_connections *con
        struct in6_addr rmt_addr;
        unsigned int tmp_addr[4];
        char rmt_addr6str[INET6_ADDRSTRLEN];
-       struct ip6_connections *head, *tmpptr, *tail;
        struct ip6_connections *conn_tmp;
        unsigned long scanned_inode;
        ino_t inode;
 
-       head = tmpptr = tail = NULL;
-
-       if (snprintf(pathname,200, "/proc/net/%s6", protocol) < 0) 
-               return ;
+       if (snprintf(pathname, 200, "/proc/net/%s6", protocol) < 0)
+               return;
 
-       if ( (fp = fopen(pathname, "r")) == NULL) {
+       if ((fp = fopen(pathname, "r")) == NULL) {
 #ifdef DEBUG
-               printf("Cannot open protocol file \"%s\": %s\n", pathname, strerror(errno));
-#endif /* DEBUG */
-               return ;
+               printf("Cannot open protocol file \"%s\": %s\n", pathname,
+                      strerror(errno));
+#endif                         /* DEBUG */
+               return;
        }
        while (fgets(line, BUFSIZ, fp) != NULL) {
-               if (sscanf(line, "%*u: %*x:%lx %08x%08x%08x%08x:%lx %*x %*x:%*x %*x:%*x %*x %*d %*d %lu",
-                       &loc_port, 
-                       &(tmp_addr[0]),
-                       &(tmp_addr[1]),
-                       &(tmp_addr[2]),
-                       &(tmp_addr[3]),
-                       &rmt_port, &scanned_inode) != 7)
+               if (sscanf
+                   (line,
+                    "%*u: %*x:%lx %08x%08x%08x%08x:%lx %*x %*x:%*x %*x:%*x %*x %*d %*d %lu",
+                    &loc_port, &(tmp_addr[0]), &(tmp_addr[1]), &(tmp_addr[2]),
+                    &(tmp_addr[3]), &rmt_port, &scanned_inode) != 7)
                        continue;
                inode = scanned_inode;
                rmt_addr.s6_addr32[0] = tmp_addr[0];
@@ -630,39 +806,95 @@ void find_net6_sockets(struct inode_list **ino_list, struct ip6_connections *con
                rmt_addr.s6_addr32[3] = tmp_addr[3];
                inet_ntop(AF_INET6, &rmt_addr, rmt_addr6str, INET6_ADDRSTRLEN);
 #ifdef DEBUG
-               printf("Found IPv6 %ld with %s:%ld\n", loc_port, rmt_addr6str, rmt_port);
-#endif /* DEBUG */
-               for(conn_tmp = conn_list ; conn_tmp != NULL ; conn_tmp = conn_tmp->next) {
-                       inet_ntop(AF_INET6, &conn_tmp->rmt_address, rmt_addr6str, INET6_ADDRSTRLEN);
+               printf("Found IPv6 %ld with %s:%ld\n", loc_port, rmt_addr6str,
+                      rmt_port);
+#endif                         /* DEBUG */
+               for (conn_tmp = conn_list; conn_tmp != NULL;
+                    conn_tmp = conn_tmp->next) {
+                       inet_ntop(AF_INET6, &conn_tmp->rmt_address,
+                                 rmt_addr6str, INET6_ADDRSTRLEN);
 #ifdef DEBUG
-                       printf("  Comparing with *.%lu %s:%lu ...\n", 
-                                       conn_tmp->lcl_port,
-                                       rmt_addr6str,
-                                       conn_tmp->rmt_port);
-#endif /* DEBUG */
-                       if ( (conn_tmp->lcl_port == 0 || conn_tmp->lcl_port == loc_port) &&
-                                 (conn_tmp->rmt_port == 0 || conn_tmp->rmt_port == rmt_port) &&
-                  (memcmp(&(conn_tmp->rmt_address), &in6addr_any,16) == 0 ||
-                                       (memcmp(&(conn_tmp->rmt_address), &(rmt_addr),16) ==0))
-                          ) {
-                               add_inode(ino_list, conn_tmp->name, netdev, inode);
+                       printf("  Comparing with *.%lu %s:%lu ...\n",
+                              conn_tmp->lcl_port, rmt_addr6str,
+                              conn_tmp->rmt_port);
+#endif                         /* DEBUG */
+                       if ((conn_tmp->lcl_port == 0
+                            || conn_tmp->lcl_port == loc_port)
+                           && (conn_tmp->rmt_port == 0
+                               || conn_tmp->rmt_port == rmt_port)
+                           &&
+                           (memcmp(&(conn_tmp->rmt_address), &in6addr_any, 16)
+                            == 0
+                            ||
+                            (memcmp(&(conn_tmp->rmt_address), &(rmt_addr), 16)
+                             == 0))) {
+                               add_inode(ino_list, conn_tmp->name, netdev,
+                                         inode);
                        }
                }
        }
+       fclose(fp);
 }
 #endif
 
+static void read_proc_mounts(struct mount_list **mnt_list)
+{
+       FILE *fp;
+       char line[BUFSIZ];
+       char *find_mountp;
+       char *find_space;
+       struct mount_list *mnt_tmp;
+
+       if ((fp = fopen(PROC_MOUNTS, "r")) == NULL) {
+               fprintf(stderr, "Cannot open %s\n", PROC_MOUNTS);
+               return;
+       }
+       while (fgets(line, BUFSIZ, fp) != NULL) {
+               if ((find_mountp = strchr(line, ' ')) == NULL)
+                       continue;
+               find_mountp++;
+               if ((find_space = strchr(find_mountp, ' ')) == NULL)
+                       continue;
+               *find_space = '\0';
+               if ((mnt_tmp = malloc(sizeof(struct mount_list))) == NULL)
+                       continue;
+               if ((mnt_tmp->mountpoint = strdup(find_mountp)) == NULL)
+                       continue;
+               mnt_tmp->next = *mnt_list;
+               *mnt_list = mnt_tmp;
+       }
+       fclose(fp);
+}
+
+static int is_mountpoint(struct mount_list **mnt_list, char *arg)
+{
+       char *p;
+       struct mount_list *mnt_tmp;
+
+       if (*arg == '\0')
+               return 0;
+       /* Remove trailing slashes. */
+       for (p = arg; *p != '\0'; p++) ;
+       while (*(--p) == '/' && p > arg)
+               *p = '\0';
+
+       for (mnt_tmp = *mnt_list; mnt_tmp != NULL; mnt_tmp = mnt_tmp->next)
+               if (!strcmp(mnt_tmp->mountpoint, arg))
+                       return 1;
+       return 0;
+}
+
 int main(int argc, char *argv[])
 {
-       opt_type opts; 
+       opt_type opts;
        int sig_number;
 #ifdef WITH_IPV6
        int ipv4_only, ipv6_only;
 #endif
        unsigned char default_namespace = NAMESPACE_FILE;
-       struct mountdev_list *mount_devices = NULL;
        struct device_list *match_devices = NULL;
        struct unixsocket_list *unixsockets = NULL;
+       struct mount_list *mounts = NULL;
 
        dev_t netdev;
        struct ip_connections *tcp_connection_list = NULL;
@@ -673,9 +905,32 @@ int main(int argc, char *argv[])
 #endif
        struct inode_list *match_inodes = NULL;
        struct names *names_head, *this_name, *names_tail;
-       int optc;
-       char *option;
+       int argc_cnt;
+       char *current_argv, *option;
+       char option_buf[3];
+       struct option *optr;
        char *nsptr;
+       int skip_argv;
+
+       struct option options[] = {
+               {"all", 0, NULL, 'a'},
+               {"kill", 0, NULL, 'k'},
+               {"interactive", 0, NULL, 'i'},
+               {"list-signals", 0, NULL, 'l'},
+               {"mount", 0, NULL, 'm'},
+               {"ismountpoint", 0, NULL, 'M'},
+               {"namespace", 1, NULL, 'n'},
+               {"silent", 0, NULL, 's'},
+               {"user", 0, NULL, 'u'},
+               {"verbose", 0, NULL, 'v'},
+               {"writeonly", 0, NULL, 'w'},
+               {"version", 0, NULL, 'V'},
+#ifdef WITH_IPV6
+               {"ipv4", 0, NULL, '4'},
+               {"ipv6", 0, NULL, '6'},
+#endif
+               {0, 0, 0, 0}
+       };
 
 #ifdef WITH_IPV6
        ipv4_only = ipv6_only = 0;
@@ -692,22 +947,38 @@ int main(int argc, char *argv[])
 #endif
 
        netdev = find_net_dev();
-       scan_mount_devices(opts, &mount_devices);
+#ifndef __CYGWIN__             /* Cygwin doesn't support /proc/net/unix */
        fill_unix_cache(&unixsockets);
+#endif
 
-       /* getopt doesnt like things like -SIGBLAH */
-       for(optc = 1; optc < argc; optc++) {
-               if (argv[optc][0] == '-') { /* its an option */
-                       option=argv[optc] + 1;
-                       if (argv[optc][1] == '-') { /* its a long option */
-                               if (argv[optc][2] == '\0') {
-                                       continue;
+       for (argc_cnt = 1; argc_cnt < argc; argc_cnt++) {
+               current_argv = argv[argc_cnt];
+               if (current_argv[0] == '-') {   /* its an option */
+                       if (current_argv[1] == '-') {   /* its a long option */
+                               if (current_argv[2] == '\0')    /* -- */
+                                       break;
+                               /* Parse the long options */
+                               option = option_buf;
+                               for (optr = options; optr->name != NULL; optr++) {
+                                       if (strcmp(current_argv + 2, optr->name)
+                                           == 0) {
+                                               sprintf(option_buf, "-%c",
+                                                       (char)optr->val);
+                                               break;
+                                       }
                                }
-                               /* FIXME longopts */
-                               continue;
+                               if (optr->name == NULL) {
+                                       fprintf(stderr,
+                                               _("%s: Invalid option %s\n"),
+                                               argv[0], current_argv);
+                                       usage(NULL);
+                               }
+                       } else {
+                               option = current_argv;
                        }
-                       while (*option) {
-                               switch(*option) {
+                       skip_argv = 0;
+                       while (*(++option) != '\0' && !skip_argv) {     /* skips over the - */
+                               switch (*option) {
 #ifdef WITH_IPV6
                                case '4':
                                        ipv4_only = 1;
@@ -715,12 +986,12 @@ int main(int argc, char *argv[])
                                case '6':
                                        ipv6_only = 1;
                                        break;
-#endif
+#endif                         /* WITH_IPV6 */
                                case 'a':
                                        opts |= OPT_ALLFILES;
                                        break;
                                case 'c':
-                                       opts |= OPT_MOUNTPOINT;
+                                       opts |= OPT_MOUNTS;
                                        break;
                                case 'f':
                                        /* ignored */
@@ -739,20 +1010,35 @@ int main(int argc, char *argv[])
                                        return 0;
                                case 'm':
                                        opts |= OPT_MOUNTS;
+                                       read_proc_mounts(&mounts);
+                                       break;
+                               case 'M':
+                                       opts |= OPT_ISMOUNTPOINT;
+                                       read_proc_mounts(&mounts);
                                        break;
                                case 'n':
-                                       optc++;
-                                       if (optc >= argc) {
-                                               usage(_("Namespace option requires an argument."));
+                                       argc_cnt++;
+                                       if (argc_cnt >= argc) {
+                                               usage(_
+                                                     ("Namespace option requires an argument."));
+                                               exit(1);;
                                        }
-                                       if (strcmp(argv[optc], "tcp") == 0)
-                                               default_namespace = NAMESPACE_TCP;
-                                       else if (strcmp(argv[optc], "udp") == 0)
-                                               default_namespace = NAMESPACE_UDP;
-                                       else if (strcmp(argv[optc], "file") == 0)
-                                               default_namespace = NAMESPACE_FILE;
-                                       else 
-                                               usage(_("Invalid namespace name"));
+                                       skip_argv = 1;
+                                       //while(option != '\0') option++;
+                                       if (strcmp(argv[argc_cnt], "tcp") == 0)
+                                               default_namespace =
+                                                   NAMESPACE_TCP;
+                                       else if (strcmp(argv[argc_cnt], "udp")
+                                                == 0)
+                                               default_namespace =
+                                                   NAMESPACE_UDP;
+                                       else if (strcmp(argv[argc_cnt], "file")
+                                                == 0)
+                                               default_namespace =
+                                                   NAMESPACE_FILE;
+                                       else
+                                               usage(_
+                                                     ("Invalid namespace name"));
                                        break;
                                case 's':
                                        opts |= OPT_SILENT;
@@ -763,126 +1049,159 @@ int main(int argc, char *argv[])
                                case 'v':
                                        opts |= OPT_VERBOSE;
                                        break;
+                               case 'w':
+                                       opts |= OPT_WRITE;
+                                       break;
                                case 'V':
                                        print_version();
                                        return 0;
                                default:
-                                       if ( isupper(*option) || isdigit(*option) ) {
-                                               sig_number = get_signal(option,"fuser");
-                                               option[1]='\0';
-
+                                       if (isupper(*option)
+                                           || isdigit(*option)) {
+                                               sig_number =
+                                                   get_signal(current_argv + 1,
+                                                              argv[0]);
+                                               skip_argv = 1;
                                                break;
                                        }
-                                       fprintf(stderr,"%s: Invalid option %c\n",argv[0] , argv[optc][1]);
+                                       fprintf(stderr,
+                                               "%s: Invalid option %c\n",
+                                               argv[0], *option);
                                        usage(NULL);
-
+                                       exit(1);
                                        break;
-                               } /* switch */
-                               option++;
-                       }
+                               }       /* switch */
+                       }       /* while option */
                        continue;
                }
-               /* File specifications */
-               if ( (this_name = malloc(sizeof(struct names))) == NULL)
+
+               /* an option */
+               /* Not an option, must be a file specification */
+               if ((this_name = malloc(sizeof(struct names))) == NULL)
                        continue;
                this_name->next = NULL;
-               if (names_head == NULL)
-                       names_head = this_name;
-               if (names_tail != NULL)
-                       names_tail->next = this_name;
-               names_tail = this_name;
                /* try to find namespace spec */
                this_name->name_space = default_namespace;
-               if ( ((nsptr = strchr(argv[optc], '/')) != NULL )
-                       && ( nsptr != argv[optc] )) {
-                       if (strcmp(nsptr+1, "tcp") == 0) {
+               if (((nsptr = strchr(current_argv, '/')) != NULL)
+                   && (nsptr != current_argv)) {
+                       if (strcmp(nsptr + 1, "tcp") == 0) {
                                this_name->name_space = NAMESPACE_TCP;
                                *nsptr = '\0';
-                       } else if (strcmp(nsptr+1, "udp") == 0) {
+                       } else if (strcmp(nsptr + 1, "udp") == 0) {
                                this_name->name_space = NAMESPACE_UDP;
                                *nsptr = '\0';
-                       } else if (strcmp(nsptr+1, "file") == 0) {
+                       } else if (strcmp(nsptr + 1, "file") == 0) {
                                this_name->name_space = NAMESPACE_FILE;
                                *nsptr = '\0';
                        }
                }
                this_name->matched_procs = NULL;
-               if ((opts & OPT_MOUNTS || opts & OPT_MOUNTPOINT) && this_name->name_space != NAMESPACE_FILE)
-                       usage(_("You can only use files with mountpoint option"));
-               switch(this_name->name_space) {
-                       case NAMESPACE_TCP:
-                               asprintf(&(this_name->filename), "%s/tcp", argv[optc]);
+               if (opts & (OPT_MOUNTS | OPT_ISMOUNTPOINT)
+                   && this_name->name_space != NAMESPACE_FILE)
+                       usage(_
+                             ("You can only use files with mountpoint options"));
+               if (opts & OPT_ISMOUNTPOINT &&
+                   !is_mountpoint(&mounts, current_argv)) {
+                       free(this_name);
+                       continue;
+               }
+               switch (this_name->name_space) {
+               case NAMESPACE_TCP:
+                       if (asprintf
+                           (&(this_name->filename), "%s/tcp",
+                            current_argv) > 0) {
 #ifdef WITH_IPV6
-                               parse_inet(this_name, ipv4_only, ipv6_only, &tcp_connection_list, &tcp6_connection_list);
+                               parse_inet(this_name, ipv4_only, ipv6_only,
+                                          &tcp_connection_list,
+                                          &tcp6_connection_list);
 #else
                                parse_inet(this_name, &tcp_connection_list);
 #endif
-                               break;
-                       case NAMESPACE_UDP:
-                               asprintf(&(this_name->filename), "%s/udp", argv[optc]);
+                       }
+                       break;
+               case NAMESPACE_UDP:
+                       if (asprintf
+                           (&(this_name->filename), "%s/udp",
+                            current_argv) > 0) {
 #ifdef WITH_IPV6
-                               parse_inet(this_name, ipv4_only, ipv6_only, &tcp_connection_list, &tcp6_connection_list);
+                               parse_inet(this_name, ipv4_only, ipv6_only,
+                                          &udp_connection_list,
+                                          &udp6_connection_list);
 #else
-                               parse_inet(this_name, &tcp_connection_list);
+                               parse_inet(this_name, &udp_connection_list);
 #endif
-                               break;
-                       default: /* FILE */
-                               this_name->filename = strdup(argv[optc]);
-                                       parse_file(this_name, &match_inodes);
-                                       parse_unixsockets(this_name, &match_inodes, unixsockets);
-                               if (opts & OPT_MOUNTPOINT || opts & OPT_MOUNTS)
-                                       parse_mounts(this_name, mount_devices, &match_devices, opts);
-                               break;
+                       }
+                       break;
+               default:        /* FILE */
+                       this_name->filename = strdup(current_argv);
+                       if (parse_file(this_name, &match_inodes, opts) == 0) {
+                               if (opts & OPT_MOUNTS)
+                                       parse_mounts(this_name, &match_devices,
+                                                    opts);
+                               else
+                                       parse_unixsockets(this_name,
+                                                         &match_inodes,
+                                                         unixsockets);
+                       }
+                       break;
                }
 
-       } /* for optc */
-       if (names_head == NULL) {
+               if (names_head == NULL)
+                       names_head = this_name;
+               if (names_tail != NULL)
+                       names_tail->next = this_name;
+               names_tail = this_name;
+       }                       /* for across the argvs */
+       if (names_head == NULL)
                usage(_("No process specification given"));
-       }
-       /* Check conflicting operations */
-       if (opts & OPT_MOUNTPOINT) {
-               if (opts & OPT_MOUNTS)
-                       usage(_("You cannot use the mounted and mountpoint flags together"));
-       }
-       if (opts & OPT_SILENT) 
-       {
+
+       if (opts & OPT_SILENT) {
                opts &= ~OPT_VERBOSE;
                opts &= ~OPT_USER;
                if (opts & OPT_ALLFILES)
-                       usage(_("all option cannot be used with silent option."));
+                       usage(_
+                             ("all option cannot be used with silent option."));
        }
 #ifdef WITH_IPV6
        if (ipv4_only && ipv6_only)
-               usage(_("You cannot search for only IPv4 and only IPv6 sockets at the same time"));
-       if (!ipv4_only) {
+               usage(_
+                     ("You cannot search for only IPv4 and only IPv6 sockets at the same time"));
+       if (!ipv6_only) {
 #endif
                if (tcp_connection_list != NULL)
-                       find_net_sockets(&match_inodes, tcp_connection_list, "tcp",netdev);
+                       find_net_sockets(&match_inodes, tcp_connection_list,
+                                        "tcp", netdev);
                if (udp_connection_list != NULL)
-                       find_net_sockets(&match_inodes, udp_connection_list, "udp",netdev);
+                       find_net_sockets(&match_inodes, udp_connection_list,
+                                        "udp", netdev);
 #ifdef WITH_IPV6
        }
-       if (!ipv6_only) {
+       if (!ipv4_only) {
                if (tcp6_connection_list != NULL)
-                       find_net6_sockets(&match_inodes, tcp6_connection_list, "tcp",netdev);
+                       find_net6_sockets(&match_inodes, tcp6_connection_list,
+                                         "tcp", netdev);
                if (udp6_connection_list != NULL)
-                       find_net6_sockets(&match_inodes,  udp6_connection_list, "udp",netdev);
+                       find_net6_sockets(&match_inodes, udp6_connection_list,
+                                         "udp", netdev);
        }
 #endif
 #ifdef DEBUG
        debug_match_lists(names_head, match_inodes, match_devices);
 #endif
-       scan_procs(names_head, match_inodes, match_devices);
-#ifdef NFS_CHECKS
-    scan_knfsd(names_head, match_devices);
-#endif /* NFS_CHECKS */
-       return print_matches(names_head,opts, sig_number);
+       scan_procs(names_head, match_inodes, match_devices, unixsockets,
+                  netdev);
+       scan_knfsd(names_head, match_inodes, match_devices);
+       scan_mounts(names_head, match_inodes, match_devices);
+       scan_swaps(names_head, match_inodes, match_devices);
+       return print_matches(names_head, opts, sig_number);
 }
 
 /* 
  * returns 0 if match, 1 if no match
  */
-static int print_matches(struct names *names_head, const opt_type opts, const int sig_number)
+static int
+print_matches(struct names *names_head, const opt_type opts,
+             const int sig_number)
 {
        struct names *nptr;
        struct procs *pptr;
@@ -891,90 +1210,163 @@ static int print_matches(struct names *names_head, const opt_type opts, const in
        int len = 0;
        struct passwd *pwent = NULL;
        int have_match = 0;
-       
-       for (nptr = names_head; nptr != NULL ; nptr = nptr->next) {
+       int have_kill = 0;
+       int name_has_procs = 0;
+
+       for (nptr = names_head; nptr != NULL; nptr = nptr->next) {
                if (opts & OPT_SILENT) {
-                       have_match = nptr->matched_procs ? 1 : have_match;
-               } else { /* We're not silent */
-                       if (nptr->matched_procs != NULL || opts & OPT_ALLFILES) {
-                               if (head == 0 && opts & OPT_VERBOSE) {
-                                       fprintf(stderr, _("%*s USER        PID ACCESS COMMAND\n"),
-                                               NAME_FIELD, "");
-                                       head = 1;
-                               }
-    
-                               fprintf(stderr, "%s:", nptr->filename);
-                               len = strlen(nptr->filename) + 1;
-                       }
-    
-                       first = 1;
-                       for (pptr = nptr->matched_procs; pptr != NULL ; pptr = pptr->next) {
-                               have_match = 1;
-                               if (opts & (OPT_VERBOSE|OPT_USER)) {
-                                       if (pwent == NULL || pwent->pw_uid != pptr->uid)
-                                               pwent = getpwuid(pptr->uid);
-                               }
-                               if (len > NAME_FIELD && (opts & OPT_VERBOSE)) {
-                                       putc('\n', stderr);
-                                       len=0;
-                               }
-                               if ((opts & OPT_VERBOSE) || first) 
-                                       while (len++ < NAME_FIELD)
-                                               putc(' ', stderr);
-                               if (opts & OPT_VERBOSE) {
-                                       if (pwent == NULL)
-                                               fprintf(stderr, " %-8s ", _("(unknown)"));
-                                       else
-                                               fprintf(stderr, " %-8s ", pwent->pw_name);
-                               }
-                               printf("%6d", pptr->pid);
-                               fflush(stdout);
-                               if (opts & OPT_VERBOSE) {
-                                       fprintf(stderr, " %c%c%c%c%c ",
-                                               pptr->access & ACCESS_FILE ? (pptr->access & ACCESS_FILEWR ? 'F' : 'f' ) : '.',
-                                               pptr->access & ACCESS_ROOT ? 'r' : '.',
-                                               pptr->access & ACCESS_CWD ? 'c' : '.',
-                                               pptr->access & ACCESS_EXE ? 'e' : '.',
-                                               (pptr->access & ACCESS_MMAP) && !(pptr->access & ACCESS_EXE) ? 'm' : '.');
-                               } else {
-                                       if (pptr->access & ACCESS_ROOT)
-                                               putc('r', stderr);
-                                       if (pptr->access & ACCESS_CWD)
-                                               putc('c', stderr);
-                                       if (pptr->access & ACCESS_EXE)
-                                               putc('e', stderr);
-                                       else if (pptr->access & ACCESS_MMAP)
-                                               putc('m', stderr);
-                               }
-                               if (opts & OPT_USER) {
-                                       if (pwent == NULL)
-                                               fprintf(stderr, " %-8s ", _("(unknown)"));
-                                       else
-                                               fprintf(stderr, "(%s)", pwent->pw_name);
-                               }
-                               if (opts & OPT_VERBOSE) {
-                                       if (pptr->command == NULL)
-                                               fprintf(stderr, "???\n");
-                                       else 
-                                               fprintf(stderr, "%s\n", pptr->command);
-                               }
-                               len = 0;
-                               first = 0;
-                       }
-                if (opts & OPT_VERBOSE) {
-                  /* put a newline if showing all files and no procs*/
-                  if (nptr->matched_procs == NULL && (opts & OPT_ALLFILES))
-                    putc('\n', stderr);
-                } else {
-                         if (nptr->matched_procs != NULL || (opts & OPT_ALLFILES))
-                               putc('\n', stderr);
-                }
-               } /* be silent */
+                       for (pptr = nptr->matched_procs; pptr != NULL;
+                            pptr = pptr->next) {
+                               if (pptr->proc_type != PTYPE_NORMAL)
+                                       continue;
+
+                               have_match = 1;
+                       }
+               } else {        /* We're not silent */
+                       if ((opts & OPT_ALLFILES) == 0) {
+                               name_has_procs = 0;
+                               if (opts & OPT_VERBOSE) {
+                                       if (nptr->matched_procs)
+                                               name_has_procs = 1;
+                               } else {
+                                       for (pptr = nptr->matched_procs;
+                                            pptr != NULL; pptr = pptr->next) {
+                                               if (pptr->proc_type ==
+                                                   PTYPE_NORMAL) {
+                                                       name_has_procs = 1;
+                                                       break;
+                                               }
+                                       }
+                               }
+                       }
+                       if (name_has_procs == 1 || opts & OPT_ALLFILES) {
+                               if (head == 0 && opts & OPT_VERBOSE) {
+                                       fprintf(stderr,
+                                               _
+                                               ("%*s USER        PID ACCESS COMMAND\n"),
+                                               NAME_FIELD, "");
+                                       head = 1;
+                               }
+
+                               fprintf(stderr, "%s:", nptr->filename);
+                               len = strlen(nptr->filename) + 1;
+                       }
+
+                       first = 1;
+                       for (pptr = nptr->matched_procs; pptr != NULL;
+                            pptr = pptr->next) {
+                               /* Suppress any special "processes" */
+                               if (!(opts & OPT_VERBOSE)
+                                   && (pptr->proc_type != PTYPE_NORMAL))
+                                       continue;
+
+                               have_match = 1;
+                               if (opts & (OPT_VERBOSE | OPT_USER)) {
+                                       if (pwent == NULL
+                                           || pwent->pw_uid != pptr->uid)
+                                               pwent = getpwuid(pptr->uid);
+                               }
+                               if (len > NAME_FIELD && (opts & OPT_VERBOSE)) {
+                                       putc('\n', stderr);
+                                       len = 0;
+                               }
+                               if ((opts & OPT_VERBOSE) || first)
+                                       while (len++ < NAME_FIELD)
+                                               putc(' ', stderr);
+                               if (opts & OPT_VERBOSE) {
+                                       if (pwent == NULL)
+                                               fprintf(stderr, " %-8s ",
+                                                       _("(unknown)"));
+                                       else
+                                               fprintf(stderr, " %-8s ",
+                                                       pwent->pw_name);
+                               }
+                               if (pptr->proc_type == PTYPE_NORMAL)
+                                       printf(" %5d", pptr->pid);
+                               else
+                                       printf("kernel");
+                               fflush(stdout);
+                               if (opts & OPT_VERBOSE) {
+                                       switch (pptr->proc_type) {
+                                       case PTYPE_KNFSD:
+                                               fprintf(stderr, " knfsd ");
+                                               break;
+                                       case PTYPE_MOUNT:
+                                               fprintf(stderr, " mount ");
+                                               break;
+                                       case PTYPE_SWAP:
+                                               fprintf(stderr, " swap  ");
+                                               break;
+                                       default:
+                                               fprintf(stderr, " %c%c%c%c%c ",
+                                                       pptr->access &
+                                                       ACCESS_FILE
+                                                       ? (pptr->access &
+                                                          ACCESS_FILEWR ? 'F' :
+                                                          'f') : '.',
+                                                       pptr->
+                                                       access & ACCESS_ROOT ?
+                                                       'r' : '.',
+                                                       pptr->
+                                                       access & ACCESS_CWD ?
+                                                       'c' : '.',
+                                                       pptr->
+                                                       access & ACCESS_EXE ?
+                                                       'e' : '.',
+                                                       (pptr->
+                                                        access & ACCESS_MMAP)
+                                                       && !(pptr->
+                                                            access &
+                                                            ACCESS_EXE) ? 'm' :
+                                                       '.');
+                                       }       /* switch */
+                               } else {
+                                       if (pptr->access & ACCESS_ROOT)
+                                               putc('r', stderr);
+                                       if (pptr->access & ACCESS_CWD)
+                                               putc('c', stderr);
+                                       if (pptr->access & ACCESS_EXE)
+                                               putc('e', stderr);
+                                       else if (pptr->access & ACCESS_MMAP)
+                                               putc('m', stderr);
+                               }
+                               if (opts & OPT_USER) {
+                                       if (pwent == NULL)
+                                               fprintf(stderr, " %-8s ",
+                                                       _("(unknown)"));
+                                       else
+                                               fprintf(stderr, "(%s)",
+                                                       pwent->pw_name);
+                               }
+                               if (opts & OPT_VERBOSE) {
+                                       if (pptr->command == NULL)
+                                               fprintf(stderr, "???\n");
+                                       else
+                                               fprintf(stderr, "%s\n",
+                                                       pptr->command);
+                               }
+                               len = 0;
+                               first = 0;
+                       }
+                       if (opts & OPT_VERBOSE) {
+                               /* put a newline if showing all files and no procs */
+                               if (nptr->matched_procs == NULL
+                                   && (opts & OPT_ALLFILES))
+                                       putc('\n', stderr);
+                       } else {
+                               if (name_has_procs || (opts & OPT_ALLFILES))
+                                       putc('\n', stderr);
+                       }
+               }               /* be silent */
                if (opts & OPT_KILL)
-                       kill_matched_proc(nptr->matched_procs,  opts, sig_number);
+                       have_kill = kill_matched_proc(nptr->matched_procs,
+                                                     opts, sig_number);
 
-       } /* next name */
-       return (have_match==1?0:1);
+       }                       /* next name */
+       if (opts & OPT_KILL)
+               return (have_kill == 1 ? 0 : 1);
+       else
+               return (have_match == 1 ? 0 : 1);
 
 }
 
@@ -983,65 +1375,110 @@ static struct stat *get_pidstat(const pid_t pid, const char *filename)
        char pathname[256];
        struct stat *st;
 
-       if ( (st = malloc(sizeof(struct stat))) == NULL)
+       if ((st = (struct stat *)malloc(sizeof(struct stat))) == NULL)
                return NULL;
        snprintf(pathname, 256, "/proc/%d/%s", pid, filename);
-       if (stat(pathname, st) != 0) 
+       if (timeout(stat, pathname, st, 5) != 0) {
+               free(st);
                return NULL;
-       else
-               return st;
+       }
+       return st;
 }
 
-static void check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head, struct inode_list *ino_head, const uid_t uid, const char access)
+static void
+check_dir(const pid_t pid, const char *dirname, struct device_list *dev_head,
+         struct inode_list *ino_head, const uid_t uid, const char access,
+         struct unixsocket_list *sockets, dev_t netdev)
 {
-       char *dirpath, *filepath;
        DIR *dirp;
+       dev_t thedev;
        struct dirent *direntry;
        struct inode_list *ino_tmp;
        struct device_list *dev_tmp;
+       struct unixsocket_list *sock_tmp;
        struct stat st, lst;
-
-       if ( (dirpath = malloc(MAX_PATHNAME)) == NULL)
-               return;
-       if ( (filepath = malloc(MAX_PATHNAME)) == NULL)
-               return;
+       char dirpath[MAX_PATHNAME];
+       char filepath[MAX_PATHNAME];
 
        snprintf(dirpath, MAX_PATHNAME, "/proc/%d/%s", pid, dirname);
-       if ( (dirp = opendir(dirpath)) == NULL)
+       if ((dirp = opendir(dirpath)) == NULL)
                return;
-       while ( (direntry = readdir(dirp)) != NULL) {
+       while ((direntry = readdir(dirp)) != NULL) {
                if (direntry->d_name[0] < '0' || direntry->d_name[0] > '9')
                        continue;
 
                snprintf(filepath, MAX_PATHNAME, "/proc/%d/%s/%s",
-                       pid, dirname, direntry->d_name);
-               if (stat(filepath, &st) != 0) {
-                       fprintf(stderr, _("Cannot stat file %s: %s\n"),filepath, strerror(errno));
+                        pid, dirname, direntry->d_name);
+
+               if (timeout(stat, filepath, &st, 5) != 0) {
+                       if (errno != ENOENT) {
+                               fprintf(stderr, _("Cannot stat file %s: %s\n"),
+                                       filepath, strerror(errno));
+                       }
                } else {
-                       for (dev_tmp = dev_head ; dev_tmp != NULL ; dev_tmp = dev_tmp->next) {
-                               if (st.st_dev == dev_tmp->device) {
-                                       if (access == ACCESS_FILE && (lstat(filepath, &lst)==0) && (lst.st_mode & S_IWUSR)) {
-                                               add_matched_proc(dev_tmp->name, pid,uid, ACCESS_FILEWR|access);
-                                       } else  {
-                                               add_matched_proc(dev_tmp->name, pid,uid, access);
+                       thedev = st.st_dev;
+                       if (thedev == netdev) {
+                               for (sock_tmp = sockets; sock_tmp != NULL;
+                                    sock_tmp = sock_tmp->next) {
+                                       if (sock_tmp->net_inode == st.st_ino) {
+                                               st.st_ino = sock_tmp->inode;
+                                               st.st_dev = sock_tmp->dev;
+                                               thedev = sock_tmp->dev;
+                                               break;
                                        }
                                }
                        }
-                       for (ino_tmp = ino_head ; ino_tmp != NULL ; ino_tmp = ino_tmp->next) {
-                               if (st.st_dev == ino_tmp->device && st.st_ino == ino_tmp->inode) {
-                                       if (access == ACCESS_FILE && (lstat(filepath, &lst)==0) && (lst.st_mode & S_IWUSR)) {
-                                               add_matched_proc(ino_tmp->name, pid,uid, ACCESS_FILEWR|access);
+                       for (dev_tmp = dev_head; dev_tmp != NULL;
+                            dev_tmp = dev_tmp->next) {
+                               if (thedev != dev_tmp->device)
+                                       continue;
+                               if (access == ACCESS_FILE
+                                   && (lstat(filepath, &lst) == 0)
+                                   && (lst.st_mode & S_IWUSR)) {
+                                       add_matched_proc(dev_tmp->name,
+                                                        pid, uid,
+                                                        ACCESS_FILEWR |
+                                                        access);
+                               } else {
+                                       add_matched_proc(dev_tmp->name,
+                                                        pid, uid, access);
+                               }
+                       }
+                       for (ino_tmp = ino_head; ino_tmp != NULL;
+                            ino_tmp = ino_tmp->next) {
+                               if (thedev != ino_tmp->device)
+                                       continue;
+                               if (!st.st_ino
+                                   && timeout(stat, filepath, &st, 5) != 0) {
+                                       fprintf(stderr,
+                                               _("Cannot stat file %s: %s\n"),
+                                               filepath, strerror(errno));
+                                       continue;
+                               }
+                               if (st.st_ino == ino_tmp->inode) {
+                                       if (access == ACCESS_FILE
+                                           && (lstat(filepath, &lst) == 0)
+                                           && (lst.st_mode & S_IWUSR)) {
+                                               add_matched_proc(ino_tmp->name,
+                                                                pid, uid,
+                                                                ACCESS_FILEWR |
+                                                                access);
                                        } else {
-                                               add_matched_proc(ino_tmp->name, pid,uid, access);
+                                               add_matched_proc(ino_tmp->name,
+                                                                pid, uid,
+                                                                access);
                                        }
                                }
                        }
                }
-       } /* while fd_dent */
+       }                       /* while fd_dent */
        closedir(dirp);
 }
 
-static void check_map(const pid_t pid, const char *filename, struct device_list *dev_head, struct inode_list *ino_head, const uid_t uid, const char access)
+static void
+check_map(const pid_t pid, const char *filename,
+         struct device_list *dev_head, struct inode_list *ino_head,
+         const uid_t uid, const char access)
 {
        char pathname[MAX_PATHNAME];
        char line[BUFSIZ];
@@ -1053,18 +1490,23 @@ static void check_map(const pid_t pid, const char *filename, struct device_list
        dev_t tmp_device;
 
        snprintf(pathname, MAX_PATHNAME, "/proc/%d/%s", pid, filename);
-       if ( (fp = fopen(pathname, "r")) == NULL)
+       if ((fp = fopen(pathname, "r")) == NULL)
                return;
-       while (fgets(line,BUFSIZ, fp)) {
-               if (sscanf(line, "%*s %*s %*s %x:%x %lld", 
-                                       &tmp_maj, &tmp_min, &tmp_inode) == 3) {
+       while (fgets(line, BUFSIZ, fp)) {
+               if (sscanf(line, "%*s %*s %*s %x:%x %lld",
+                          &tmp_maj, &tmp_min, &tmp_inode) == 3) {
                        tmp_device = tmp_maj * 256 + tmp_min;
-                       for(dev_tmp = dev_head ; dev_tmp != NULL ; dev_tmp = dev_tmp->next)
+                       for (dev_tmp = dev_head; dev_tmp != NULL;
+                            dev_tmp = dev_tmp->next)
                                if (dev_tmp->device == tmp_device)
-                                       add_matched_proc(dev_tmp->name, pid, uid, access);
-                       for(ino_tmp = ino_head ; ino_tmp != NULL ; ino_tmp = ino_tmp->next)
-                               if (ino_tmp->device == tmp_device && ino_tmp->inode == tmp_inode)
-                                       add_matched_proc(ino_tmp->name, pid, uid, access);
+                                       add_matched_proc(dev_tmp->name, pid,
+                                                        uid, access);
+                       for (ino_tmp = ino_head; ino_tmp != NULL;
+                            ino_tmp = ino_tmp->next)
+                               if (ino_tmp->device == tmp_device
+                                   && ino_tmp->inode == tmp_inode)
+                                       add_matched_proc(ino_tmp->name, pid,
+                                                        uid, access);
                }
        }
        fclose(fp);
@@ -1075,27 +1517,13 @@ static uid_t getpiduid(const pid_t pid)
        char pathname[MAX_PATHNAME];
        struct stat st;
 
-       if (snprintf(pathname, MAX_PATHNAME, "/proc/%d", pid) < 0) 
+       if (snprintf(pathname, MAX_PATHNAME, "/proc/%d", pid) < 0)
                return 0;
-       if (stat(pathname, &st) != 0)
+       if (timeout(stat, pathname, &st, 5) != 0)
                return 0;
        return st.st_uid;
 }
 
-void add_mount_device(struct mountdev_list **mount_head,const char *fsname, const char *dir, dev_t device)
-{
-       struct mountdev_list *newmount;
-       /*printf("Adding mount Path: %s Dir:%s dev:%0x\n",dir, fsname, device);*/
-
-       if ( (newmount = malloc(sizeof(struct mountdev_list))) == NULL)
-               return;
-       newmount->fsname = strdup(fsname);
-       newmount->dir = strdup(dir);
-       newmount->device = device;
-       newmount->next = *mount_head;
-       *mount_head = newmount;
-}
-
 /*
  * fill_unix_cache : Create a list of Unix sockets
  *   This list is used later for matching purposes
@@ -1104,83 +1532,73 @@ void fill_unix_cache(struct unixsocket_list **unixsocket_head)
 {
        FILE *fp;
        char line[BUFSIZ];
-       char *scanned_path;
        int scanned_inode;
        struct stat st;
        struct unixsocket_list *newsocket;
-       
-       if ( (fp = fopen("/proc/net/unix","r")) == NULL) {
+
+       if ((fp = fopen("/proc/net/unix", "r")) == NULL) {
                fprintf(stderr, _("Cannot open /proc/net/unix: %s\n"),
-                               strerror(errno));
+                       strerror(errno));
                return;
        }
        while (fgets(line, BUFSIZ, fp) != NULL) {
+               char *path;
+               char *scanned_path = NULL;
                if (sscanf(line, "%*x: %*x %*x %*x %*x %*d %d %as",
-                       &scanned_inode,
-                       &scanned_path) != 2) 
+                          &scanned_inode, &scanned_path) != 2) {
+                       if (scanned_path)
+                               free(scanned_path);
+                       continue;
+               }
+               if (scanned_path == NULL)
                        continue;
-               if (stat(scanned_path, &st) < 0) {
-                       free(scanned_path);
+               path = scanned_path;
+               if (*scanned_path == '@')
+                       scanned_path++;
+               if (timeout(stat, scanned_path, &st, 5) < 0) {
+                       free(path);
                        continue;
                }
-               if ( (newsocket = malloc(sizeof(struct unixsocket_list))) == NULL)
+               if ((newsocket = (struct unixsocket_list *)
+                    malloc(sizeof(struct unixsocket_list))) == NULL) {
+                       free(path);
                        continue;
+               }
                newsocket->sun_name = strdup(scanned_path);
                newsocket->inode = st.st_ino;
                newsocket->dev = st.st_dev;
-        newsocket->net_inode = scanned_inode;
+               newsocket->net_inode = scanned_inode;
                newsocket->next = *unixsocket_head;
                *unixsocket_head = newsocket;
-       } /* while */
-
-}
+               free(path);
+       }                       /* while */
 
-/*
- * scan_mount_devices : Create a list of mount points and devices
- *   This list is used later for matching purposes
- */
-void scan_mount_devices(const opt_type opts, struct mountdev_list **mount_devices)
-{
-       FILE *mntfp;
-       struct mntent *mnt_ptr;
-       struct stat st;
-       
-       if ( (mntfp = setmntent("/etc/mtab","r")) == NULL) {
-               fprintf(stderr, _("Cannot open /etc/mtab: %s\n"),
-                               strerror(errno));
-               return;
-       }
-       while ( (mnt_ptr = getmntent(mntfp)) != NULL) {
-               if (stat(mnt_ptr->mnt_dir, &st) == 0) {
-                       add_mount_device(mount_devices, mnt_ptr->mnt_fsname, mnt_ptr->mnt_dir, st.st_dev);
-               }
-       }
+       fclose(fp);
 }
 
 #ifdef DEBUG
-/* often not used, doesnt need translation */
-static void debug_match_lists(struct names *names_head, struct inode_list *ino_head, struct device_list *dev_head)
+/* often not used, doesn't need translation */
+static void
+debug_match_lists(struct names *names_head, struct inode_list *ino_head,
+                 struct device_list *dev_head)
 {
        struct names *nptr;
        struct inode_list *iptr;
        struct device_list *dptr;
 
-       fprintf(stderr,"Specified Names:\n");
-       for (nptr=names_head; nptr!= NULL; nptr=nptr->next) 
-       {
+       fprintf(stderr, "Specified Names:\n");
+       for (nptr = names_head; nptr != NULL; nptr = nptr->next) {
                fprintf(stderr, "\t%s %c\n", nptr->filename, nptr->name_space);
        }
-       fprintf(stderr,"\nInodes:\n");
-       for (iptr=ino_head; iptr!=NULL; iptr=iptr->next)
-       {
+       fprintf(stderr, "\nInodes:\n");
+       for (iptr = ino_head; iptr != NULL; iptr = iptr->next) {
                fprintf(stderr, "  Dev:%0lx Inode:(%0ld) 0x%0lx => %s\n",
-                               (unsigned long)iptr->device, (unsigned long)iptr->inode, (unsigned long)iptr->inode, iptr->name->filename);
+                       (unsigned long)iptr->device, (unsigned long)iptr->inode,
+                       (unsigned long)iptr->inode, iptr->name->filename);
        }
-       fprintf(stderr,"\nDevices:\n");
-       for (dptr=dev_head; dptr!=NULL; dptr=dptr->next)
-       {
-               fprintf(stderr, "\tDev:%0lx\n",
-                               (unsigned long)dptr->device);
+       fprintf(stderr, "\nDevices:\n");
+       for (dptr = dev_head; dptr != NULL; dptr = dptr->next) {
+               fprintf(stderr, "\tDev:%0lx\n", (unsigned long)dptr->device);
        }
 }
 
@@ -1194,7 +1612,7 @@ static int ask(const pid_t pid)
        char *line = NULL;
 
        fflush(stdout);
-       while(1) {
+       while (1) {
                fprintf(stderr, _("Kill process %d ? (y/N) "), pid);
                fflush(stderr);
                if (getline(&line, &len, stdin) < 0)
@@ -1208,75 +1626,479 @@ static int ask(const pid_t pid)
                        free(line);
                        return res;
                }
-       } /* while */
+       }                       /* while */
 }
 
-static void kill_matched_proc(struct procs *proc_head, const opt_type opts, const int sig_number)
+static int
+kill_matched_proc(struct procs *proc_head, const opt_type opts,
+                 const int sig_number)
 {
        struct procs *pptr;
+       pid_t mypid;
+       int ret = 0;
 
-       for (pptr = proc_head ; pptr != NULL ; pptr = pptr->next ) {
-               if ( (opts & OPT_INTERACTIVE) && (ask(pptr->pid) == 0))
+       mypid = getpid();
+
+       for (pptr = proc_head; pptr != NULL; pptr = pptr->next) {
+               if (pptr->pid == mypid)
+                       continue;       /* dont kill myself */
+               if (pptr->proc_type != PTYPE_NORMAL)
+                       continue;
+               if ((opts & OPT_WRITE) && ((pptr->access & ACCESS_FILEWR) == 0))
+                       continue;
+               if ((opts & OPT_INTERACTIVE) && (ask(pptr->pid) == 0))
                        continue;
-               if ( kill (pptr->pid, sig_number) < 0) {
+               if (kill(pptr->pid, sig_number) < 0) {
                        fprintf(stderr, _("Could not kill process %d: %s\n"),
-                                       pptr->pid,
-                                       strerror(errno)
-                               );
+                               pptr->pid, strerror(errno));
+                       continue;
                }
-                                       
+               ret = 1;
        }
+       return ret;
 }
 
 static dev_t find_net_dev(void)
 {
-  int skt;
-  struct stat st;
-
-  if ( (skt = socket(PF_INET, SOCK_DGRAM, 0)) < 0) {
-    fprintf(stderr,_("Cannot open a network socket.\n"));
-    return -1;
-  }
-  if ( fstat(skt, &st) != 0) {
-    fprintf(stderr,_("Cannot find socket's device number.\n"));
-    close(skt);
-    return -1;
-  }
-  close(skt);
-  return st.st_dev;
+       int skt;
+       struct stat st;
+
+       if ((skt = socket(PF_INET, SOCK_DGRAM, 0)) < 0) {
+               fprintf(stderr, _("Cannot open a network socket.\n"));
+               return -1;
+       }
+       if (fstat(skt, &st) != 0) {
+               fprintf(stderr, _("Cannot find socket's device number.\n"));
+               close(skt);
+               return -1;
+       }
+       close(skt);
+       return st.st_dev;
 }
 
-#ifdef NFS_CHECKS
-static void scan_knfsd(struct names *names_head, struct device_list *dev_head)
+static void
+scan_knfsd(struct names *names_head, struct inode_list *ino_head,
+          struct device_list *dev_head)
 {
        struct device_list *dev_tmp;
+       struct inode_list *ino_tmp;
        FILE *fp;
        char line[BUFSIZ];
-    char *find_space;
-    struct stat st;
+       char *find_space;
+       struct stat st;
 
-    if ( (fp = fopen(KNFSD_EXPORTS, "r")) == NULL) {
+       if ((fp = fopen(KNFSD_EXPORTS, "r")) == NULL) {
 #ifdef DEBUG
-      printf("Cannot open %s\n", KNFSD_EXPORTS);
+               printf("Cannot open %s\n", KNFSD_EXPORTS);
 #endif
-      return;
-    }
+               return;
+       }
        while (fgets(line, BUFSIZ, fp) != NULL) {
-      if (line[0] == '#') { continue; }
-      if ( (find_space=strpbrk(line," \t")) == NULL) {
-        continue;
-      }
-      *find_space = '\0';
-      if ( stat(line, &st) != 0) {
-    printf("hello %s\n", line);
-        continue;
-      }
-      printf("looking for dev %0x\n", st.st_dev);
-      /* Scan the devices */
-         for (dev_tmp = dev_head ; dev_tmp != NULL ; dev_tmp = dev_tmp->next) {
-         printf("dev %d\n", dev_tmp->device);
-       }
-
-    }
+               if (line[0] == '#') {
+                       continue;
+               }
+               if ((find_space = strpbrk(line, " \t")) == NULL)
+                       continue;
+               *find_space = '\0';
+               if (timeout(stat, line, &st, 5) != 0) {
+                       continue;
+               }
+               /* Scan the devices */
+               for (dev_tmp = dev_head; dev_tmp != NULL;
+                    dev_tmp = dev_tmp->next) {
+                       if (st.st_dev == dev_tmp->device)
+                               add_special_proc(dev_tmp->name, PTYPE_KNFSD, 0,
+                                                line);
+               }
+               for (ino_tmp = ino_head; ino_tmp != NULL;
+                    ino_tmp = ino_tmp->next) {
+                       if (st.st_dev == ino_tmp->device
+                           && st.st_ino == ino_tmp->inode)
+                               add_special_proc(ino_tmp->name, PTYPE_KNFSD, 0,
+                                                line);
+               }
+       }
+       fclose(fp);
+}
+
+static void
+scan_mounts(struct names *names_head, struct inode_list *ino_head,
+           struct device_list *dev_head)
+{
+       struct device_list *dev_tmp;
+       struct inode_list *ino_tmp;
+       FILE *fp;
+       char line[BUFSIZ];
+       char *find_mountp;
+       char *find_space;
+       struct stat st;
+
+       if ((fp = fopen(PROC_MOUNTS, "r")) == NULL) {
+               fprintf(stderr, "Cannot open %s\n", PROC_MOUNTS);
+               return;
+       }
+       while (fgets(line, BUFSIZ, fp) != NULL) {
+               if ((find_mountp = strchr(line, ' ')) == NULL)
+                       continue;
+               find_mountp++;
+               if ((find_space = strchr(find_mountp, ' ')) == NULL)
+                       continue;
+               *find_space = '\0';
+               if (timeout(stat, find_mountp, &st, 5) != 0) {
+                       continue;
+               }
+               /* Scan the devices */
+               for (dev_tmp = dev_head; dev_tmp != NULL;
+                    dev_tmp = dev_tmp->next) {
+                       if (st.st_dev == dev_tmp->device)
+                               add_special_proc(dev_tmp->name, PTYPE_MOUNT, 0,
+                                                find_mountp);
+               }
+               for (ino_tmp = ino_head; ino_tmp != NULL;
+                    ino_tmp = ino_tmp->next) {
+                       if (st.st_dev == ino_tmp->device
+                           && st.st_ino == ino_tmp->inode)
+                               add_special_proc(ino_tmp->name, PTYPE_MOUNT, 0,
+                                                find_mountp);
+               }
+       }
+       fclose(fp);
+}
+
+static void
+scan_swaps(struct names *names_head, struct inode_list *ino_head,
+          struct device_list *dev_head)
+{
+       struct device_list *dev_tmp;
+       struct inode_list *ino_tmp;
+       FILE *fp;
+       char line[BUFSIZ];
+       char *find_space;
+       struct stat st;
+
+       if ((fp = fopen(PROC_SWAPS, "r")) == NULL) {
+               /*fprintf(stderr, "Cannot open %s\n", PROC_SWAPS); */
+               return;
+       }
+       /* lines are filename   type */
+       while (fgets(line, BUFSIZ, fp) != NULL) {
+               if ((find_space = strchr(line, ' ')) == NULL)
+                       continue;
+               *find_space = '\0';
+               find_space++;
+               while (*find_space == ' ') {
+                       find_space++;
+                       if (*find_space == '\0')
+                               continue;
+               }
+               if (timeout(stat, line, &st, 5) != 0) {
+                       continue;
+               }
+               /* Scan the devices */
+               for (dev_tmp = dev_head; dev_tmp != NULL;
+                    dev_tmp = dev_tmp->next) {
+                       if (st.st_dev == dev_tmp->device)
+                               add_special_proc(dev_tmp->name, PTYPE_SWAP, 0,
+                                                line);
+               }
+               for (ino_tmp = ino_head; ino_tmp != NULL;
+                    ino_tmp = ino_tmp->next) {
+                       if (st.st_dev == ino_tmp->device
+                           && st.st_ino == ino_tmp->inode)
+                               add_special_proc(ino_tmp->name, PTYPE_SWAP, 0,
+                                                line);
+               }
+       }
+       fclose(fp);
+}
+
+/*
+ * Execute stat(2) system call with timeout to avoid deadlock
+ * on network based file systems.
+ */
+#if defined(WITH_TIMEOUT_STAT) && (WITH_TIMEOUT_STAT == 1)
+
+static sigjmp_buf jenv;
+
+static void sigalarm(int sig)
+{
+       if (sig == SIGALRM)
+               siglongjmp(jenv, 1);
+}
+
+static int
+timeout(stat_t func, const char *path, struct stat *buf, unsigned int seconds)
+{
+       pid_t pid = 0;
+       int ret = 0, pipes[4];
+       ssize_t len;
+
+       if (pipe(&pipes[0]) < 0)
+               goto err;
+       switch ((pid = fork())) {
+       case -1:
+               close(pipes[0]);
+               close(pipes[1]);
+               goto err;
+       case 0:
+               (void)signal(SIGALRM, SIG_DFL);
+               close(pipes[0]);
+               if ((ret = func(path, buf)) == 0)
+                       do
+                               len = write(pipes[1], buf, sizeof(struct stat));
+                       while (len < 0 && errno == EINTR);
+               close(pipes[1]);
+               exit(ret);
+       default:
+               close(pipes[1]);
+               if (sigsetjmp(jenv, 1)) {
+                       (void)alarm(0);
+                       (void)signal(SIGALRM, SIG_DFL);
+                       if (waitpid(0, (int *)0, WNOHANG) == 0)
+                               kill(pid, SIGKILL);
+                       errno = ETIMEDOUT;
+                       seconds = 1;
+                       goto err;
+               }
+               (void)signal(SIGALRM, sigalarm);
+               (void)alarm(seconds);
+               if (read(pipes[0], buf, sizeof(struct stat)) == 0) {
+                       errno = EFAULT;
+                       ret = -1;
+               }
+               (void)alarm(0);
+               (void)signal(SIGALRM, SIG_DFL);
+               close(pipes[0]);
+               waitpid(pid, NULL, 0);
+               break;
+       }
+       return ret;
+ err:
+       return -1;
+}
+#endif                         /* WITH_TIMEOUT_STAT */
+
+#ifdef _LISTS_H
+/*
+ * Use /proc/self/mountinfo of modern linux system to determine
+ * the device numbers of the mount points. Use this to avoid the
+ * stat(2) system call wherever possible.
+ */
+
+static list_t mntinfo = { &mntinfo, &mntinfo };
+
+static void clear_mntinfo(void)
+{
+       list_t *ptr, *tmp;
+
+       list_for_each_safe(ptr, tmp, &mntinfo) {
+               mntinfo_t *mnt = list_entry(ptr, mntinfo_t);
+               delete(ptr);
+               free(mnt);
+       }
+}
+
+static void init_mntinfo(void)
+{
+       char mpoint[PATH_MAX + 1];
+       int mid, parid, max = 0;
+       uint maj, min;
+       list_t sort;
+       FILE *mnt;
+
+       if (!list_empty(&mntinfo))
+               return;
+       if ((mnt = fopen("/proc/self/mountinfo", "r")) == (FILE *) 0)
+               return;
+       while (fscanf
+              (mnt, "%i %i %u:%u %*s %s %*[^\n]", &mid, &parid, &maj, &min,
+               &mpoint[0]) == 5) {
+               const size_t nlen = strlen(mpoint);
+               mntinfo_t *restrict mnt;
+               if (posix_memalign
+                   ((void *)&mnt, sizeof(void *),
+                    alignof(mntinfo_t) + (nlen + 1)) != 0) {
+                       fprintf(stderr,
+                               _
+                               ("Cannot allocate memory for matched proc: %s\n"),
+                               strerror(errno));
+                       exit(1);
+               }
+               append(mnt, mntinfo);
+               mnt->mpoint = ((char *)mnt) + alignof(mntinfo_t);
+               strcpy(mnt->mpoint, mpoint);
+               mnt->nlen = nlen;
+               mnt->parid = parid;
+               mnt->dev = makedev(maj, min);
+               mnt->id = mid;
+               if (mid > max)
+                       max = mid;
+       }
+       fclose(mnt);
+
+       /* Sort mount points accordingly to the reverse mount order */
+       initial(&sort);
+       for (mid = 1; mid <= max; mid++) {
+               list_t *ptr, *tmp;
+               list_for_each_safe(ptr, tmp, &mntinfo) {
+                       mntinfo_t *mnt = list_entry(ptr, mntinfo_t);
+                       if (mid != mnt->id)
+                               continue;
+                       move_head(ptr, &sort);
+                       break;
+               }
+               list_for_each_safe(ptr, tmp, &mntinfo) {
+                       mntinfo_t *mnt = list_entry(ptr, mntinfo_t);
+                       if (mid != mnt->parid)
+                               continue;
+                       move_head(ptr, &sort);
+               }
+       }
+       if (!list_empty(&mntinfo)) {
+#ifdef EBADE
+               errno = EBADE;
+#else
+               errno = ENOENT;
+#endif                         /* EBADE */
+       }
+       join(&sort, &mntinfo);
+}
+
+/*
+ * Determine device of links below /proc/
+ */
+static dev_t device(const char *path)
+{
+       char name[PATH_MAX + 1];
+       const char *use;
+       ssize_t nlen;
+       list_t *ptr;
+
+       if ((nlen = readlink(path, name, PATH_MAX)) < 0) {
+               nlen = strlen(path);
+               use = &path[0];
+       } else {
+               name[nlen] = '\0';
+               use = &name[0];
+       }
+
+       if (*use != '/') {      /* special file (socket, pipe, inotify) */
+               struct stat st;
+               if (timeout(stat, path, &st, 5) != 0)
+                       return (dev_t) - 1;
+               return st.st_dev;
+       }
+
+       list_for_each(ptr, &mntinfo) {
+               mntinfo_t *mnt = list_entry(ptr, mntinfo_t);
+               if (nlen < mnt->nlen)
+                       continue;
+               if (mnt->nlen == 1)     /* root fs is the last entry */
+                       return mnt->dev;
+               if (use[mnt->nlen] != '\0' && use[mnt->nlen] != '/')
+                       continue;
+               if (strncmp(use, mnt->mpoint, mnt->nlen) == 0)
+                       return mnt->dev;
+       }
+       return (dev_t) - 1;
+}
+#endif                         /* _LISTS_H */
+
+/*
+ * Somehow the realpath(3) glibc function call, nevertheless
+ * it avoids lstat(2) system calls.
+ */
+static char real[PATH_MAX + 1];
+char *expandpath(const char *path)
+{
+       char tmpbuf[PATH_MAX + 1];
+       const char *start, *end;
+       char *curr, *dest;
+       int deep = MAXSYMLINKS;
+
+       if (!path || *path == '\0')
+               return (char *)0;
+
+       curr = &real[0];
+
+       if (*path != '/') {
+               if (!getcwd(curr, PATH_MAX))
+                       return (char *)0;
+#ifdef HAVE_RAWMEMCHR
+               dest = rawmemchr(curr, '\0');
+#else
+               dest = strchr(curr, '\0');
+#endif
+       } else {
+               *curr = '/';
+               dest = curr + 1;
+       }
+
+       for (start = end = path; *start; start = end) {
+
+               while (*start == '/')
+                       ++start;
+
+               for (end = start; *end && *end != '/'; ++end) ;
+
+               if (end - start == 0)
+                       break;
+               else if (end - start == 1 && start[0] == '.') {
+                       ;
+               } else if (end - start == 2 && start[0] == '.'
+                          && start[1] == '.') {
+                       if (dest > curr + 1)
+                               while ((--dest)[-1] != '/') ;
+               } else {
+                       char lnkbuf[PATH_MAX + 1];
+                       size_t len;
+                       ssize_t n;
+
+                       if (dest[-1] != '/')
+                               *dest++ = '/';
+
+                       if (dest + (end - start) > curr + PATH_MAX) {
+                               errno = ENAMETOOLONG;
+                               return (char *)0;
+                       }
+
+                       dest = mempcpy(dest, start, end - start);
+                       *dest = '\0';
+
+                       if (deep-- < 0) {
+                               errno = ELOOP;
+                               return (char *)0;
+                       }
+
+                       errno = 0;
+                       if ((n = readlink(curr, lnkbuf, PATH_MAX)) < 0) {
+                               deep = MAXSYMLINKS;
+                               if (errno == EINVAL)
+                                       continue;       /* Not a symlink */
+                               return (char *)0;
+                       }
+                       lnkbuf[n] = '\0';       /* Don't be fooled by readlink(2) */
+
+                       len = strlen(end);
+                       if ((n + len) > PATH_MAX) {
+                               errno = ENAMETOOLONG;
+                               return (char *)0;
+                       }
+
+                       memmove(&tmpbuf[n], end, len + 1);
+                       path = end = memcpy(tmpbuf, lnkbuf, n);
+
+                       if (lnkbuf[0] == '/')
+                               dest = curr + 1;
+                       else if (dest > curr + 1)
+                               while ((--dest)[-1] != '/') ;
+
+               }
+       }
+
+       if (dest > curr + 1 && dest[-1] == '/')
+               --dest;
+       *dest = '\0';
+
+       return curr;
 }
-#endif /* NFSCHECKS */
index f15ba7e..242ce19 100644 (file)
@@ -1,6 +1,6 @@
 
 /* Option Flags */
-typedef unsigned char opt_type;
+typedef unsigned short opt_type;
 
 #define OPT_VERBOSE 1
 #define OPT_ALLFILES 2
@@ -9,18 +9,20 @@ typedef unsigned char opt_type;
 #define OPT_INTERACTIVE 16
 #define OPT_SILENT 32
 #define OPT_USER 64
-#define OPT_MOUNTPOINT 128
-
+#define OPT_ISMOUNTPOINT 128
+#define OPT_WRITE 256
 
 struct procs {
        pid_t pid;
        uid_t uid;
        char access;
+       char proc_type;
        char *username;
        char *command;
        struct procs *next;
 };
 
+/* For the access field above */
 #define ACCESS_CWD 1
 #define ACCESS_EXE 2
 #define ACCESS_FILE 4
@@ -28,9 +30,16 @@ struct procs {
 #define ACCESS_MMAP 16
 #define ACCESS_FILEWR 32
 
+/* For the proc_type field above */
+#define PTYPE_NORMAL 0
+#define PTYPE_MOUNT 1
+#define PTYPE_KNFSD 2
+#define PTYPE_SWAP 3
+
 struct names {
        char *filename;
        unsigned char name_space;
+    struct stat st;
        struct procs *matched_procs;
        struct names *next;
 };
@@ -58,14 +67,6 @@ struct inode_list {
        struct inode_list *next;
 };
 
-struct mountdev_list {
-       char *fsname;
-       char *dir;
-       dev_t   device;
-       struct mountdev_list *next;
-};
-
-
 struct device_list {
        struct names *name;
        dev_t   device;
@@ -80,6 +81,22 @@ struct unixsocket_list {
        struct unixsocket_list *next;
 };
 
+struct mount_list {
+       char *mountpoint;
+       struct mount_list *next;
+};
+
+#if defined (__GNUC__) && defined(__OPTIMIZE__) && !defined (__CYGWIN__)
+# include "lists.h"
+typedef struct mntinfo_s {
+    list_t   this;
+    int id, parid;
+    dev_t     dev;
+    size_t   nlen;
+    char  *mpoint;
+} mntinfo_t;
+#endif
+
 #define NAMESPACE_FILE 0
 #define NAMESPACE_TCP 1
 #define NAMESPACE_UDP 2
@@ -88,3 +105,5 @@ struct unixsocket_list {
 #define MAX_CMDNAME 16
 
 #define KNFSD_EXPORTS "/proc/fs/nfs/exports"
+#define PROC_MOUNTS "/proc/mounts"
+#define PROC_SWAPS "/proc/swaps"
index e9a47b7..9f2782a 100644 (file)
@@ -2,7 +2,7 @@
  * killall.c - kill processes by name or list PIDs
  *
  * Copyright (C) 1993-2002 Werner Almesberger
- * Copyright (C) 2002-2007 Craig Small
+ * Copyright (C) 2002-2012 Craig Small
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #include <getopt.h>
 #include <pwd.h>
 #include <regex.h>
+#include <ctype.h>
+#include <assert.h>
 
 #ifdef WITH_SELINUX
 #include <selinux/selinux.h>
 #endif /*WITH_SELINUX*/
 
+#ifdef HAVE_LOCALE_H
+#include <locale.h>
+#endif /* HAVE_LOCALE_H */
+
 #include "i18n.h"
 #include "comm.h"
 #include "signals.h"
 
-
 #define PROC_BASE "/proc"
 #define MAX_NAMES (int)(sizeof(unsigned long)*8)
 
+#define TSECOND "s"
+#define TMINUTE "m"
+#define THOUR   "h"
+#define TDAY    "d" 
+#define TWEEK   "w"
+#define TMONTH  "M" 
+#define TYEAR   "y"
+
+#define TMAX_SECOND 31536000
+#define TMAX_MINUTE 525600  
+#define TMAX_HOUR   8760    
+#define TMAX_DAY    365     
+#define TMAX_WEEK   48      
+#define TMAX_MONTH  12      
+#define TMAX_YEAR   1       
+
+#define ER_REGFAIL -1
+#define ER_NOMEM   -2
+#define ER_UNKWN   -3
+#define ER_OOFRA   -4
 
 static int verbose = 0, exact = 0, interactive = 0, reg = 0,
            quiet = 0, wait_until_dead = 0, process_group = 0,
-           ignore_case = 0, pidof;
+           ignore_case = 0;
+static long younger_than = 0, older_than = 0;
 
 static int
 ask (char *name, pid_t pid, const int signal)
@@ -95,6 +121,70 @@ ask (char *name, pid_t pid, const int signal)
   /* Never should get here */
 }
 
+static double
+uptime()
+{
+   char * savelocale;
+   char buf[2048];
+   FILE* file;
+   if (!(file=fopen( PROC_BASE "/uptime", "r"))) {
+      fprintf(stderr, "killall: error opening uptime file\n"); 
+      exit(1);
+   }
+   savelocale = setlocale(LC_NUMERIC, NULL);
+   setlocale(LC_NUMERIC,"C");
+   if (fscanf(file, "%2047s", buf) == EOF) perror("uptime");
+   fclose(file);
+   setlocale(LC_NUMERIC,savelocale);
+   return atof(buf);
+}
+
+/* process age from jiffies to seconds via uptime */
+static double process_age(const unsigned long long jf)
+{
+       double age;
+       double sc_clk_tck = sysconf(_SC_CLK_TCK);
+       assert(sc_clk_tck > 0);
+       age = uptime() - jf / sc_clk_tck;
+       if (age < 0L)
+               return 0L;
+       return age;
+}
+
+/* returns requested time interval in seconds, 
+ negative indicates error has occurred
+ */
+static long
+parse_time_units(const char* age)
+{
+   char *unit;
+   long num;
+
+   num = strtol(age,&unit,10);
+   if (age == unit) /* no digits found */
+     return -1;
+   if (unit[0] == '\0') /* no units found */
+     return -1;
+
+   switch(unit[0]) {
+   case 's':
+     return num;
+   case 'm':
+     return (num * 60);
+   case 'h':
+     return (num * 60 * 60);
+   case 'd':
+     return (num * 60 * 60 * 24);
+   case 'w':
+     return (num * 60 * 60 * 24 * 7);
+   case 'M':
+     return (num * 60 * 60 * 24 * 7 * 4);
+   case 'y':
+     return (num * 60 * 60 * 24 * 7 * 4 * 12);
+   }
+   return -1;
+}
+
 static int
 match_process_uid(pid_t pid, uid_t uid)
 {
@@ -118,7 +208,7 @@ match_process_uid(pid_t pid, uid_t uid)
        fclose(f);
        if (re==-1)
        {
-               fprintf(stderr, _("Cannot get UID from process status\n"));
+               fprintf(stderr, _("killall: Cannot get UID from process status\n"));
                exit(1);
        }
        return re;
@@ -144,7 +234,7 @@ build_regexp_list(int names, char **namelist)
        {
                if (regcomp(&reglist[i], namelist[i], flag) != 0) 
                {
-                       fprintf(stderr, _("Bad regular expression: %s\n"), namelist[i]);
+                       fprintf(stderr, _("killall: Bad regular expression: %s\n"), namelist[i]);
                        exit (1);
                }
        }
@@ -243,7 +333,7 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
     pgids = NULL;              /* silence gcc */
   else
     {
-      pgids = malloc (pids * sizeof (pid_t));
+      pgids = calloc (pids, sizeof (pid_t));
       if (!pgids)
        {
          perror ("malloc");
@@ -254,7 +344,7 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
     {
       pid_t id;
       int found_name = -1;
-
+      double process_age_sec = 0;
       /* match by UID */
       if (pwent && match_process_uid(pid_table[i], pwent->pw_uid)==0)
        continue;
@@ -281,9 +371,23 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
        }
       free (path);
       okay = fscanf (file, "%*d (%15[^)]", comm) == 1;
-      (void) fclose (file);
-      if (!okay)
+      if (!okay) {
+       fclose(file);
        continue;
+      }
+      if ( younger_than || older_than ) {
+        rewind(file);
+        unsigned long long proc_stt_jf = 0;
+        okay = fscanf(file, "%*d %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %Lu", 
+                      &proc_stt_jf) == 1;
+        if (!okay) {
+           fclose(file);
+           continue;
+        }
+        process_age_sec = process_age(proc_stt_jf);
+      }
+      (void) fclose (file);
+       
       got_long = 0;
       command = NULL;          /* make gcc happy */
       length = strlen (comm);
@@ -340,8 +444,8 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
          if (exact && !okay)
            {
              if (verbose)
-               fprintf (stderr, _("skipping partial match %s(%d)\n"), comm,
-                        pid_table[i]);
+               fprintf (stderr, _("killall: skipping partial match %s(%d)\n"),
+                       comm, pid_table[i]);
              continue;
            }
          got_long = okay;
@@ -356,6 +460,11 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
            }
          else /* non-regex */
            {
+             if ( younger_than && process_age_sec && (process_age_sec > younger_than ) )
+                continue;
+             if ( older_than   && process_age_sec && (process_age_sec < older_than ) )
+                continue;
+              
              if (!sts[j].st_dev)
                {
                  if (length != COMM_LEN - 1 || name_len[j] < COMM_LEN - 1)
@@ -371,9 +480,21 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
                             continue;
                        }
                    }
-                 else if (got_long ? strcmp (namelist[j], command) :
-                                     strncmp (namelist[j], comm, COMM_LEN - 1))
-                   continue;
+                 else
+                   {
+                     if (ignore_case == 1)
+                       {
+                         if (got_long ? strcasecmp (namelist[j], command) :
+                                        strncasecmp (namelist[j], comm, COMM_LEN - 1))
+                            continue;
+                       }
+                     else
+                       {
+                         if (got_long ? strcmp (namelist[j], command) :
+                                        strncmp (namelist[j], comm, COMM_LEN - 1))
+                            continue;
+                       }
+                   }
                }
              else
                {
@@ -391,11 +512,14 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
                      /* maybe the binary has been modified and std[j].st_ino
                       * is not reliable anymore. We need to compare paths.
                       */
-                     char linkbuf[PATH_MAX];
+                     size_t len = strlen(namelist[j]);
+                     char *linkbuf = malloc(len + 1);
 
-                     if (readlink(path, linkbuf, sizeof(linkbuf)) <= 0 ||
-                                         strcmp(namelist[j], linkbuf))
+                     if (!linkbuf ||
+                         readlink(path, linkbuf, len + 1) != len ||
+                         memcmp(namelist[j], linkbuf, len))
                        ok = 0;
+                     free(linkbuf);
                    }
 
                  free(path);
@@ -421,8 +545,8 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
            pgids[i] = id;
            if (id < 0)
              {
-               fprintf (stderr, "getpgid(%d): %s\n", pid_table[i],
-                  strerror (errno));
+               fprintf (stderr, "killall: getpgid(%d): %s\n",
+                          pid_table[i], strerror (errno));
              }
            for (j = 0; j < i; j++)
              if (pgids[j] == id)
@@ -432,14 +556,7 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
          }     
        if (interactive && !ask (comm, id, signal))
          continue;
-       if (pidof)
-         {
-           if (found)
-              putchar (' ');
-           printf ("%d", id);
-           found |= 1 << (found_name >= 0 ? found_name : 0);
-         }
-       else if (kill (process_group ? -id : id, signal) >= 0)
+       if (kill (process_group ? -id : id, signal) >= 0)
          {
            if (verbose)
              fprintf (stderr, _("Killed %s(%s%d) with signal %d\n"), got_long ? command :
@@ -453,12 +570,10 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
          fprintf (stderr, "%s(%d): %s\n", got_long ? command :
                comm, id, strerror (errno));
     }
-  if (!quiet && !pidof)
+  if (!quiet)
     for (i = 0; i < names; i++)
       if (!(found & (1 << i)))
-       fprintf (stderr, _("%s: no process killed\n"), namelist[i]);
-  if (pidof)
-    putchar ('\n');
+       fprintf (stderr, _("%s: no process found\n"), namelist[i]);
   if (names)
     /* killall returns a zero return code if at least one process has 
      * been killed for each listed command. */
@@ -491,21 +606,10 @@ kill_all (int signal, int names, char **namelist, struct passwd *pwent)
 
 
 static void
-usage_pidof (void)
-{
-  fprintf (stderr, _(
-    "Usage: pidof [ -eg ] NAME...\n"
-    "       pidof -V\n\n"
-    "    -e      require exact match for very long names;\n"
-    "            skip if the command line is unavailable\n"
-    "    -g      show process group ID instead of process ID\n"
-    "    -V      display version information\n\n"));
-}
-
-
-static void
-usage_killall (void)
+usage (const char *msg)
 {
+  if (msg != NULL)
+    fprintf(stderr, "%s\n", msg);
 #ifdef WITH_SELINUX
    fprintf(stderr, _(
      "Usage: killall [-Z CONTEXT] [-u USER] [ -eIgiqrvw ] [ -SIGNAL ] NAME...\n"));
@@ -519,6 +623,8 @@ usage_killall (void)
     "  -e,--exact          require exact match for very long names\n"
     "  -I,--ignore-case    case insensitive process name match\n"
     "  -g,--process-group  kill process group instead of process\n"
+    "  -y,--younger-than   kill processes younger than TIME\n"
+    "  -o,--older-than     kill processes older than TIME\n"               
     "  -i,--interactive    ask for confirmation before killing\n"
     "  -l,--list           list all known signal names\n"
     "  -q,--quiet          don't print complaints\n"
@@ -534,24 +640,15 @@ usage_killall (void)
     "                      (must precede other arguments)\n"));
 #endif /*WITH_SELINUX*/
   fputc('\n', stderr);
+  exit(1);
 }
 
 
-static void
-usage (void)
-{
-  if (pidof)
-    usage_pidof ();
-  else
-    usage_killall ();
-  exit (1);
-}
-
 void print_version()
 {
-  fprintf(stderr, "%s (PSmisc) %s\n", pidof ? "pidof" : "killall", VERSION);
+  fprintf(stderr, "killall (PSmisc) %s\n", VERSION);
   fprintf(stderr, _(
-    "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n\n"));
+    "Copyright (C) 1993-2012 Werner Almesberger and Craig Small\n\n"));
   fprintf(stderr, _(
     "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
     "This is free software, and you are welcome to redistribute it under\n"
@@ -559,6 +656,17 @@ void print_version()
     "For more information about these matters, see the files named COPYING.\n"));
 }
 
+static int
+have_proc_self_stat (void)
+{
+  char filename[128];
+  struct stat isproc;
+  pid_t pid = getpid();
+
+  snprintf(filename, sizeof(filename), PROC_BASE"/%d/stat", (int) pid);
+  return stat(filename, &isproc) == 0;
+}
+
 int
 main (int argc, char **argv)
 {
@@ -567,14 +675,17 @@ main (int argc, char **argv)
   int optc;
   int myoptind;
   struct passwd *pwent = NULL;
-  struct stat isproc;
-  
+  char yt[16];
+  char ot[16];
+
   //int optsig = 0;
 
   struct option options[] = {
     {"exact", 0, NULL, 'e'},
     {"ignore-case", 0, NULL, 'I'},
     {"process-group", 0, NULL, 'g'},
+    {"younger-than", 1, NULL, 'y'},
+    {"older-than", 1, NULL, 'o'},
     {"interactive", 0, NULL, 'i'},
     {"list-signals", 0, NULL, 'l'},
     {"quiet", 0, NULL, 'q'},
@@ -599,7 +710,7 @@ main (int argc, char **argv)
   security_context_t scontext = NULL;
   regex_t scontext_reg;
 
-  if ( argc < 2 ) usage(); /* do the obvious thing... */
+  if ( argc < 2 ) usage(NULL); /* do the obvious thing... */
 #endif /*WITH_SELINUX*/
 
   name = strrchr (*argv, '/');
@@ -607,99 +718,104 @@ main (int argc, char **argv)
     name++;
   else
     name = *argv;
-  pidof = strcmp (name, "killall");
   sig_num = SIGTERM;
 
 
   opterr = 0;
 #ifdef WITH_SELINUX
-  while ( (optc = getopt_long_only(argc,argv,"egilqrs:u:vwZ:VI",options,NULL)) != EOF) {
+  while ( (optc = getopt_long_only(argc,argv,"egy:o:ilqrs:u:vwZ:VI",options,NULL)) != -1) {
 #else
-  while ( (optc = getopt_long_only(argc,argv,"egilqrs:u:vwVI",options,NULL)) != EOF) {
+  while ( (optc = getopt_long_only(argc,argv,"egy:o:ilqrs:u:vwVI",options,NULL)) != -1) {
 #endif
     switch (optc) {
-      case 'e':
-        exact = 1;
-        break;
-      case 'g':
-        process_group = 1;
-        break;
-      case 'i':
-        if (pidof)
-          usage();
-        interactive = 1;
-        break;
-      case 'l':
-        if (pidof)
-          usage();
-        list_signals();
-        return 0;
-        break;
-      case 'q':
-        if (pidof)
-          usage();
-        quiet = 1;
-        break;
-      case 'r':
-       if (pidof)
-         usage();
-       reg = 1;
-       break;
-      case 's':
-       sig_num = get_signal (optarg, "killall");
-        break;
-      case 'u':
-       if (pidof)
-         usage();
-        if (!(pwent = getpwnam(optarg)))
-         {
-            fprintf (stderr, _("Cannot find user %s\n"), optarg);
-            exit (1);
-          }
-        break;
-      case 'v':
-        if (pidof)
-          usage();
-        verbose = 1;
-        break;
-      case 'w':
-        if (pidof)
-          usage();
-        wait_until_dead = 1;
-        break;
-      case 'I':
+    case 'e':
+      exact = 1;
+      break;
+    case 'g':
+      process_group = 1;
+      break;
+    case 'y':
+      strncpy(yt, optarg, 16);
+         yt[15] = '\0';
+      if ( 0 >= (younger_than = parse_time_units(yt) ) )
+           usage(_("Invalid time format"));
+      break;
+    case 'o':
+      strncpy(ot, optarg, 16);
+         ot[15] = '\0';
+      if ( 0 >= (older_than = parse_time_units(ot) ) )
+           usage(_("Invalid time format"));
+      break;
+    case 'i':
+      interactive = 1;
+      break;
+    case 'l':
+      list_signals();
+      return 0;
+      break;
+    case 'q':
+      quiet = 1;
+      break;
+    case 'r':
+         reg = 1;
+         break;
+    case 's':
+         sig_num = get_signal (optarg, "killall");
+      break;
+    case 'u':
+      if (!(pwent = getpwnam(optarg))) {
+        fprintf (stderr, _("Cannot find user %s\n"), optarg);
+        exit (1);
+      }
+      break;
+    case 'v':
+      verbose = 1;
+      break;
+    case 'w':
+      wait_until_dead = 1;
+      break;
+    case 'I':
+      /* option check is optind-1 but sig name is optind */
+      if (strcmp(argv[optind-1],"-I") == 0 || strncmp(argv[optind-1],"--",2) == 0) {
         ignore_case = 1;
-        break;
-      case 'V':
+      } else {
+             sig_num = get_signal (argv[optind]+1, "killall");
+      }
+      break;
+    case 'V':
+      /* option check is optind-1 but sig name is optind */
+      if (strcmp(argv[optind-1],"-V") == 0 || strncmp(argv[optind-1],"--",2) == 0) {
         print_version();
         return 0;
-        break;
+      }
+           sig_num = get_signal (argv[optind]+1, "killall");
+      break;
 #ifdef WITH_SELINUX
-      case 'Z': 
-        if (is_selinux_enabled()>0) {
-         scontext=optarg;
-          if (regcomp(&scontext_reg, scontext, REG_EXTENDED|REG_NOSUB) != 0) {
-            fprintf(stderr, _("Bad regular expression: %s\n"), scontext);
-            exit (1);
-         }
-        } else 
-           fprintf(stderr, "Warning: -Z (--context) ignored. Requires an SELinux enabled kernel\n");
-        break;
+    case 'Z': 
+      if (is_selinux_enabled()>0) {
+           scontext=optarg;
+        if (regcomp(&scontext_reg, scontext, REG_EXTENDED|REG_NOSUB) != 0) {
+          fprintf(stderr, _("Bad regular expression: %s\n"), scontext);
+          exit (1);
+           }
+      } else 
+        fprintf(stderr, "Warning: -Z (--context) ignored. Requires an SELinux enabled kernel\n");
+      break;
 #endif /*WITH_SELINUX*/
-      case '?':
-        /* Signal names are in uppercase, so check to see if the argv
-         * is upper case */
-        if (argv[optind-1][1] >= 'A' && argv[optind-1][1] <= 'Z') {
-             sig_num = get_signal (argv[optind-1]+1, "killall");
+    case '?':
+      /* Signal names are in uppercase, so check to see if the argv
+       * is upper case */
+      if (argv[optind-1][1] >= 'A' && argv[optind-1][1] <= 'Z') {
+           sig_num = get_signal (argv[optind-1]+1, "killall");
+      } else {
+        /* Might also be a -## signal too */
+        if (argv[optind-1][1] >= '0' && argv[optind-1][1] <= '9') {
+          sig_num = atoi(argv[optind-1]+1);
         } else {
-          /* Might also be a -## signal too */
-          if (argv[optind-1][1] >= '0' && argv[optind-1][1] <= '9') {
-            sig_num = atoi(argv[optind-1]+1);
-          } else {
-            usage();
-          }
+          usage(NULL);
         }
-        break;
+      }
+      break;
     }
   }
   myoptind = optind;
@@ -708,18 +824,18 @@ main (int argc, char **argv)
 #else
   if ((argc - myoptind < 1) && pwent==NULL)      
 #endif
-    usage();
+    usage(NULL);
 
-  if (argc - myoptind > MAX_NAMES + 1)
-    {
-      fprintf (stderr, _("Maximum number of names is %d\n"), MAX_NAMES);
-      exit (1);
-    }
-  if (stat("/proc/self/stat", &isproc)==-1)
-    {
-      fprintf (stderr, _("%s is empty (not mounted ?)\n"), PROC_BASE);
-      exit (1);
-    }
+  if (argc - myoptind > MAX_NAMES) {
+    fprintf (stderr, _("killall: Maximum number of names is %d\n"),
+          MAX_NAMES);
+    exit (1);
+  }
+  if (!have_proc_self_stat()) {
+    fprintf (stderr, _("killall: %s lacks process entries (not mounted ?)\n"),
+               PROC_BASE);
+    exit (1);
+  }
   argv = argv + myoptind;
   /*printf("sending signal %d to procs\n", sig_num);*/
 #ifdef WITH_SELINUX
diff --git a/src/lists.h b/src/lists.h
new file mode 100644 (file)
index 0000000..ae8929e
--- /dev/null
@@ -0,0 +1,249 @@
+/*
+ * lists.h     Simple doubly linked list implementation,
+ *             based on <linux/list.h> and <linux/prefetch.h>.
+ *
+ * Version:    0.1 01-Feb-2011 Fink
+ *
+ * Copyright 2011 Werner Fink, 2005 SUSE LINUX Products GmbH, Germany.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Author:     Werner Fink <werner@suse.de>, 2011
+ */
+
+#ifndef _LISTS_H
+#define _LISTS_H
+
+#include <stddef.h>
+#include <sys/types.h>
+
+typedef enum _boolean {false, true} boolean;
+typedef unsigned char uchar;
+#ifndef __USE_MISC
+typedef unsigned short ushort;
+typedef unsigned int uint;
+#endif
+
+#ifndef __OPTIMIZE__
+# warning This will not compile without -O at least
+#endif
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
+# ifndef  inline
+#  define inline               __inline__
+# endif
+# ifndef  restrict
+#  define restrict             __restrict__
+# endif
+# ifndef  volatile
+#  define volatile             __volatile__
+# endif
+# ifndef  asm
+#  define asm                  __asm__
+# endif
+# ifndef  extension
+#  define extension            __extension__
+# endif
+#endif
+#ifndef  attribute
+# define attribute(attr)       __attribute__(attr)
+#endif
+
+/*
+ * This is lent from the kernel by e.g. using
+ *
+ *   echo '#include <asm-i386/processor.h>\nint main () { prefetch(); return 0; }' | \
+ *     gcc -I/usr/src/linux/include -D__KERNEL__ -x c -E -P - | \
+ *     sed -rn '/void[[:blank:]]+prefetch[[:blank:]]*\(/,/^}/p'
+ *
+ * on the appropriate architecture (here on i686 for i586).
+ */
+extern inline void attribute((used,__gnu_inline__,always_inline,__artificial__)) prefetch(const void *restrict x)
+{
+#if   defined(__x86_64__)
+    asm volatile ("prefetcht0 %0"  :: "m" (*(unsigned long *)x))
+#elif defined(__ia64__)
+    asm volatile ("lfetch [%0]"    :: "r" (x))
+#elif defined(__powerpc64__)
+    asm volatile ("dcbt 0,%0"      :: "r" (x))
+#elif !defined(__CYGWIN__) && !defined(__PIC__) && defined(__i386__)
+    asm volatile ("661:\n\t"
+                 ".byte 0x8d,0x74,0x26,0x00\n"
+                 "\n662:\n"
+                 ".section .altinstructions,\"a\"\n"
+                 "  .align 4\n"
+                 "  .long 661b\n"
+                 "  .long 663f\n"
+                 "  .byte %c0\n"
+                 "  .byte 662b-661b\n"
+                 "  .byte 664f-663f\n"
+                 ".previous\n"
+                 ".section .altinstr_replacement,\"ax\"\n"
+                 "   663:\n\t"
+                 "   prefetchnta (%1)"
+                 "   \n664:\n"
+                 ".previous"
+                 :: "i" ((0*32+25)), "r" (x))
+#else
+    __builtin_prefetch ((x), 0, 1);
+#endif
+    ;
+}
+
+#if defined(DEBUG) && (DEBUG > 0)
+# define __align attribute((packed))
+#else
+# define __align attribute((aligned(sizeof(struct list_struct*))))
+#endif
+#define __packed attribute((packed))
+
+#define alignof(type)          ((sizeof(type)+(sizeof(void*)-1)) & ~(sizeof(void*)-1))
+#define strsize(string)                ((strlen(string)+1)*sizeof(char))
+
+typedef struct list_struct {
+    struct list_struct * next, * prev;
+} __align list_t;
+
+/*
+ * Linked list handling
+ * ====================
+ * The structures which will be linked into such lists have to be of the
+ * same type.  The structures may have alway a list identifier of the type
+ * `list_t' as very first element.  With this the macro list_entry() can
+ * be used to cast the memory address of a list member to the corresponding
+ * allocated structure.
+ */
+
+/*
+ * Insert new entry as next member.
+ */
+static inline void _insert(list_t *restrict new, list_t *restrict here) attribute((always_inline,nonnull(1,2)));
+static inline void _insert(list_t *restrict new, list_t *restrict here)
+{
+    list_t * prev = here;
+    list_t * next = here->next;
+
+    next->prev = new;
+    new->next = next;
+    new->prev = prev;
+    prev->next = new;
+}
+
+#define insert(new, list)      _insert(&((new)->this), (&(list)));
+#define append(new, list)      _insert(&((new)->this), (&(list))->prev);
+
+/*
+ * Set head
+ */
+static inline void initial(list_t *restrict head) attribute((always_inline,nonnull(1)));
+static inline void initial(list_t *restrict head)
+{
+    head->prev = head->next = head;
+}
+
+/*
+ * Remove entries, note that the pointer its self remains.
+ */
+static inline void delete(list_t *restrict entry) attribute((always_inline,nonnull(1)));
+static inline void delete(list_t *restrict entry)
+{
+    list_t * prev = entry->prev;
+    list_t * next = entry->next;
+
+    next->prev = prev;
+    prev->next = next;
+
+    initial(entry);
+}
+
+/*
+ * Replace an entry by a new one.
+ */
+static inline void replace(list_t *restrict old, list_t *restrict new) attribute((always_inline,nonnull(1,2)));
+static inline void replace(list_t *restrict old, list_t *restrict new)
+{
+    new->next = old->next;
+    new->next->prev = new;
+    new->prev = old->prev;
+    new->prev->next = new;
+}
+
+static inline void join(list_t *restrict list, list_t *restrict head) attribute((always_inline,nonnull(1,2)));
+static inline void join(list_t *restrict list, list_t *restrict head)
+{
+    list_t * first = list->next;
+
+    if (first != list) {
+       list_t * last = list->prev;
+               list_t * at = head->next;
+
+               first->prev = head;
+               head->next = first;
+
+               last->next = at;
+               at->prev = last;
+    }
+}
+
+static inline boolean list_empty(const list_t *restrict const head) attribute((always_inline,nonnull(1)));
+static inline boolean list_empty(const list_t *restrict const head)
+{
+     return head->next == head;
+}
+
+static inline void move_head(list_t *restrict entry, list_t *restrict head) attribute((always_inline,nonnull(1,2)));
+static inline void move_head(list_t *restrict entry, list_t *restrict head)
+{
+    list_t * prev = entry->prev;
+    list_t * next = entry->next;
+
+    next->prev = prev;         /* remove entry from old list */
+    prev->next = next;
+
+    prev = head;
+    next = head->next;
+
+    next->prev = entry;                /* and add it at head of new list */
+    entry->next = next;
+    entry->prev = prev;
+    prev->next = entry;
+}
+
+static inline void move_tail(list_t *restrict entry, list_t *restrict head) attribute((always_inline,nonnull(1,2)));
+static inline void move_tail(list_t *restrict entry, list_t *restrict head)
+{
+    list_t * prev = entry->prev;
+    list_t * next = entry->next;
+
+    next->prev = prev;         /* remove entry from old list */
+    prev->next = next;
+
+    prev = head->prev;
+    next = head;
+
+    next->prev = entry;                /* and add it at tail of new list */
+    entry->next = next;
+    entry->prev = prev;
+    prev->next = entry;
+}
+
+/*
+ * The handle of the list is named `this'
+ */
+#define list_entry(ptr, type)  (__extension__ ({       \
+       const typeof( ((type *)0)->this ) *__mptr = (ptr);      \
+       ((type *)( (char *)(__mptr) - offsetof(type,this) )); }))
+#define list_for_each(pos, head)       \
+       for (pos = (head)->next; prefetch(pos->next), pos != (head); pos = pos->next)
+#define np_list_for_each(pos, head)    \
+       for (pos = (head)->next; pos != (head); pos = pos->next)
+#define list_for_each_safe(pos, safe, head)    \
+       for (pos = (head)->next, safe = pos->next; pos != (head); pos = safe, safe = pos->next)
+#define list_for_each_prev(pos, head)  \
+       for (pos = (head)->prev; prefetch(pos->prev), pos != (head); pos = pos->prev)
+#define np_list_for_each_prev(pos, head)       \
+       for (pos = (head)->prev; pos != (head); pos = pos->prev)
+
+#endif /* _LISTS_H */
index 4c3a570..c4a3474 100644 (file)
@@ -27,6 +27,7 @@
 #include <sys/types.h>
 #include <sys/wait.h>
 #include <sys/syscall.h>
+#include <asm/ptrace.h>
 #include <byteswap.h>
 #include <endian.h>
 #include <sys/user.h>
 #ifndef PT_ORIG_R3
        #define PT_ORIG_R3 34
 #endif
+#elif defined(ARM)
+#ifndef __ARM_EABI__
+#error arm oabi not supported
+#endif
+       #define REG_ORIG_ACCUM ARM_r7
+       #define REG_ACCUM ARM_r0
+       #define REG_PARAM1 ARM_ORIG_r0
+       #define REG_PARAM2 ARM_r1
+       #define REG_PARAM3 ARM_r2
+#elif defined(MIPS)
+#ifndef MIPSEL
+#error only little endian supported
+#endif
+       #define REG_ORIG_ACCUM regs[3]
+       #define REG_ACCUM regs[2]
+       #define REG_PARAM1 regs[4]
+       #define REG_PARAM2 regs[5]
+       #define REG_PARAM3 regs[6]
 #endif
 
 #define MAX_ATTACHED_PIDS 1024
@@ -70,7 +89,9 @@ void detach(void) {
 }
 
 void attach(pid_t pid) {
-       attached_pids[0] = pid;
+       if (num_attached_pids >= MAX_ATTACHED_PIDS)
+               return;
+       attached_pids[num_attached_pids] = pid;
        if (ptrace(PTRACE_ATTACH, pid, 0, 0) == -1) {
                fprintf(stderr, _("Error attaching to pid %i\n"), pid);
                return;
@@ -103,7 +124,7 @@ void usage() {
          "  Press CTRL-C to end output.\n"));
 }
 
-int bufdiff(int pid, unsigned char *lastbuf, unsigned int addr, unsigned int len) {
+int bufdiff(pid_t pid, unsigned char *lastbuf, unsigned int addr, unsigned int len) {
        int i;
        for (i = 0; i < len; i++)
                if (lastbuf[i] != (ptrace(PTRACE_PEEKTEXT, pid, addr + i, 0) & 0xff))
@@ -126,7 +147,7 @@ int main(int argc, char **argv)
     struct option options[] = {
       {"eight-bit-clean", 0, NULL, '8'},
       {"no-headers", 0, NULL, 'n'},
-      {"follow", 0, NULL, 'f'},
+      {"follow", 0, NULL, 'c'},
       {"duplicates-removed", 0, NULL, 'd'},
       {"help", 0, NULL, 'h'},
       {"version", 0, NULL, 'V'},
@@ -178,7 +199,7 @@ int main(int argc, char **argv)
       numfds = argc - optind;
       fds = malloc(sizeof(int) * numfds);
          for (i = 0; i < numfds; i++)
-               fds[i] = atoi(argv[optind + 1 + i]);
+               fds[i] = atoi(argv[optind + i]);
     }
 
        attach(target_pid);
@@ -197,15 +218,26 @@ int main(int argc, char **argv)
 
        for(;;) {
                int status;
-               int pid = wait(&status);
+               pid_t pid = wait(&status);
                if (WIFSTOPPED(status)) {
 #ifdef PPC
                        struct pt_regs regs;
-                       regs.gpr[0] = ptrace(PTRACE_PEEKUSER, pid, 4 * PT_R0, 0);
-                       regs.gpr[3] = ptrace(PTRACE_PEEKUSER, pid, 4 * PT_R3, 0);
-                       regs.gpr[4] = ptrace(PTRACE_PEEKUSER, pid, 4 * PT_R4, 0);
-                       regs.gpr[5] = ptrace(PTRACE_PEEKUSER, pid, 4 * PT_R5, 0);
-                       regs.orig_gpr3 = ptrace(PTRACE_PEEKUSER, pid, 4 * PT_ORIG_R3, 0);
+                       regs.gpr[0] = ptrace(PTRACE_PEEKUSER, pid, __WORDSIZE/8 * PT_R0, 0);
+                       regs.gpr[3] = ptrace(PTRACE_PEEKUSER, pid, __WORDSIZE/8 * PT_R3, 0);
+                       regs.gpr[4] = ptrace(PTRACE_PEEKUSER, pid, __WORDSIZE/8 * PT_R4, 0);
+                       regs.gpr[5] = ptrace(PTRACE_PEEKUSER, pid, __WORDSIZE/8 * PT_R5, 0);
+                       regs.orig_gpr3 = ptrace(PTRACE_PEEKUSER, pid, __WORDSIZE/8 * PT_ORIG_R3, 0);
+#elif defined(ARM)
+                       struct pt_regs regs;
+                       ptrace(PTRACE_GETREGS, pid, 0, &regs);
+#elif defined(MIPS)
+                       struct pt_regs regs;
+                       long pc = ptrace(PTRACE_PEEKUSER, pid, 64, 0);
+                       regs.regs[2] = ptrace(PTRACE_PEEKUSER,pid,2,0);
+                       regs.regs[3] = ptrace(PTRACE_PEEKTEXT, pid, pc - 8, 0) & 0xffff;
+                       regs.regs[4] = ptrace(PTRACE_PEEKUSER,pid,4,0);
+                       regs.regs[5] = ptrace(PTRACE_PEEKUSER,pid,5,0);
+                       regs.regs[6] = ptrace(PTRACE_PEEKUSER,pid,6,0);
 #else
                        struct user_regs_struct regs;
                        ptrace(PTRACE_GETREGS, pid, 0, &regs);
@@ -239,7 +271,11 @@ int main(int argc, char **argv)
 
                                                for (i = 0; i < regs.REG_PARAM3; i++) {
 #ifdef _BIG_ENDIAN
+#if __WORDSIZE == 64
+                                                       unsigned int a = bswap_64(ptrace(PTRACE_PEEKTEXT, pid, regs.REG_PARAM2 + i, 0));
+#else
                                                        unsigned int a = bswap_32(ptrace(PTRACE_PEEKTEXT, pid, regs.REG_PARAM2 + i, 0));
+#endif
 #else
                                                        unsigned int a = ptrace(PTRACE_PEEKTEXT, pid, regs.REG_PARAM2 + i, 0);
 #endif
diff --git a/src/prtstat.c b/src/prtstat.c
new file mode 100644 (file)
index 0000000..7ed2bee
--- /dev/null
@@ -0,0 +1,331 @@
+/*
+ * prtstat.c - Print a processes stat file
+ *
+ * Copyright (C) 2009 Craig Small
+ * Based upon a shell script pstat by martin f. krafft <madduck@madduck.net>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+#ifndef _GNU_SOURCE
+#define _GNU_SOURCE
+#endif
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <assert.h>
+#include <errno.h>
+#include <getopt.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "i18n.h"
+#include "prtstat.h"
+
+#define NORETURN __attribute__((__noreturn__))
+
+static long sc_clk_tck;
+
+static void usage(const char *errormsg) NORETURN;
+
+static void usage(const char *errormsg)
+{
+  if (errormsg != NULL)
+       fprintf(stderr, "%s\n", errormsg);
+  fprintf(stderr,
+         _
+         ("Usage: prtstat [options] PID ...\n"
+          "       prtstat -V\n"
+          "Print information about a process\n"
+          "    -r,--raw       Raw display of information\n"
+          "    -V,--version   Display version information and exit\n"
+         ));
+  exit(1);
+}
+
+static void print_version(void)
+{
+  fprintf(stderr, _("prtstat (PSmisc) %s\n"), VERSION);
+  fprintf(stderr, _( "Copyright (C) 2009 Craig Small\n\n"));
+  fprintf(stderr, _(
+               "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+               "This is free software, and you are welcome to redistribute it under\n"
+               "the terms of the GNU General Public License.\n"
+               "For more information about these matters, see the files named COPYING.\n"));
+}
+
+static char *print_state(const char state)
+{
+  switch(state) {
+       case 'R':
+         return _("running");
+       case 'S':
+         return _("sleeping");
+       case 'D':
+         return _("disk sleep");
+       case 'Z':
+         return _("zombie");
+       case 'T':
+         return _("traced");
+       case 'W':
+         return _("paging");
+  }
+  return _("unknown");
+}
+
+#define RAW_STAT(afmt,aname, aval, bfmt, bname, bval) \
+  printf("%12.11s: %-15"afmt"\t%22.21s: %"bfmt"\n",(aname),(aval),(bname),(bval))
+
+static double convert_time(const unsigned long ticks)
+{
+  assert(sc_clk_tck > 0);
+  return (float)ticks / (float)sc_clk_tck;
+}
+
+static void convert_bytes(char *buf, unsigned long bytes)
+{
+  if (bytes > (10000000))
+       sprintf(buf, "%lu MB",bytes/1000000L);
+  else if (bytes > (10000))
+       sprintf(buf, "%lu kB", bytes/1000L);
+  else
+       sprintf(buf, "%lu B", bytes);
+}
+
+/* comes from SCHED_* from linux/sched.h */
+static char *convert_policy(const unsigned int policy)
+{
+  static char *policy_names[] = { "normal", "fifo","rr", "batch", "iso", "idle" };
+  if (policy < 6)
+       return policy_names[policy];
+  return "unknown";
+}
+
+/* minor is bits 31-20 and 7-0, major is 15-8 */
+static char *convert_tty(int tty_nr)
+{
+  static char buf[20];
+  sprintf(buf, "%d:%d",(tty_nr & 0xff00)>>8,(tty_nr & 0xff)|((tty_nr & 0xfff00000)>>20));
+  return buf;
+}
+
+
+static void print_raw_stat(const int pid,struct proc_info *pr)
+{
+  RAW_STAT("d","pid",pid,"s","comm",pr->comm);
+  RAW_STAT("c","state",pr->state, "d","ppid",pr->ppid);
+  RAW_STAT("d","pgrp",pr->pgrp, "d","session",pr->session);
+  RAW_STAT("d","tty_nr",pr->tty_nr, "d","tpgid",pr->tp_gid);
+  RAW_STAT("x","flags",pr->flags, "lu","minflt",pr->minflt);
+  RAW_STAT("lu","cminflt",pr->cminflt, "lu","majflt",pr->majflt);
+  RAW_STAT("lu","cmajflt",pr->cmajflt, "lu","utime",pr->utime);
+  RAW_STAT("lu","stime",pr->stime, "ld","cutime",pr->cutime);
+  RAW_STAT("ld","cstime",pr->cstime, "ld","priority",pr->priority);
+  RAW_STAT("ld","nice",pr->nice, "ld","num_threads",pr->num_threads);
+  RAW_STAT("ld","itrealvalue",pr->itrealvalue, "llu","starttime",pr->starttime);
+  RAW_STAT("lu","vsize",pr->vsize, "ld","rss",pr->rss);
+  RAW_STAT("lu","rsslim",pr->rsslim, "lu","startcode",pr->startcode);
+  RAW_STAT("lu","endcode",pr->endcode, "lu","startstack",pr->startstack);
+  RAW_STAT("lX","kstkesp",pr->kstesp, "lX","kstkeip",pr->ksteip);
+  RAW_STAT("lu","wchan",pr->wchan, "lu","nswap",pr->nswap);
+  RAW_STAT("lu","cnswap",pr->wchan, "d","exit_signal",pr->exit_signal);
+  RAW_STAT("d","processor",pr->processor, "u","rt_priority",pr->rt_priority);
+  RAW_STAT("u","policy",pr->policy, "llu","delayaccr_blkio_ticks",pr->blkio);
+  RAW_STAT("lu","guest_time",pr->guest_time, "ld","cguest_time",pr->cguest_time);
+}
+static void print_formated_stat(const int pid,struct proc_info *pr)
+{
+  char buf_vsize[100];
+  char buf_rss[100];
+  char buf_rsslim[100];
+  long page_size;
+
+  page_size = sysconf(_SC_PAGESIZE);
+  assert(page_size>1);
+
+  printf(_(
+               "Process: %-14s\t\tState: %c (%s)\n"
+               "  CPU#:  %-3d\t\tTTY: %s\tThreads: %ld\n"),
+         pr->comm, pr->state, print_state(pr->state),
+         pr->processor, convert_tty(pr->tty_nr), pr->num_threads);
+  printf(_(
+               "Process, Group and Session IDs\n"
+               "  Process ID: %d\t\t  Parent ID: %d\n"
+               "    Group ID: %d\t\t Session ID: %d\n"
+           "  T Group ID: %d\n\n"),
+         pid, pr->ppid, pr->pgrp, pr->session, pr->tp_gid);
+  printf(_(
+               "Page Faults\n"
+               "  This Process    (minor major): %8lu  %8lu\n"
+               "  Child Processes (minor major): %8lu  %8lu\n"),
+         pr->minflt, pr->majflt, pr->cminflt, pr->cmajflt);
+  printf(_(
+               "CPU Times\n"
+               "  This Process    (user system guest blkio): %6.2f %6.2f %6.2f %6.2f\n"
+               "  Child processes (user system guest):       %6.2f %6.2f %6.2f\n"),
+         convert_time(pr->utime), convert_time(pr->stime), convert_time(pr->guest_time), convert_time(pr->blkio),
+         convert_time(pr->cutime), convert_time(pr->cstime), convert_time(pr->cguest_time));
+  convert_bytes(buf_vsize, pr->vsize);
+  convert_bytes(buf_rss, pr->rss*page_size);
+  convert_bytes(buf_rsslim, pr->rsslim);
+  printf(_(
+               "Memory\n"
+               "  Vsize:       %-10s\n"
+               "  RSS:         %-10s \t\t RSS Limit: %s\n"
+               "  Code Start:  %#-10lx\t\t Code Stop:  %#-10lx\n"
+               "  Stack Start: %#-10lx\n"
+               "  Stack Pointer (ESP): %#10lx\t Inst Pointer (EIP): %#10lx\n"),
+         buf_vsize, buf_rss, buf_rsslim,
+         pr->startcode, pr->endcode, 
+         pr->startstack, pr->kstesp, pr->ksteip);
+  printf(_(
+               "Scheduling\n"
+               "  Policy: %s\n"
+               "  Nice:   %ld \t\t RT Priority: %ld %s\n"),
+         convert_policy(pr->policy),
+         pr->nice, (pr->priority>0?pr->priority-20:1-pr->priority),
+         (pr->priority>0?"(non RT)":""));
+
+
+
+
+}
+static void print_stat(const int pid, const opt_type options)
+{
+  char *pathname;
+  char buf[BUFSIZ];
+  char *bptr;
+  FILE *fp;
+
+  struct proc_info *pr;
+  pr = malloc(sizeof(struct proc_info));
+
+  if ( (asprintf(&pathname, "/proc/%d/stat",(int)pid)) < 0) {
+       perror(_("asprintf in print_stat failed.\n"));
+       exit(1);
+  }
+  if ( (fp = fopen(pathname,"r")) == NULL) {
+       if (errno == ENOENT) 
+         fprintf(stderr, _("Process with pid %d does not exist.\n"), pid);
+       else
+         fprintf(stderr, _("Unable to open stat file for pid %d (%s)\n"),(int)pid,strerror(errno));
+       free(pathname);
+       return;
+  }
+  free(pathname);
+
+  if (fgets(buf,BUFSIZ,fp) == NULL) return;
+  bptr = strchr(buf, '(');
+  if (bptr == NULL) return;
+  bptr++;
+  sscanf(bptr,
+         "%a[^)]) "
+         "%c "
+         "%d %d %d %d %d %d"
+         "%lu %lu %lu %lu " /*flts*/
+         "%lu %lu %lu %lu " /*times */
+         "%ld %ld %ld %ld " /* nice, priority, threads, itreal*/
+         "%llu " /*startime*/
+         "%lu %ld %lu " /* vsize, rss, rslim */
+         "%lu %lu %lu " /* startcode endcode startstack */
+         "%lu %lu " /* stack and ip */
+         "%*s %*s %*s %*s " /* signals - ignore as they are obsolete */
+         "%lu %lu %lu " /* wchan nswap cnswap */
+      "%d %d %u"
+         "%u %llu " /* policy blkio */
+         "%lu %lu ", /* guest time cguest time */
+          &pr->comm,
+          &pr->state,
+          &pr->ppid, &pr->pgrp, &pr->session, &pr->tty_nr, &pr->tp_gid, &pr->flags,
+          &pr->minflt, &pr->cminflt, &pr->majflt, &pr->cmajflt,
+          &pr->utime, &pr->stime, &pr->cutime, &pr->cstime,
+          &pr->priority, &pr->nice, &pr->num_threads, &pr->itrealvalue,
+          &pr->starttime,
+          &pr->vsize, &pr->rss, &pr->rsslim,
+          &pr->startcode, &pr->endcode, &pr->startstack,
+          &pr->kstesp, &pr->ksteip,
+          &pr->wchan, &pr->nswap, &pr->cnswap,
+          &pr->exit_signal, &pr->processor, &pr->rt_priority,
+          &pr->policy, &pr->blkio, 
+          &pr->guest_time, &pr->cguest_time
+                );
+  if (options & OPT_RAW) {
+       print_raw_stat(pid, pr);
+       return;
+  }
+  print_formated_stat(pid, pr);
+
+
+}
+
+int main(int argc, char *argv[])
+{
+  int optc;
+  struct stat st;
+  int pptr;
+  int pid;
+  opt_type opt_flags = 0;
+
+  struct option options[] = {
+       {"raw"          ,0, NULL, 'r' },
+       {"version", 0, NULL, 'V'},
+       { 0, 0, 0, 0}
+  };
+
+#ifdef ENABLE_NLS
+  /* Set up the i18n */
+  setlocale(LC_ALL, "");
+  bindtextdomain(PACKAGE, LOCALEDIR);
+  textdomain(PACKAGE);
+#endif
+
+  while ((optc = getopt_long(argc, argv, "rV", options, NULL)) != -1) {
+       switch(optc) {
+         case 'r':
+               opt_flags |= OPT_RAW;
+               break;
+         case 'V':
+               print_version();
+               return 0;
+         case '?':
+               usage(_("Invalid option"));
+               break;
+       }
+  } /* while */
+  if (argc <= optind)
+       usage(_("You must provide at least one PID."));
+
+  if (stat("/proc/self/stat", &st) == -1)
+  {
+       fprintf(stderr, _("/proc is not mounted, cannot stat /proc/self/stat.\n"));
+       exit(1);
+  }
+  sc_clk_tck = sysconf(_SC_CLK_TCK);
+  for(pptr = optind; pptr < argc; pptr++)
+  {
+       pid = atoi(argv[pptr]);
+       print_stat(pid, opt_flags);
+  }
+
+  return 0;
+}
+
+
+
diff --git a/src/prtstat.h b/src/prtstat.h
new file mode 100644 (file)
index 0000000..64c724f
--- /dev/null
@@ -0,0 +1,21 @@
+
+typedef unsigned char opt_type;
+#define OPT_RAW 1
+
+struct proc_info
+{
+  char *comm;
+  char state;
+  int ppid, pgrp, session, tty_nr, tp_gid,
+         exit_signal, processor;
+  unsigned int flags, rt_priority, policy;
+  unsigned long minflt, cminflt, majflt, cmajflt,
+                               utime, stime, vsize, rsslim,
+                               startcode, endcode, startstack,
+                               kstesp, ksteip,
+                               wchan, nswap, cnswap, guest_time;
+  long cutime, cstime, priority, nice, num_threads,
+          itrealvalue, rss, cguest_time;
+  unsigned long long starttime, blkio;
+};
+
index a85c7bc..db57244 100644 (file)
@@ -2,7 +2,7 @@
  * pstree.c - display process tree
  *
  * Copyright (C) 1993-2002 Werner Almesberger
- * Copyright (C) 2002-2005 Craig Small
+ * Copyright (C) 2002-2012 Craig Small
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -37,6 +37,7 @@
 #include <term.h>
 #include <termios.h>
 #include <langinfo.h>
+#include <assert.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <sys/ioctl.h>
 
 #ifdef WITH_SELINUX
 #include <selinux/selinux.h>
-#endif /*WITH_SELINUX*/
+#endif                                /*WITH_SELINUX */
 
 extern const char *__progname;
 
-#ifndef MAX_DEPTH
-#define MAX_DEPTH    100
-#endif
 #define PROC_BASE    "/proc"
 
+#if defined(__FreeBSD_kernel__) || defined(__FreeBSD__)
+#define ROOT_PID 0
+#else
+#define ROOT_PID 1
+#endif /* __FreeBSD__ */
+
 /* UTF-8 defines by Johan Myreen, updated by Ben Winslow */
-#define UTF_V  "\342\224\202"  /* U+2502, Vertical line drawing char */
-#define UTF_VR "\342\224\234"  /* U+251C, Vertical and right */
-#define UTF_H  "\342\224\200"  /* U+2500, Horizontal */
-#define UTF_UR "\342\224\224"  /* U+2514, Up and right */
-#define UTF_HD "\342\224\254"  /* U+252C, Horizontal and down */
-
-#define VT_BEG "\033(0\017"    /* use graphic chars */
-#define VT_END "\033(B"        /* back to normal char set */
-#define VT_V   "x"             /* see UTF definitions above */
-#define VT_VR  "t"
-#define VT_H   "q"
-#define VT_UR  "m"
-#define        VT_HD   "w"
-
-typedef struct _proc
-{
-  char comm[COMM_LEN + 1];
-  char **argv;                 /* only used : argv[0] is 1st arg; undef if argc < 1 */
-  int argc;                    /* with -a   : number of arguments, -1 if swapped    */
-  pid_t pid;
-  uid_t uid;
+#define UTF_V        "\342\224\202"        /* U+2502, Vertical line drawing char */
+#define UTF_VR        "\342\224\234"        /* U+251C, Vertical and right */
+#define UTF_H        "\342\224\200"        /* U+2500, Horizontal */
+#define UTF_UR        "\342\224\224"        /* U+2514, Up and right */
+#define UTF_HD        "\342\224\254"        /* U+252C, Horizontal and down */
+
+#define VT_BEG        "\033(0\017"        /* use graphic chars */
+#define VT_END        "\033(B"        /* back to normal char set */
+#define VT_V        "x"                /* see UTF definitions above */
+#define VT_VR        "t"
+#define VT_H        "q"
+#define VT_UR        "m"
+#define        VT_HD        "w"
+
+typedef struct _proc {
+    char comm[COMM_LEN + 2 + 1]; /* add another 2 for thread brackets */
+    char **argv;                /* only used : argv[0] is 1st arg; undef if argc < 1 */
+    int argc;                        /* with -a   : number of arguments, -1 if swapped    */
+    pid_t pid;
+    pid_t pgid;
+    uid_t uid;
 #ifdef WITH_SELINUX
-  security_context_t scontext;
-#endif /*WITH_SELINUX*/
-  int highlight;
-  struct _child *children;
-  struct _proc *parent;
-  struct _proc *next;
-}
-PROC;
-
-typedef struct _child
-{
-  PROC *child;
-  struct _child *next;
-}
-CHILD;
-
-static struct
-{
-  const char *empty_2;         /*    */
-  const char *branch_2;                /* |- */
-  const char *vert_2;          /* |  */
-  const char *last_2;          /* `- */
-  const char *single_3;                /* --- */
-  const char *first_3;         /* -+- */
-}
-sym_ascii =
-{
+    security_context_t scontext;
+#endif                                /*WITH_SELINUX */
+    char flags;
+    struct _child *children;
+    struct _proc *parent;
+    struct _proc *next;
+} PROC;
+
+/* For flags above */
+#define PFLAG_HILIGHT   0x01
+#define PFLAG_THREAD    0x02
+
+typedef struct _child {
+    PROC *child;
+    struct _child *next;
+} CHILD;
+
+static struct {
+    const char *empty_2;        /*    */
+    const char *branch_2;        /* |- */
+    const char *vert_2;                /* |  */
+    const char *last_2;                /* `- */
+    const char *single_3;        /* --- */
+    const char *first_3;        /* -+- */
+} sym_ascii = {
 "  ", "|-", "| ", "`-", "---", "-+-"}
 
-, sym_utf =
-{
-  "  ",
-    UTF_VR UTF_H,
-
-    UTF_V " ",
-    UTF_UR UTF_H, UTF_H UTF_H UTF_H, UTF_H UTF_HD UTF_H}, sym_vt100 =
-{
-  "  ",
-    VT_BEG VT_VR VT_H VT_END,
-    VT_BEG VT_V VT_END " ",
-    VT_BEG VT_UR VT_H VT_END,
-    VT_BEG VT_H VT_H VT_H VT_END, VT_BEG VT_H VT_HD VT_H VT_END}
+, sym_utf = {
+"  ",
+        UTF_VR UTF_H,
+        UTF_V " ",
+        UTF_UR UTF_H, UTF_H UTF_H UTF_H, UTF_H UTF_HD UTF_H}, sym_vt100 = {
+"  ",
+        VT_BEG VT_VR VT_H VT_END,
+        VT_BEG VT_V VT_END " ",
+        VT_BEG VT_UR VT_H VT_END,
+        VT_BEG VT_H VT_H VT_H VT_END, VT_BEG VT_H VT_HD VT_H VT_END}
 
 , *sym = &sym_ascii;
 
 static PROC *list = NULL;
-static int width[MAX_DEPTH], more[MAX_DEPTH];
-static int print_args = 0, compact = 1, user_change = 0, pids = 0, by_pid = 0,
-  trunc = 1, wait_end = 0;
+
+/* The buffers will be dynamically increased in size as needed. */
+static int capacity = 0;
+static int *width = NULL;
+static int *more = NULL;
+
+static int print_args = 0, compact = 1, user_change = 0, pids = 0, pgids = 0,
+    show_parents = 0, by_pid = 0, trunc = 1, wait_end = 0;
 #ifdef WITH_SELINUX
 static int show_scontext = 0;
-#endif /*WITH_SELINUX*/
+#endif                                /*WITH_SELINUX */
 static int output_width = 132;
 static int cur_x = 1;
 static char last_char = 0;
-static int dumped = 0;         /* used by dump_by_user */
+static int dumped = 0;                /* used by dump_by_user */
+static int charlen = 0;                /* length of character */
 
-
-static void
-out_char (char c)
+static void fix_orphans(void);
+/*
+ * Allocates additional buffer space for width and more as needed.
+ * The first call will allocate the first buffer.
+ *
+ * index  the index that will be used after the call
+ *        to this function.
+ */
+static void ensure_buffer_capacity(int index)
 {
-  cur_x += (c & 0xc0) != 0x80; /* only count first UTF-8 char */
-  if (cur_x <= output_width || !trunc)
-    putchar (c);
-  if (cur_x == output_width + 1 && trunc && ((c & 0xc0) != 0x80))
-  {
-    if (last_char || (c & 0x80))
-      putchar ('+');
-    else
-      {
-       last_char = c;
-       cur_x--;
-       return;
-      }
-  }
+    if (index >= capacity) {
+        if (capacity == 0)
+            capacity = 100;
+        else
+            capacity *= 2;
+        if (!(width = realloc(width, capacity * sizeof(int)))) {
+            perror("realloc");
+            exit(1);
+        }
+        if (!(more = realloc(more, capacity * sizeof(int)))) {
+            perror("realloc");
+            exit(1);
+        }
+    }
 }
 
+/*
+ * Frees any buffers allocated by ensure_buffer_capacity.
+ */
+static void free_buffers()
+{
+    if (width != NULL) {
+        free(width);
+        width = NULL;
+    }
+    if (more != NULL) {
+        free(more);
+        more = NULL;
+    }
+    capacity = 0;
+}
 
-static void
-out_string (const char *str)
+static void out_char(char c)
 {
-  while (*str)
-    out_char (*str++);
+    if (charlen == 0) {                /* "new" character */
+        if ((c & 0x80) == 0) {
+            charlen = 1;        /* ASCII */
+        } else if ((c & 0xe0) == 0xc0) {        /* 110.. 2 bytes */
+            charlen = 2;
+        } else if ((c & 0xf0) == 0xe0) {        /* 1110.. 3 bytes */
+            charlen = 3;
+        } else if ((c & 0xf8) == 0xf0) {        /* 11110.. 4 bytes */
+            charlen = 4;
+        } else {
+            charlen = 1;
+        }
+        cur_x++;                /* count first byte of whatever it is only */
+    }
+    charlen--;
+    if (!trunc || cur_x <= output_width)
+        putchar(c);
+    else {
+        if (trunc && (cur_x == output_width + 1))
+            putchar('+');
+    }
 }
 
 
-static int
-out_int (int x)                        /* non-negative integers only */
+static void out_string(const char *str)
 {
-  int digits, div;
-
-  digits = 0;
-  for (div = 1; x / div; div *= 10)
-    digits++;
-  if (!digits)
-    digits = 1;
-  for (div /= 10; div; div /= 10)
-    out_char ('0' + (x / div) % 10);
-  return digits;
+    while (*str)
+        out_char(*str++);
+}
+
+
+static int out_int(int x)
+{                                /* non-negative integers only */
+    int digits, div;
+
+    digits = 0;
+    for (div = 1; x / div; div *= 10)
+        digits++;
+    if (!digits)
+        digits = 1;
+    for (div /= 10; div; div /= 10)
+        out_char('0' + (x / div) % 10);
+    return digits;
 }
 
 #ifdef WITH_SELINUX
-static void 
-out_scontext ( security_context_t scontext )
+static void out_scontext(security_context_t scontext)
 {
     out_string("`");
     out_string(scontext);
     out_string("'");
 }
-#endif /*WITH_SELINUX*/
-  
+#endif                                /*WITH_SELINUX */
 
-static void
-out_newline (void)
+
+static void out_newline(void)
 {
-  if (last_char && cur_x == output_width)
-    putchar (last_char);
-  last_char = 0;
-  putchar ('\n');
-  cur_x = 1;
+    if (last_char && cur_x == output_width)
+        putchar(last_char);
+    last_char = 0;
+    putchar('\n');
+    cur_x = 1;
 }
 
 
-static PROC *
-find_proc (pid_t pid)
+static PROC *find_proc(pid_t pid)
 {
-  PROC *walk;
+    PROC *walk;
 
-  for (walk = list; walk; walk = walk->next)
-    if (walk->pid == pid)
-      break;
-  return walk;
+    for (walk = list; walk; walk = walk->next)
+        if (walk->pid == pid)
+                 return walk;
+       return NULL;
 }
 
 #ifdef WITH_SELINUX
-static PROC *
-new_proc(const char *comm, pid_t pid, uid_t uid, security_context_t scontext)
-#else  /*WITH_SELINUX*/
-static PROC *
-new_proc (const char *comm, pid_t pid, uid_t uid)
-#endif /*WITH_SELINUX*/
+static PROC *new_proc(const char *comm, pid_t pid, uid_t uid,
+                      security_context_t scontext)
+#else                                /*WITH_SELINUX */
+static PROC *new_proc(const char *comm, pid_t pid, uid_t uid)
+#endif                                /*WITH_SELINUX */
 {
-  PROC *new;
+    PROC *new;
 
-  if (!(new = malloc (sizeof (PROC))))
-    {
-      perror ("malloc");
-      exit (1);
+    if (!(new = malloc(sizeof(PROC)))) {
+        perror("malloc");
+        exit(1);
     }
-  strcpy (new->comm, comm);
-  new->pid = pid;
-  new->uid = uid;
-  new->highlight = 0;
+    strncpy(new->comm, comm, COMM_LEN+2);
+    new->comm[COMM_LEN+1] = '\0';     /* make sure nul terminated*/
+    new->pid = pid;
+    new->uid = uid;
+    new->flags = 0;
+    new->argc = 0;
+    new->argv = NULL;
 #ifdef WITH_SELINUX
-  new->scontext = scontext;
-#endif /*WITH_SELINUX*/
-  new->children = NULL;
-  new->parent = NULL;
-  new->next = list;
-  return list = new;
+    new->scontext = scontext;
+#endif                                /*WITH_SELINUX */
+    new->children = NULL;
+    new->parent = NULL;
+    new->next = list;
+    return list = new;
 }
 
 
-static void
-add_child (PROC * parent, PROC * child)
+static void add_child(PROC * parent, PROC * child)
 {
-  CHILD *new, **walk;
-  int cmp;
+    CHILD *new, **walk;
+    int cmp;
 
-  if (!(new = malloc (sizeof (CHILD))))
-    {
-      perror ("malloc");
-      exit (1);
+    if (!(new = malloc(sizeof(CHILD)))) {
+        perror("malloc");
+        exit(1);
     }
-  new->child = child;
-  for (walk = &parent->children; *walk; walk = &(*walk)->next)
-    if (by_pid)
-      {
-       if ((*walk)->child->pid > child->pid)
-         break;
-      }
-    else if ((cmp = strcmp ((*walk)->child->comm, child->comm)) > 0)
-      break;
-    else if (!cmp && (*walk)->child->uid > child->uid)
-      break;
-  new->next = *walk;
-  *walk = new;
+    new->child = child;
+    for (walk = &parent->children; *walk; walk = &(*walk)->next)
+        if (by_pid) {
+            if ((*walk)->child->pid > child->pid)
+                break;
+        } else if ((cmp = strcmp((*walk)->child->comm, child->comm)) > 0) {
+            break; }
+        else if (!cmp && (*walk)->child->uid > child->uid)
+            break;
+    new->next = *walk;
+    *walk = new;
 }
 
 
-static void
-set_args (PROC * this, const char *args, int size)
+static void set_args(PROC * this, const char *args, int size)
 {
-  char *start;
-  int i;
+    char *start;
+    int i;
 
-  if (!size)
-    {
-      this->argc = -1;
-      return;
+    if (!size) {
+        this->argc = -1;
+        return;
     }
-  this->argc = 0;
-  for (i = 0; i < size - 1; i++)
-    if (!args[i])
-      this->argc++;
-  if (!this->argc)
-    return;
-  if (!(this->argv = malloc (sizeof (char *) * this->argc)))
-    {
-      perror ("malloc");
-      exit (1);
+    this->argc = 0;
+    for (i = 0; i < size - 1; i++)
+        if (!args[i])
+            this->argc++;
+    if (!this->argc)
+        return;
+    if (!(this->argv = malloc(sizeof(char *) * this->argc))) {
+        perror("malloc");
+        exit(1);
     }
-  start = strchr (args, 0) + 1;
-  size -= start - args;
-  if (!(this->argv[0] = malloc ((size_t) size)))
-    {
-      perror ("malloc");
-      exit (1);
+    start = strchr(args, 0) + 1;
+    size -= start - args;
+    if (!(this->argv[0] = malloc((size_t) size))) {
+        perror("malloc");
+        exit(1);
     }
-  start = memcpy (this->argv[0], start, (size_t) size);
-  for (i = 1; i < this->argc; i++)
-    this->argv[i] = start = strchr (start, 0) + 1;
+    start = memcpy(this->argv[0], start, (size_t) size);
+    for (i = 1; i < this->argc; i++)
+        this->argv[i] = start = strchr(start, 0) + 1;
 }
 
+static void
+rename_proc(PROC *this, const char *comm, uid_t uid)
+{
+    PROC *tmp_child, *parent;
+       CHILD **walk;
+
+    strncpy(this->comm, comm, COMM_LEN+2);
+    this->comm[COMM_LEN+1] = '\0';
+    this->uid = uid;
+
+       /* Re-sort children in parent, now we have a name */
+       if (!by_pid && this->parent) {
+           parent = this->parent;
+        for (walk = &parent->children; *walk; walk = &(*walk)->next) {
+                 if ( ((*walk)->next != NULL) && strcmp((*walk)->child->comm, (*walk)->next->child->comm) > 0 ) {
+                       tmp_child = (*walk)->child;
+                       (*walk)->child = (*walk)->next->child;
+                       (*walk)->next->child = tmp_child;
+                 }
+               }
+       }
+}
 #ifdef WITH_SELINUX
 static void
-add_proc(const char *comm, pid_t pid, pid_t ppid, uid_t uid,
-         const char *args, int size, security_context_t scontext)
-#else  /*WITH_SELINUX*/
+add_proc(const char *comm, pid_t pid, pid_t ppid, pid_t pgid, uid_t uid,
+         const char *args, int size, char isthread, security_context_t scontext)
+#else                                /*WITH_SELINUX */
 static void
-add_proc (const char *comm, pid_t pid, pid_t ppid, uid_t uid,
-         const char *args, int size)
-#endif /*WITH_SELINUX*/
+add_proc(const char *comm, pid_t pid, pid_t ppid, pid_t pgid, uid_t uid,
+         const char *args, int size, char isthread)
+#endif                                /*WITH_SELINUX */
 {
-  PROC *this, *parent;
+    PROC *this, *parent;
 
-  if (!(this = find_proc (pid)))
+    if (!(this = find_proc(pid)))
 #ifdef WITH_SELINUX
-    this = new_proc(comm, pid, uid, scontext);
-#else  /*WITH_SELINUX*/
-    this = new_proc (comm, pid, uid);
-#endif /*WITH_SELINUX*/
-  else
-    {
-      strcpy (this->comm, comm);
-      this->uid = uid;
+        this = new_proc(comm, pid, uid, scontext);
+#else                                /*WITH_SELINUX */
+        this = new_proc(comm, pid, uid);
+#endif                                /*WITH_SELINUX */
+    else {
+           rename_proc(this, comm, uid);
     }
-  if (args)
-    set_args (this, args, size);
-  if (pid == ppid)
-    ppid = 0;
-  if (!(parent = find_proc (ppid)))
+    if (args)
+        set_args(this, args, size);
+    if (pid == ppid)
+        ppid = 0;
+    this->pgid = pgid;
+    if (isthread)
+      this->flags |= PFLAG_THREAD;
+    if (!(parent = find_proc(ppid))) {
 #ifdef WITH_SELINUX
-    parent = new_proc("?", ppid, 0, scontext);
-#else  /*WITH_SELINUX*/
-    parent = new_proc ("?", ppid, 0);
-#endif /*WITH_SELINUX*/
-  add_child (parent, this);
-  this->parent = parent;
+        parent = new_proc("?", ppid, 0, scontext);
+#else                                /*WITH_SELINUX */
+        parent = new_proc("?", ppid, 0);
+#endif
+    }
+    if (pid != 0) {
+      add_child(parent, this);
+      this->parent = parent;
+    }
 }
 
 
-static int
-tree_equal (const PROC * a, const PROC * b)
+static int tree_equal(const PROC * a, const PROC * b)
 {
-  const CHILD *walk_a, *walk_b;
-
-  if (strcmp (a->comm, b->comm))
-    return 0;
-  if (user_change && a->uid != b->uid)
-    return 0;
-  for (walk_a = a->children, walk_b = b->children; walk_a && walk_b;
-       walk_a = walk_a->next, walk_b = walk_b->next)
-    if (!tree_equal (walk_a->child, walk_b->child))
-      return 0;
-  return !(walk_a || walk_b);
+    const CHILD *walk_a, *walk_b;
+
+    if (strcmp(a->comm, b->comm))
+        return 0;
+    if (user_change && a->uid != b->uid)
+        return 0;
+    for (walk_a = a->children, walk_b = b->children; walk_a && walk_b;
+         walk_a = walk_a->next, walk_b = walk_b->next)
+        if (!tree_equal(walk_a->child, walk_b->child))
+            return 0;
+    return !(walk_a || walk_b);
 }
 
+static int
+out_args(char *mystr)
+{
+  char *here;
+  int strcount=0;
+  char tmpstr[5];
+
+  for (here = mystr; *here; here++) {
+    if (*here == '\\') {
+      out_string("\\\\");
+      strcount += 2;
+    } else if (*here >= ' ' && *here <= '~') {
+      out_char(*here);
+      strcount++;
+    } else {
+      sprintf(tmpstr, "\\%03o", (unsigned char) *here);
+      out_string(tmpstr);
+      strcount += 4;
+    }
+  } /* for */
+  return strcount;
+}
 
 static void
-dump_tree (PROC * current, int level, int rep, int leaf, int last,
-          uid_t prev_uid, int closing)
+dump_tree(PROC * current, int level, int rep, int leaf, int last,
+          uid_t prev_uid, int closing)
 {
-  CHILD *walk, *next, **scan;
-  const struct passwd *pw;
-  int lvl, i, add, offset, len, swapped, info, count, comm_len, first;
-  const char *tmp, *here;
-  char comm_tmp[5];
-
-  if (!current)
-    return;
-  if (level >= MAX_DEPTH - 1)
-    {
-      fprintf (stderr, _("Internal error: MAX_DEPTH not big enough.\n"));
-      exit (1);
+    CHILD *walk, *next, **scan;
+    const struct passwd *pw;
+    int lvl, i, add, offset, len, swapped, info, count, comm_len, first;
+    const char *tmp, *here;
+
+    assert(closing >= 0);
+    if (!current)
+        return;
+    if (!leaf)
+        for (lvl = 0; lvl < level; lvl++) {
+            for (i = width[lvl] + 1; i; i--)
+                out_char(' ');
+            out_string(lvl ==
+                       level -
+                       1 ? last ? sym->last_2 : sym->branch_2 : more[lvl +
+                                                                     1] ?
+                       sym->vert_2 : sym->empty_2);
+        }
+    if (rep < 2)
+        add = 0;
+    else {
+        add = out_int(rep) + 2;
+        out_string("*[");
     }
-  if (!leaf)
-    for (lvl = 0; lvl < level; lvl++)
-      {
-       for (i = width[lvl] + 1; i; i--)
-         out_char (' ');
-       out_string (lvl == level - 1 ? last ? sym->last_2 : sym->branch_2 :
-                   more[lvl + 1] ? sym->vert_2 : sym->empty_2);
-      }
-  if (rep < 2)
-    add = 0;
-  else
-    {
-      add = out_int (rep) + 2;
-      out_string ("*[");
+    if ((current->flags & PFLAG_HILIGHT) && (tmp = tgetstr("md", NULL)))
+        tputs(tmp, 1, putchar);
+    swapped = info = print_args;
+    if (swapped && current->argc < 0)
+        out_char('(');
+    comm_len = out_args(current->comm);
+    offset = cur_x;
+    if (pids) {
+        out_char(info++ ? ',' : '(');
+        (void) out_int(current->pid);
     }
-  if (current->highlight && (tmp = tgetstr ("md", NULL)))
-    tputs (tmp, 1, putchar);
-  swapped = info = print_args;
-  if (swapped  && current->argc < 0)
-    out_char ('(');  
-  comm_len = 0;
-  for (here = current->comm; *here; here++)
-    if (*here == '\\')
-      {
-       out_string ("\\\\");
-       comm_len += 2;
-      }
-    else if (*here > ' ' && *here <= '~')
-      {
-       out_char (*here);
-       comm_len++;
-      }
-    else
-      {
-       sprintf (comm_tmp, "\\%03o", (unsigned char) *here);
-       out_string (comm_tmp);
-       comm_len += 4;
-      }
-  offset = cur_x;
-  if (pids)
-  {
-    out_char(info++ ? ',' : '(');
-    (void) out_int (current->pid);
-  }
-  if (user_change && prev_uid != current->uid)
-    {
-      out_char (info++ ? ',' : '(');
-      if ((pw = getpwuid (current->uid)))
-       out_string (pw->pw_name);
-      else
-       (void) out_int (current->uid);
+    if (pgids) {
+        out_char(info++ ? ',' : '(');
+        (void) out_int(current->pgid);
+    }
+    if (user_change && prev_uid != current->uid) {
+        out_char(info++ ? ',' : '(');
+        if ((pw = getpwuid(current->uid)))
+            out_string(pw->pw_name);
+        else
+            (void) out_int(current->uid);
     }
 #ifdef WITH_SELINUX
-  if ( show_scontext ) {
-    out_char (info++ ? ',' : '(');
-    out_scontext(current->scontext);
-  }
-#endif /*WITH_SELINUX*/
-  if ((swapped && print_args && current->argc < 0) || (!swapped && info))
-    out_char (')');
-  if (current->highlight && (tmp = tgetstr ("me", NULL)))
-    tputs (tmp, 1, putchar);
-  if (print_args)
-    {
-      for (i = 0; i < current->argc; i++)
-       {
-      if (i < current->argc-1) /* Space between words but not at the end of last */
-           out_char (' '); 
-         len = 0;
-         for (here = current->argv[i]; *here; here++)
-           len += *here > ' ' && *here <= '~' ? 1 : 4;
-         if (cur_x + len <= output_width - (i == current->argc - 1 ? 0 : 4) || !trunc)
-           for (here = current->argv[i]; *here; here++)
-             if (*here > ' ' && *here <= '~')
-               out_char (*here);
-             else
-               {
-                 sprintf (comm_tmp, "\\%03o", (unsigned char) *here);
-                 out_string (comm_tmp);
-               }
-         else
-           {
-             out_string ("...");
-             break;
-           }
-       }
+    if (show_scontext) {
+        out_char(info++ ? ',' : '(');
+        out_scontext(current->scontext);
+    }
+#endif                                /*WITH_SELINUX */
+    if ((swapped && print_args && current->argc < 0) || (!swapped && info))
+        out_char(')');
+    if ((current->flags & PFLAG_HILIGHT) && (tmp = tgetstr("me", NULL)))
+        tputs(tmp, 1, putchar);
+    if (print_args) {
+        for (i = 0; i < current->argc; i++) {
+            if (i < current->argc - 1)        /* Space between words but not at the end of last */
+                out_char(' ');
+            len = 0;
+            for (here = current->argv[i]; *here; here++)
+                len += *here >= ' ' && *here <= '~' ? 1 : 4;
+            if (cur_x + len <=
+                output_width - (i == current->argc - 1 ? 0 : 4) || !trunc)
+              out_args(current->argv[i]);
+            else {
+                out_string("...");
+                break;
+            }
+        }
     }
 #ifdef WITH_SELINUX
-  if ( show_scontext || print_args || ! current->children )
-#else  /*WITH_SELINUX*/
-  if (print_args || !current->children)
-#endif /*WITH_SELINUX*/
+    if (show_scontext || print_args || !current->children)
+#else                                /*WITH_SELINUX */
+    if (print_args || !current->children)
+#endif                                /*WITH_SELINUX */
     {
-      while (closing--)
-       out_char (']');
-      out_newline ();
-#ifdef WITH_SELINUX
-      if ( show_scontext || print_args )
-#else /*WITH_SELINUX*/
-      if (print_args)
-#endif /*WITH_SELINUX*/
-       {
-         more[level] = !last;
-         width[level] = swapped + (comm_len > 1 ? 0 : -1);
-         for (walk = current->children; walk; walk = walk->next)
-           dump_tree (walk->child, level + 1, 1, 0, !walk->next,
-                      current->uid, 0);
-       }
+        while (closing--)
+            out_char(']');
+        out_newline();
     }
-  else
+    ensure_buffer_capacity(level);
+    more[level] = !last;
+
+#ifdef WITH_SELINUX
+    if (show_scontext || print_args)
+#else                                /*WITH_SELINUX */
+    if (print_args)
+#endif                                /*WITH_SELINUX */
     {
-      more[level] = !last;
-      width[level] = comm_len + cur_x - offset + add;
-      if (cur_x >= output_width && trunc)
-       {
-         out_string (sym->first_3);
-         out_string ("+");
-         out_newline ();
-       }
-      else
-       {
-         first = 1;
-         for (walk = current->children; walk; walk = next)
-           {
-             count = 0;
-             next = walk->next;
-             if (compact)
-               {
-                 scan = &walk->next;
-                 while (*scan)
-                   if (!tree_equal (walk->child, (*scan)->child))
-                     scan = &(*scan)->next;
-                   else
-                     {
-                       if (next == *scan)
-                         next = (*scan)->next;
-                       count++;
-                       *scan = (*scan)->next;
-                     }
-               }
-             if (first)
-               {
-                 out_string (next ? sym->first_3 : sym->single_3);
-                 first = 0;
-               }
-             dump_tree (walk->child, level + 1, count + 1,
-                        walk == current->children, !next, current->uid,
-                        closing + (count ? 1 : 0));
-           }
-       }
+        width[level] = swapped + (comm_len > 1 ? 0 : -1);
+        count=0;
+        first=1;
+        for (walk = current->children; walk; walk = next) {
+          next = walk->next;
+          count=0;
+          if (compact && (walk->child->flags & PFLAG_THREAD)) {
+            scan = &walk->next;
+            while (*scan) {
+              if (!tree_equal(walk->child, (*scan)->child)) {
+                scan = &(*scan)->next;
+              } else {
+                if (next == *scan)
+                  next = (*scan)->next;
+                count++;
+                *scan = (*scan)->next;
+              }
+            }
+            dump_tree(walk->child, level + 1, count + 1,
+                  0, !next, current->uid, closing+ (count ? 2 : 1));
+                 //closing + (count ? 1 : 0));
+          } else {
+          dump_tree(walk->child, level + 1, 1, 0, !walk->next,
+                      current->uid, 0);
+          }
+        }
+        return;
+    }
+    width[level] = comm_len + cur_x - offset + add;
+    if (cur_x >= output_width && trunc) {
+        out_string(sym->first_3);
+        out_string("+");
+        out_newline();
+        return;
+    }
+    first = 1;
+    for (walk = current->children; walk; walk = next) {
+        count = 0;
+        next = walk->next;
+        if (compact) {
+            scan = &walk->next;
+            while (*scan)
+                if (!tree_equal(walk->child, (*scan)->child))
+                    scan = &(*scan)->next;
+                else {
+                    if (next == *scan)
+                        next = (*scan)->next;
+                    count++;
+                    *scan = (*scan)->next;
+                }
+        }
+        if (first) {
+            out_string(next ? sym->first_3 : sym->single_3);
+            first = 0;
+        }
+        dump_tree(walk->child, level + 1, count + 1,
+                  walk == current->children, !next, current->uid,
+                  closing + (count ? 1 : 0));
     }
 }
 
 
-static void
-dump_by_user (PROC * current, uid_t uid)
+static void dump_by_user(PROC * current, uid_t uid)
 {
-  const CHILD *walk;
+    const CHILD *walk;
 
+    if (!current)
+        return;
+
+    if (current->uid == uid) {
+        if (dumped)
+            putchar('\n');
+        dump_tree(current, 0, 1, 1, 1, uid, 0);
+        dumped = 1;
+        return;
+    }
+    for (walk = current->children; walk; walk = walk->next)
+        dump_by_user(walk->child, uid);
+}
+
+static void trim_tree_by_parent(PROC * current)
+{
   if (!current)
     return;
 
-  if (current->uid == uid)
-    {
-      if (dumped)
-       putchar ('\n');
-      dump_tree (current, 0, 1, 1, 1, uid, 0);
-      dumped = 1;
-      return;
-    }
-  for (walk = current->children; walk; walk = walk->next)
-    dump_by_user (walk->child, uid);
+  PROC * parent = current->parent;
+
+  if (!parent)
+    return;
+
+  parent->children = NULL;
+  add_child(parent, current);
+  trim_tree_by_parent(parent);
 }
 
 
@@ -553,394 +639,426 @@ dump_by_user (PROC * current, uid_t uid)
  * read_proc now uses a similar method as procps for finding the process
  * name in the /proc filesystem. My thanks to Albert and procps authors.
  */
-static void
-read_proc (void)
+static void read_proc(void)
 {
   DIR *dir;
   struct dirent *de;
   FILE *file;
   struct stat st;
-  char *path, comm[COMM_LEN + 1];
+  char *path, *comm;
   char *buffer;
-  char readbuf[BUFSIZ+1];
-  char *tmpptr;
-  pid_t pid, ppid;
+  size_t buffer_size;
+  char readbuf[BUFSIZ + 1];
+  char *tmpptr, *endptr;
+  pid_t pid, ppid, pgid;
   int fd, size;
   int empty;
 #ifdef WITH_SELINUX
   security_context_t scontext = NULL;
-  int selinux_enabled=is_selinux_enabled()>0;
-#endif /*WITH_SELINUX*/
+  int selinux_enabled = is_selinux_enabled() > 0;
+#endif                /*WITH_SELINUX */
+
+  if (trunc)
+    buffer_size = output_width + 1;
+  else
+    buffer_size = BUFSIZ + 1;
 
   if (!print_args)
     buffer = NULL;
-  else if (!(buffer = malloc ((size_t) (output_width + 1))))
-    {
-      perror ("malloc");
-      exit (1);
-    }
-  if (!(dir = opendir (PROC_BASE)))
-    {
-      perror (PROC_BASE);
-      exit (1);
-    }
+  else if (!(buffer = malloc(buffer_size))) {
+    perror("malloc");
+    exit(1);
+  }
+  if (!(dir = opendir(PROC_BASE))) {
+    perror(PROC_BASE);
+    exit(1);
+  }
   empty = 1;
-  while ((de = readdir (dir)) != NULL)
-    if ((pid = (pid_t) atoi (de->d_name)) != 0)
-      {
-       if (!(path = malloc (strlen (PROC_BASE) + strlen (de->d_name) + 10)))
-         exit (2);
-       sprintf (path, "%s/%d/stat", PROC_BASE, pid);
-       if ((file = fopen (path, "r")) != NULL)
-         {
-           empty = 0;
-           sprintf (path, "%s/%d", PROC_BASE, pid);
+  while ((de = readdir(dir)) != NULL) {
+    pid = (pid_t) strtol(de->d_name, &endptr, 10);
+    if (endptr != de->d_name && endptr[0] == '\0') {
+      if (! (path = malloc(strlen(PROC_BASE) + strlen(de->d_name) + 10)))
+        exit(2);
+      sprintf(path, "%s/%d/stat", PROC_BASE, pid);
+      if ((file = fopen(path, "r")) != NULL) {
+        empty = 0;
+        sprintf(path, "%s/%d", PROC_BASE, pid);
 #ifdef WITH_SELINUX
-           if (selinux_enabled)
-             if (getpidcon(pid,&scontext) < 0)
-               {
-                 perror (path);
-                 exit (1);
-               }
-#endif /*WITH_SELINUX*/
-            if (stat (path, &st) < 0)
-           {
-               perror (path);
-               exit (1);
-             }
-            fread(readbuf, BUFSIZ, 1, file) ;
-            if (ferror(file) == 0) 
-            {
-              memset(comm, '\0', COMM_LEN+1);
-              tmpptr = strrchr(readbuf, ')'); /* find last ) */
-              /* We now have readbuf with pid and cmd, and tmpptr+2
-               * with the rest */
-              /*printf("readbuf: %s\n", readbuf);*/
-              if (sscanf(readbuf, "%*d (%15[^)]", comm) == 1)
-              {
-                /*printf("tmpptr: %s\n", tmpptr+2);*/
-                if (sscanf(tmpptr+2, "%*c %d", &ppid) == 1)
-                {
-/*
-           if (fscanf
-               (file, "%d (%s) %c %d", &dummy, comm, (char *) &dummy,
-                &ppid) == 4)
- */
-               {
-                  DIR *taskdir;
-                  struct dirent *dt;
-                  char *taskpath;
-                  char *threadname;
-                  int thread;
-                  
-                  if (!(taskpath = malloc(strlen(path) + 10))) {
-                     exit (2);
-                  }
-                  sprintf (taskpath, "%s/task", path);
-                  
-                  if ((taskdir=opendir(taskpath))!=0) {
-                     /* if we have this dir, we're on 2.6 */
-                     if (!(threadname = malloc(strlen(comm) + 3))) {
-                        exit (2);
-                     }
-                     sprintf(threadname,"{%s}",comm);
-                     while ((dt = readdir(taskdir)) != NULL) {
-                        if ((thread=atoi(dt->d_name)) !=0) {
-                           if (thread != pid) {
+        if (selinux_enabled)
+          if (getpidcon(pid, &scontext) < 0) {
+            perror(path);
+            exit(1);
+          }
+#endif                /*WITH_SELINUX */
+        if (stat(path, &st) < 0) {
+          perror(path);
+          exit(1);
+        }
+        size = fread(readbuf, 1, BUFSIZ, file);
+        if (ferror(file) == 0) {
+          readbuf[size] = 0;
+          /* commands may have spaces or ) in them.
+           * so don't trust anything from the ( to the last ) */
+          if ((comm = strchr(readbuf, '('))
+            && (tmpptr = strrchr(comm, ')'))) {
+            ++comm;
+            *tmpptr = 0;
+            /* We now have readbuf with pid and cmd, and tmpptr+2
+             * with the rest */
+            /*printf("tmpptr: %s\n", tmpptr+2); */
+            if (sscanf(tmpptr + 2, "%*c %d %d", &ppid, &pgid) == 2) {
+              DIR *taskdir;
+              struct dirent *dt;
+              char *taskpath;
+              char *threadname;
+              int thread;
+
+              if (! (taskpath = malloc(strlen(path) + 10)))
+                exit(2);
+              sprintf(taskpath, "%s/task", path);
+
+              if ((taskdir = opendir(taskpath)) != 0) {
+                /* if we have this dir, we're on 2.6 */
+                if (! (threadname = malloc(COMM_LEN + 2 + 1))) {
+                    exit(2);
+                }
+                sprintf(threadname, "{%.*s}", COMM_LEN, comm);
+                while ((dt = readdir(taskdir)) != NULL) {
+                  if ((thread = atoi(dt->d_name)) != 0) {
+                    if (thread != pid) {
 #ifdef WITH_SELINUX
-                              if (print_args)
-                                add_proc(threadname, thread, pid, st.st_uid, threadname, strlen(threadname)+1, scontext);
-                              else 
-                                add_proc(threadname, thread, pid, st.st_uid, NULL, 0, scontext);
-#else  /*WITH_SELINUX*/
-                              if (print_args)
-                                add_proc(threadname, thread, pid, st.st_uid, threadname, strlen(threadname)+1);
-                              else
-                                add_proc(threadname, thread, pid, st.st_uid, NULL, 0);
-#endif /*WITH_SELINUX*/
-                           }
-                        }
-                     }
-                     free(threadname);
-                     (void) closedir(taskdir);
-                  }
-                  free(taskpath);
-               }
-
-               if (!print_args)
+                      if (print_args)
+                        add_proc(threadname, thread, pid, pgid, st.st_uid, 
+                            threadname, strlen (threadname) + 1, 1,scontext);
+                      else
+                        add_proc(threadname, thread, pid, pgid, st.st_uid, 
+                            NULL, 0, 1, scontext);
+#else                /*WITH_SELINUX */
+                      if (print_args)
+                        add_proc(threadname, thread, pid, pgid, st.st_uid,
+                            threadname, strlen (threadname) + 1, 1);
+                      else
+                        add_proc(threadname, thread, pid, pgid, st.st_uid,
+                            NULL, 0, 1);
+#endif                /*WITH_SELINUX */
+                      }
+                    }
+                  }
+                  free(threadname);
+                  (void) closedir(taskdir);
+                }
+              free(taskpath);
+              if (!print_args)
 #ifdef WITH_SELINUX
-                 add_proc(comm, pid, ppid, st.st_uid, NULL, 0, scontext);
-#else  /*WITH_SELINUX*/
-                 add_proc (comm, pid, ppid, st.st_uid, NULL, 0);
-#endif /*WITH_SELINUX*/
-               else
-                 {
-                   sprintf (path, "%s/%d/cmdline", PROC_BASE, pid);
-                   if ((fd = open (path, O_RDONLY)) < 0)
-                     {
-                       perror (path);
-                       exit (1);
-                     }
-                   if ((size = read (fd, buffer, (size_t) output_width)) < 0)
-                     {
-                       perror (path);
-                       exit (1);
-                     }
-                   (void) close (fd);
-                   if (size)
-                     buffer[size++] = 0;
+                add_proc(comm, pid, ppid, pgid, st.st_uid, NULL, 0, 0, scontext);
+#else                /*WITH_SELINUX */
+                add_proc(comm, pid, ppid, pgid, st.st_uid, NULL, 0, 0);
+#endif                /*WITH_SELINUX */
+              else {
+                sprintf(path, "%s/%d/cmdline", PROC_BASE, pid);
+                if ((fd = open(path, O_RDONLY)) < 0) {
+                  perror(path);
+                  exit(1);
+                }
+                if ((size = read(fd, buffer, buffer_size)) < 0) {
+                  perror(path);
+                  exit(1);
+                }
+                (void) close(fd);
+                /* If we have read the maximum screen length of args, bring it back by one to stop overflow */
+                if (size >= buffer_size)
+                  size--;
+                if (size)
+                  buffer[size++] = 0;
 #ifdef WITH_SELINUX
-                   add_proc(comm, pid, ppid, st.st_uid, buffer, size, scontext);
-#else  /*WITH_SELINUX*/
-                   add_proc (comm, pid, ppid, st.st_uid, buffer, size);
-#endif /*WITH_SELINUX*/
-                 }
-               }
-             }
-           }
-           (void) fclose (file);
-         }
-       free (path);
+                add_proc(comm, pid, ppid, pgid, st.st_uid,
+                     buffer, size, 0, scontext);
+#else                /*WITH_SELINUX */
+                add_proc(comm, pid, ppid, pgid, st.st_uid,
+                     buffer, size, 0);
+#endif                /*WITH_SELINUX */
+              }
+            }
+          }
+        }
+        (void) fclose(file);
       }
-  (void) closedir (dir);
-  if (print_args)
-    free (buffer);
-  if (empty)
-    {
-      fprintf (stderr, _("%s is empty (not mounted ?)\n"), PROC_BASE) ;
-      exit (1);
+      free(path);
     }
+  }
+  (void) closedir(dir);
+  fix_orphans();
+  if (print_args)
+    free(buffer);
+  if (empty) {
+    fprintf(stderr, _("%s is empty (not mounted ?)\n"), PROC_BASE);
+    exit(1);
+  }
 }
 
-
-#if 0
-
-/* Could use output of  ps achlx | awk '{ print $3,$4,$2,$13 }'  */
-
-static void
-read_stdin (void)
+static void fix_orphans(void)
 {
-  char comm[PATH_MAX + 1];
-  char *cmd;
-  int pid, ppid, uid;
+  /* When using kernel 3.3 with hidepid feature enabled on /proc
+   * then we need fake root pid and gather all the orphan processes
+   * that is, processes with no known parent
+   * As we cannot be sure if it is just the root pid or others missing
+   * we gather the lot
+   */
+  PROC *root, *walk;
 
-  while (scanf ("%d %d %d %s\n", &pid, &ppid, &uid, comm) == 4)
-    {
-      if (cmd = strrchr (comm, '/'))
-       cmd++;
-      else
-       cmd = comm;
-      if (*cmd == '-')
-       cmd++;
+  if (!(root = find_proc(ROOT_PID))) {
 #ifdef WITH_SELINUX
-      add_proc(cmd, pid, ppid, uid, NULL, 0, NULL);
-#else  /*WITH_SELINUX*/
-      add_proc (cmd, pid, ppid, uid, NULL, 0);
-#endif /*WITH_SELINUX*/
-    }
-}
-
+    root = new_proc("?", ROOT_PID, 0, scontext);
+#else                                /*WITH_SELINUX */
+    root = new_proc("?", ROOT_PID, 0);
 #endif
+  }
+  for (walk = list; walk; walk = walk->next) {
+       if (walk->pid == 1 || walk->pid == 0)
+         continue;
+       if (walk->parent == NULL) { 
+         add_child(root, walk);
+      walk->parent = root;
+       }
+  }
+}
 
-
-static void
-usage (void)
+static void usage(void)
 {
-  fprintf (stderr, _(
-    "Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -u ]\n"
-    "              [ -A | -G | -U ] [ PID | USER ]\n"
-    "       pstree -V\n"
-    "Display a tree of processes.\n\n"
-    "    -a     show command line arguments\n"
-    "    -A     use ASCII line drawing characters\n"
-    "    -c     don't compact identical subtrees\n"
-    "    -h     highlight current process and its ancestors\n"
-    "    -H PID highlight this process and its ancestors\n"
-    "    -G     use VT100 line drawing characters\n"
-    "    -l     don't truncate long lines\n"
-    "    -n     sort output by PID\n"
-    "    -p     show PIDs; implies -c\n"
-    "    -u     show uid transitions\n"
-    "    -U     use UTF-8 (Unicode) line drawing characters\n"
-    "    -V     display version information\n"));
+    fprintf(stderr,
+            _
+            ("Usage: pstree [ -a ] [ -c ] [ -h | -H PID ] [ -l ] [ -n ] [ -p ] [ -g ] [ -u ]\n"
+             "              [ -A | -G | -U ] [ PID | USER ]\n"
+             "       pstree -V\n" "Display a tree of processes.\n\n"
+             "  -a, --arguments     show command line arguments\n"
+             "  -A, --ascii         use ASCII line drawing characters\n"
+             "  -c, --compact       don't compact identical subtrees\n"
+             "  -h, --highlight-all highlight current process and its ancestors\n"
+             "  -H PID,\n"
+             "  --highlight-pid=PID highlight this process and its ancestors\n"
+             "  -g, --show-pgids    show process group ids; implies -c\n"
+             "  -G, --vt100         use VT100 line drawing characters\n"
+             "  -l, --long          don't truncate long lines\n"
+             "  -n, --numeric-sort  sort output by PID\n"
+             "  -p, --show-pids     show PIDs; implies -c\n"
+             "  -s, --show-parents  show parents of the selected process\n"
+             "  -u, --uid-changes   show uid transitions\n"
+             "  -U, --unicode       use UTF-8 (Unicode) line drawing characters\n"
+             "  -V, --version       display version information\n"));
 #ifdef WITH_SELINUX
-  fprintf (stderr, _(
-    "    -Z     show SELinux security contexts\n"));
-#endif /*WITH_SELINUX*/
-  fprintf (stderr, _(
-    "    PID    start at this PID; default is 1 (init)\n"
-    "    USER   show only trees rooted at processes of this user\n\n"));
-  exit (1);
+    fprintf(stderr,
+            _("  -Z     show         SELinux security contexts\n"));
+#endif                                /*WITH_SELINUX */
+    fprintf(stderr, _("  PID    start at this PID; default is 1 (init)\n"
+                      "  USER   show only trees rooted at processes of this user\n\n"));
+    exit(1);
 }
 
 void print_version()
 {
-  fprintf(stderr, _("pstree (PSmisc) %s\n"), VERSION);
-  fprintf(stderr, _(
-    "Copyright (C) 1993-2005 Werner Almesberger and Craig Small\n\n"));
-  fprintf(stderr, _(
-    "PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
-    "This is free software, and you are welcome to redistribute it under\n"
-    "the terms of the GNU General Public License.\n"
-    "For more information about these matters, see the files named COPYING.\n"));
+    fprintf(stderr, _("pstree (PSmisc) %s\n"), VERSION);
+    fprintf(stderr,
+            _
+            ("Copyright (C) 1993-2009 Werner Almesberger and Craig Small\n\n"));
+    fprintf(stderr,
+            _("PSmisc comes with ABSOLUTELY NO WARRANTY.\n"
+              "This is free software, and you are welcome to redistribute it under\n"
+              "the terms of the GNU General Public License.\n"
+              "For more information about these matters, see the files named COPYING.\n"));
 }
 
 
-int
-main (int argc, char **argv)
+int main(int argc, char **argv)
 {
-  PROC *current;
-  struct winsize winsz;
-  const struct passwd *pw;
-  pid_t pid, highlight;
-  char termcap_area[1024];
-  char *termname;
-  int c;
-
-  if (ioctl (1, TIOCGWINSZ, &winsz) >= 0)
-    if (winsz.ws_col)
-      output_width = winsz.ws_col;
-  pid = 1;
-  highlight = 0;
-  pw = NULL;
-  
+    PROC *current;
+    struct winsize winsz;
+    const struct passwd *pw;
+    pid_t pid, highlight;
+    char termcap_area[1024];
+    char *termname, *endptr;
+    int c, pid_set;
+
+    struct option options[] = {
+        {"arguments", 0, NULL, 'a'},
+        {"ascii", 0, NULL, 'A'},
+        {"compact", 0, NULL, 'c'},
+        {"vt100", 0, NULL, 'G'},
+        {"highlight-all", 0, NULL, 'h'},
+        {"highlight-pid", 1, NULL, 'H'},
+        {"long", 0, NULL, 'l'},
+        {"numeric-sort", 0, NULL, 'n'},
+        {"show-pids", 0, NULL, 'p'},
+        {"show-pgids", 0, NULL, 'g'},
+        {"show-parents", 0, NULL, 's'},
+        {"uid-changes", 0, NULL, 'u'},
+        {"unicode", 0, NULL, 'U'},
+        {"version", 0, NULL, 'V'},
+#ifdef WITH_SELINUX
+        {"security-context", 0, NULL, 'Z'},
+#endif                                /*WITH_SELINUX */
+        { 0, 0, 0, 0 }
+    };
+
+    if (ioctl(1, TIOCGWINSZ, &winsz) >= 0)
+        if (winsz.ws_col)
+            output_width = winsz.ws_col;
+    pid = ROOT_PID;
+    highlight = 0;
+    pw = NULL;
+
 #ifdef ENABLE_NLS
-  setlocale(LC_ALL, "");
-  bindtextdomain(PACKAGE, LOCALEDIR);
-  textdomain(PACKAGE);
+    setlocale(LC_ALL, "");
+    bindtextdomain(PACKAGE, LOCALEDIR);
+    textdomain(PACKAGE);
 #endif
-  
-  if (!strcmp(__progname, "pstree.x11"))
-    wait_end=1;
 
-  /*
-   * Attempt to figure out a good default symbol set.  Will be overriden by
-   * command-line options, if given.
-   */
+    if (!strcmp(__progname, "pstree.x11"))
+        wait_end = 1;
 
-  if (isatty(1) && !strcmp(nl_langinfo(CODESET), "UTF-8")) {
-    /* Use UTF-8 symbols if the locale's character set is UTF-8. */
-    sym = &sym_utf;
-  } else if (isatty (1) && (termname = getenv ("TERM")) && \
-             (strlen (termname) > 0) && \
-             (setupterm (NULL, 1 /* stdout */, NULL) == OK) && \
-             (tigetstr ("acsc") > 0)) {
     /*
-     * Failing that, if TERM is defined, a non-null value, and the terminal
-     * has the VT100 graphics charset, use it.
+     * Attempt to figure out a good default symbol set.  Will be overriden by
+     * command-line options, if given.
      */
-         /* problems with VT100 on some terminals, making this ascci
-          * for now
-          */
-    sym = &sym_ascii;
-  } else {
-    /* Otherwise, fall back to ASCII. */
-    sym = &sym_ascii;
-  }
+
+    if (isatty(1) && !strcmp(nl_langinfo(CODESET), "UTF-8")) {
+        /* Use UTF-8 symbols if the locale's character set is UTF-8. */
+        sym = &sym_utf;
+    } else if (isatty(1) && (termname = getenv("TERM")) &&
+               (strlen(termname) > 0) &&
+               (setupterm(NULL, 1 /* stdout */ , NULL) == OK) &&
+               (tigetstr("acsc") > 0)) {
+        /*
+         * Failing that, if TERM is defined, a non-null value, and the terminal
+         * has the VT100 graphics charset, use it.
+         */
+        /* problems with VT100 on some terminals, making this ascci
+         * for now
+         */
+        sym = &sym_ascii;
+    } else {
+        /* Otherwise, fall back to ASCII. */
+        sym = &sym_ascii;
+    }
 
 #ifdef WITH_SELINUX
-  while ((c = getopt (argc, argv, "aAcGhH:npluUVZ")) != EOF)
-#else  /*WITH_SELINUX*/
-  while ((c = getopt (argc, argv, "aAcGhH:npluUV")) != EOF)
-#endif /*WITH_SELINUX*/
-    switch (c)
-      {
-      case 'a':
-       print_args = 1;
-       break;
-      case 'A':
-       sym = &sym_ascii;
-       break;
-      case 'c':
-       compact = 0;
-       break;
-      case 'G':
-       sym = &sym_vt100;
-       break;
-      case 'h':
-       if (highlight)
-         usage ();
-       if (getenv ("TERM") && tgetent (termcap_area, getenv ("TERM")) > 0)
-         highlight = getpid ();
-       break;
-      case 'H':
-       if (highlight)
-         usage ();
-       if (!getenv ("TERM"))
-         {
-           fprintf (stderr, _("TERM is not set\n"));
-           return 1;
-         }
-       if (tgetent (termcap_area, getenv ("TERM")) <= 0)
-         {
-           fprintf (stderr, _("Can't get terminal capabilities\n"));
-           return 1;
-         }
-       if (!(highlight = atoi (optarg)))
-         usage ();
-       break;
-      case 'l':
-       trunc = 0;
-       break;
-      case 'n':
-       by_pid = 1;
-       break;
-      case 'p':
-       pids = 1;
-       compact = 0;
-       break;
-      case 'u':
-       user_change = 1;
-       break;
-      case 'U':
-       sym = &sym_utf;
-       break;
-      case 'V':
-      print_version();
-       return 0;
+    while ((c =
+            getopt_long(argc, argv, "aAcGhH:npglsuUVZ", options,
+                        NULL)) != -1)
+#else                                /*WITH_SELINUX */
+    while ((c =
+            getopt_long(argc, argv, "aAcGhH:npglsuUV", options, NULL)) != -1)
+#endif                                /*WITH_SELINUX */
+        switch (c) {
+        case 'a':
+            print_args = 1;
+            break;
+        case 'A':
+            sym = &sym_ascii;
+            break;
+        case 'c':
+            compact = 0;
+            break;
+        case 'G':
+            sym = &sym_vt100;
+            break;
+        case 'h':
+            if (highlight)
+                usage();
+            if (getenv("TERM")
+                && tgetent(termcap_area, getenv("TERM")) > 0)
+                highlight = getpid();
+            break;
+        case 'H':
+            if (highlight)
+                usage();
+            if (!getenv("TERM")) {
+                fprintf(stderr, _("TERM is not set\n"));
+                return 1;
+            }
+            if (tgetent(termcap_area, getenv("TERM")) <= 0) {
+                fprintf(stderr, _("Can't get terminal capabilities\n"));
+                return 1;
+            }
+            if (!(highlight = atoi(optarg)))
+                usage();
+            break;
+        case 'l':
+            trunc = 0;
+            break;
+        case 'n':
+            by_pid = 1;
+            break;
+        case 'p':
+            pids = 1;
+            compact = 0;
+            break;
+        case 'g':
+            pgids = 1;
+            compact = 0;
+            break;
+        case 's':
+            show_parents = 1;
+            break;
+        case 'u':
+            user_change = 1;
+            break;
+        case 'U':
+            sym = &sym_utf;
+            break;
+        case 'V':
+            print_version();
+            return 0;
 #ifdef WITH_SELINUX
-      case 'Z':
-       if (is_selinux_enabled()>0)
-         show_scontext = 1;
-       else
-         fprintf(stderr, "Warning: -Z ignored. Requires anx SELinux enabled kernel\n");
-        break;
-#endif /*WITH_SELINUX*/
-      default:
-       usage ();
-      }
-  if (optind == argc - 1) {
-    if (isdigit (*argv[optind]))
-      {
-       if (!(pid = (pid_t) atoi (argv[optind++])))
-         usage ();
-      }
-    else if (!(pw = getpwnam (argv[optind++])))
-      {
-       fprintf (stderr, _("No such user name: %s\n"), argv[optind - 1]);
-       return 1;
-      }
-  }
-  if (optind != argc)
-    usage ();
-  read_proc ();
-  for (current = find_proc (highlight); current; current = current->parent)
-    current->highlight = 1;
-  if (!pw)
-    dump_tree (find_proc (pid), 0, 1, 1, 1, 0, 0);
-  else
-    {
-      dump_by_user (find_proc (1), pw->pw_uid);
-      if (!dumped)
-       {
-         fprintf (stderr, _("No processes found.\n"));
-         return 1;
-       }
+        case 'Z':
+            if (is_selinux_enabled() > 0)
+                show_scontext = 1;
+            else
+                fprintf(stderr,
+                        "Warning: -Z ignored. Requires anx SELinux enabled kernel\n");
+            break;
+#endif                                /*WITH_SELINUX */
+        default:
+            usage();
+        }
+    if (optind == argc - 1) {
+        if (isdigit(*argv[optind])) {
+            pid = (pid_t) strtol(argv[optind++], &endptr, 10);
+            pid_set = 1;
+            if (endptr[0] != '\0')
+                usage();
+        } else if (!(pw = getpwnam(argv[optind++]))) {
+            fprintf(stderr, _("No such user name: %s\n"),
+                    argv[optind - 1]);
+            return 1;
+        }
+    }
+    if (optind != argc)
+        usage();
+    read_proc();
+    for (current = find_proc(highlight); current;
+         current = current->parent)
+        current->flags |= PFLAG_HILIGHT;
+
+    if(show_parents && pid_set == 1) {
+      trim_tree_by_parent(find_proc(pid));
+
+      pid = ROOT_PID;
     }
-  if (wait_end == 1) {
-    fprintf(stderr, _("Press return to close\n"));
-    (void)getchar();
-  }
 
-  return 0;
+    if (!pw)
+        dump_tree(find_proc(pid), 0, 1, 1, 1, 0, 0);
+    else {
+        dump_by_user(find_proc(ROOT_PID), pw->pw_uid);
+        if (!dumped) {
+            fprintf(stderr, _("No processes found.\n"));
+            return 1;
+        }
+    }
+    free_buffers();
+    if (wait_end == 1) {
+        fprintf(stderr, _("Press return to close\n"));
+        (void) getchar();
+    }
+
+    return 0;
 }
diff --git a/src/timeout.c b/src/timeout.c
new file mode 100644 (file)
index 0000000..1fe0354
--- /dev/null
@@ -0,0 +1,267 @@
+/*
+ * timout.c    Advanced timeout handling for file system calls
+ *             to avoid deadlocks on remote file shares.
+ *
+ * Version:    0.1 07-Sep-2011 Fink
+ *
+ * Copyright 2011 Werner Fink, 2011 SUSE LINUX Products GmbH, Germany.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Author:     Werner Fink <werner@suse.de>, 2011
+ */
+
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#ifndef USE_SOCKETPAIR
+# define USE_SOCKETPAIR                1
+#endif
+
+#ifdef _FEATURES_H
+# error Include local config.h before any system header file
+#endif
+#include "config.h"            /* For _FILE_OFFSET_BITS */
+
+#include <errno.h>
+#include <pthread.h>
+#include <setjmp.h>
+#include <signal.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <sys/select.h>
+#include <sys/stat.h>
+
+#include <unistd.h>
+#if USE_SOCKETPAIR
+# include <sys/socket.h>
+# include <netdb.h>
+# include <netinet/in.h>
+#  ifndef SHUT_RD
+#   define SHUT_RD     0
+# endif
+# ifndef SHUT_WR
+#  define SHUT_WR      1
+# endif
+# undef pipe
+# define pipe(v)       (((socketpair(AF_UNIX,SOCK_STREAM,0,v) < 0) || \
+                       (shutdown((v)[1],SHUT_RD) < 0) || (shutdown((v)[0],SHUT_WR) < 0)) ? -1 : 0)
+#endif
+#include <wait.h>
+
+#include "timeout.h"
+
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
+# ifndef  destructor
+#  define destructor           __destructor__
+# endif
+# ifndef  constructor
+#  define constructor          __constructor__
+# endif
+# ifndef  packed
+#  define packed               __packed__
+# endif
+# ifndef  inline
+#  define inline               __inline__
+# endif
+# ifndef  unused
+#  define unused               __unused__
+# endif
+# ifndef  volatile
+#  define volatile             __volatile__
+# endif
+#endif
+#ifndef  attribute
+# define attribute(attr)       __attribute__(attr)
+#endif
+
+#if defined __GNUC__
+# undef strcpy
+# define strcpy(d,s)           __builtin_strcpy((d),(s))   /* Without boundary check please */
+#endif
+
+/*
+ * The structure used for communication between the processes
+ */
+typedef struct _handle {
+       int errcode;
+       struct stat argument;
+       stat_t function;
+       size_t len;
+       char path[0];
+} attribute((packed)) handle_t;
+
+/*
+ * Using a forked process for doing e.g. stat(2) system call as this
+ * allows us to send e.g. SIGKILL to this process if it hangs in `D'
+ * state on a file share due a stalled NFS server.  This does not work
+ * with (p)threads as SIGKILL would kill all threads including main.
+ */
+
+static volatile pid_t active;
+static int pipes[4] = {-1, -1, -1, -1};
+static char buf[PATH_MAX + sizeof(handle_t) + 1];
+
+static void sigchild(int sig attribute((unused)))
+{
+       pid_t pid = waitpid(active, NULL, WNOHANG|WUNTRACED);
+       if (pid <= 0)
+               return;
+       if (errno == ECHILD)
+               return;
+       active = 0;
+}
+
+static void attribute((constructor)) start(void)
+{
+       sigset_t sigset, oldset;
+       struct sigaction act;
+       ssize_t in;
+
+       if (pipes[1] >= 0) close(pipes[1]);
+       if (pipes[2] >= 0) close(pipes[2]);
+
+       if (pipe(&pipes[0]))
+               goto error;
+       if (pipe(&pipes[2]))
+               goto error;
+
+       memset(&act, 0, sizeof(act));
+       sigemptyset(&act.sa_mask);
+       act.sa_flags = SA_RESTART;
+       act.sa_handler = sigchild;
+       sigaction(SIGCHLD, &act, 0);
+
+       if ((active = fork()) < 0)
+               goto error;
+
+       if (active) {
+               close(pipes[0]);
+               close(pipes[3]);
+               pipes[0] = pipes[3] = -1;
+               return;
+       }
+
+       sigemptyset(&sigset);
+       sigaddset(&sigset, SIGALRM);
+       sigprocmask(SIG_BLOCK, &sigset, &oldset);
+
+       act.sa_handler = SIG_DFL;
+       sigaction(SIGCHLD, &act, 0);
+
+       close(pipes[1]);
+       close(pipes[2]);
+       dup2(pipes[0], STDIN_FILENO);
+       dup2(pipes[3], STDOUT_FILENO);
+       close(pipes[0]);
+       close(pipes[3]);
+       pipes[1] = pipes[2] = -1;
+       pipes[0] = pipes[3] = -1;
+
+       {
+               handle_t *restrict handle = (void*)&buf[0];
+
+               while ((in = read(STDIN_FILENO, handle, sizeof(buf))) > sizeof(handle_t)) {
+                       if (handle->function(handle->path, &handle->argument) < 0)
+                                       handle->errcode = errno;
+                       write(STDOUT_FILENO, &handle->errcode, sizeof(handle->errcode)+sizeof(handle->argument));
+                       memset(handle, 0, sizeof(handle_t));
+               }
+       }
+       sigprocmask(SIG_SETMASK, &oldset, NULL);
+       exit(0);
+error:
+       if (pipes[0] >= 0) close(pipes[0]);
+       if (pipes[1] >= 0) close(pipes[1]);
+       if (pipes[2] >= 0) close(pipes[2]);
+       if (pipes[3] >= 0) close(pipes[3]);
+}
+
+static void /* attribute((destructor)) */ stop(void)
+{
+       if (active && waitpid(active, NULL, WNOHANG|WUNTRACED) == 0)
+               kill(active, SIGKILL);
+}
+
+static sigjmp_buf jenv;
+static void sigjump(int sig attribute((unused)))
+{
+       siglongjmp(jenv, 1);
+}
+
+/*
+ * External routine
+ */
+int timeout(stat_t function, const char *path, struct stat *restrict argument, time_t seconds)
+{
+       handle_t *restrict handle = (void*)&buf[0];
+       struct sigaction alrm_act, pipe_act, new_act;
+       sigset_t sigset, oldset;
+
+       if (active <= 0)        /* Oops, last one failed therefore clear status and restart */
+               start();
+
+       memset(handle, 0, sizeof(handle_t));
+       handle->len = strlen(path) + 1;
+       if (handle->len >= PATH_MAX) {
+               errno = ENAMETOOLONG;
+               goto error;
+       }
+       handle->errcode = 0;
+       handle->argument = *argument;
+       handle->function = function;
+       strcpy(handle->path, path);
+
+       sigemptyset(&sigset);
+       sigaddset(&sigset, SIGALRM);
+       sigaddset(&sigset, SIGPIPE);
+       sigprocmask(SIG_UNBLOCK, &sigset, &oldset);
+
+       memset(&new_act, 0, sizeof(new_act));
+       sigemptyset(&new_act.sa_mask);
+       new_act.sa_flags = SA_RESETHAND;
+
+       if (sigsetjmp(jenv, 1))
+               goto timed;
+
+       new_act.sa_handler = sigjump;
+       sigaction(SIGALRM, &new_act, &alrm_act);
+       sigaction(SIGPIPE, &new_act, &pipe_act);
+       alarm(seconds);
+
+       write(pipes[1], handle, sizeof(handle_t)+handle->len);
+       read(pipes[2], &handle->errcode, sizeof(handle->errcode)+sizeof(handle->argument));
+
+       alarm(0);
+       sigaction(SIGPIPE, &pipe_act, NULL);
+       sigaction(SIGALRM, &alrm_act, NULL);
+
+       if (handle->errcode) {
+               errno = handle->errcode;
+               goto error;
+       }
+
+       *argument = handle->argument;
+       sigprocmask(SIG_SETMASK, &oldset, NULL);
+
+       return 0;
+timed:
+       (void) alarm(0);
+       sigaction(SIGPIPE, &pipe_act, NULL);
+       sigaction(SIGALRM, &alrm_act, NULL);
+       sigprocmask(SIG_SETMASK, &oldset, NULL);
+       stop();
+       errno = ETIMEDOUT;
+error:
+       return -1;
+}
+
+/*
+ * End of timeout.c
+ */
diff --git a/src/timeout.h b/src/timeout.h
new file mode 100644 (file)
index 0000000..546c13b
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * timout.h    Advanced timeout handling for file system calls
+ *             to avoid deadlocks on remote file shares.
+ *
+ * Version:    0.1 07-Sep-2011 Fink
+ *
+ * Copyright 2011 Werner Fink, 2011 SUSE LINUX Products GmbH, Germany.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Author:     Werner Fink <werner@suse.de>, 2011
+ */
+
+#ifndef _TIMEOUT_H
+#define _TIMEOUT_H
+
+#include "config.h"            /* For _FILE_OFFSET_BITS */
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <time.h>
+#include <limits.h>
+
+#if !defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L)
+# ifndef  restrict
+#  define restrict             __restrict__
+# endif
+#endif
+
+typedef int (*stat_t)(const char *, struct stat *restrict);
+extern int timeout(stat_t, const char *, struct stat *restrict, time_t);
+
+#endif
diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am
new file mode 100644 (file)
index 0000000..e9bf8a4
--- /dev/null
@@ -0,0 +1,12 @@
+AUTOMAKE_OPTIONS = dejagnu
+export DEJAGNU
+
+# Programs that are expected across the board.
+DEJATOOL = killall 
+
+if WANT_FUSER
+  DEJATOOL += fuser
+endif
+
+
+EXTRA_DIST = 
diff --git a/testsuite/Makefile.in b/testsuite/Makefile.in
new file mode 100644 (file)
index 0000000..3d147fb
--- /dev/null
@@ -0,0 +1,439 @@
+# Makefile.in generated by automake 1.11.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 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.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \  ]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+target_triplet = @target@
+@WANT_FUSER_TRUE@am__append_1 = fuser
+subdir = testsuite
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gettext.m4 \
+       $(top_srcdir)/m4/iconv.m4 $(top_srcdir)/m4/lib-ld.m4 \
+       $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \
+       $(top_srcdir)/m4/nls.m4 $(top_srcdir)/m4/po.m4 \
+       $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+       $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
+RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir
+EXPECT = expect
+RUNTEST = runtest
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEJAGNU = @DEJAGNU@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GREP = @GREP@
+HARDEN_CFLAGS = @HARDEN_CFLAGS@
+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@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MKDIR_P = @MKDIR_P@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+POSUB = @POSUB@
+SELINUX_LIB = @SELINUX_LIB@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+TERMCAP_LIB = @TERMCAP_LIB@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+WITH_IPV6 = @WITH_IPV6@
+WITH_SELINUX = @WITH_SELINUX@
+WITH_TIMEOUT_STAT = @WITH_TIMEOUT_STAT@
+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@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+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 = @target@
+target_alias = @target_alias@
+target_cpu = @target_cpu@
+target_os = @target_os@
+target_vendor = @target_vendor@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+AUTOMAKE_OPTIONS = dejagnu
+
+# Programs that are expected across the board.
+DEJATOOL = killall $(am__append_1)
+EXTRA_DIST = 
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
+       @for dep in $?; do \
+         case '$(am__configure_deps)' in \
+           *$$dep*) \
+             ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+               && { if test -f $@; then exit 0; else break; fi; }; \
+             exit 1;; \
+         esac; \
+       done; \
+       echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu testsuite/Makefile'; \
+       $(am__cd) $(top_srcdir) && \
+         $(AUTOMAKE) --gnu testsuite/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+       @case '$?' in \
+         *config.status*) \
+           cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+         *) \
+           echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+           cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+       esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure:  $(am__configure_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
+       cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+
+check-DEJAGNU: site.exp
+       srcdir='$(srcdir)'; export srcdir; \
+       EXPECT=$(EXPECT); export EXPECT; \
+       runtest=$(RUNTEST); \
+       if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
+         exit_status=0; l='$(DEJATOOL)'; for tool in $$l; do \
+           if $$runtest $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \
+           then :; else exit_status=1; fi; \
+         done; \
+       else echo "WARNING: could not find \`runtest'" 1>&2; :;\
+       fi; \
+       exit $$exit_status
+site.exp: Makefile $(EXTRA_DEJAGNU_SITE_CONFIG)
+       @echo 'Making a new site.exp file...'
+       @echo '## these variables are automatically generated by make ##' >site.tmp
+       @echo '# Do not edit here.  If you wish to override these values' >>site.tmp
+       @echo '# edit the last section' >>site.tmp
+       @echo 'set srcdir "$(srcdir)"' >>site.tmp
+       @echo "set objdir `pwd`" >>site.tmp
+       @echo 'set build_alias "$(build_alias)"' >>site.tmp
+       @echo 'set build_triplet $(build_triplet)' >>site.tmp
+       @echo 'set host_alias "$(host_alias)"' >>site.tmp
+       @echo 'set host_triplet $(host_triplet)' >>site.tmp
+       @echo 'set target_alias "$(target_alias)"' >>site.tmp
+       @echo 'set target_triplet $(target_triplet)' >>site.tmp
+       @list='$(EXTRA_DEJAGNU_SITE_CONFIG)'; for f in $$list; do \
+         echo "## Begin content included from file $$f.  Do not modify. ##" \
+          && cat `test -f "$$f" || echo '$(srcdir)/'`$$f \
+          && echo "## End content included from file $$f. ##" \
+          || exit 1; \
+        done >> site.tmp
+       @echo "## End of auto-generated content; you can edit from here. ##" >> site.tmp
+       @if test -f site.exp; then \
+          sed -e '1,/^## End of auto-generated content.*##/d' site.exp >> site.tmp; \
+        fi
+       @-rm -f site.bak
+       @test ! -f site.exp || mv site.exp site.bak
+       @mv site.tmp site.exp
+
+distclean-DEJAGNU:
+       -rm -f site.exp site.bak
+       -l='$(DEJATOOL)'; for tool in $$l; do \
+         rm -f $$tool.sum $$tool.log; \
+       done
+
+distdir: $(DISTFILES)
+       @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; \
+         if test -d $$d/$$file; then \
+           dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+           if test -d "$(distdir)/$$file"; then \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+             cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+             find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+           fi; \
+           cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+         else \
+           test -f "$(distdir)/$$file" \
+           || cp -p $$d/$$file "$(distdir)/$$file" \
+           || exit 1; \
+         fi; \
+       done
+check-am: all-am
+       $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+       if test -z '$(STRIP)'; then \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+             install; \
+       else \
+         $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+           install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+           "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+       fi
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+       -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+       -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+       -rm -f Makefile
+distclean-am: clean-am distclean-DEJAGNU distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man:
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+       -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: check-am install-am install-strip
+
+.PHONY: all all-am check check-DEJAGNU check-am clean clean-generic \
+       distclean distclean-DEJAGNU distclean-generic distdir dvi \
+       dvi-am html html-am info info-am 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
+
+export DEJAGNU
+
+# 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.
+.NOEXPORT: