[svn-upgrade] Integrating new upstream version, shadow (4.0.0)
authornekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
Sun, 7 Oct 2007 11:44:51 +0000 (11:44 +0000)
committernekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7>
Sun, 7 Oct 2007 11:44:51 +0000 (11:44 +0000)
260 files changed:
ABOUT-NLS
ChangeLog
Makefile.am
Makefile.in
NEWS
TODO
acconfig.h
aclocal.m4
config.guess
config.h.in
config.sub
configure
configure.in
contrib/Makefile.in
debian/Makefile.am
debian/Makefile.in
debian/shadowconfig.sh [moved from src/shadowconfig.sh with 100% similarity]
depcomp [new file with mode: 0755]
doc/Makefile.in
etc/Makefile.am
etc/Makefile.in
etc/pam.d/Makefile.am
etc/pam.d/Makefile.in
etc/pam.d/useradd [new file with mode: 0644]
intl/ChangeLog
intl/Makefile.in
intl/VERSION
intl/bindtextdom.c
intl/cat-compat.c [deleted file]
intl/config.charset [new file with mode: 0644]
intl/dcgettext.c
intl/dcigettext.c [new file with mode: 0644]
intl/dcngettext.c [new file with mode: 0644]
intl/dgettext.c
intl/dngettext.c [new file with mode: 0644]
intl/explodename.c
intl/finddomain.c
intl/gettext.c
intl/gettext.h
intl/gettextP.h
intl/hash-string.h
intl/intl-compat.c
intl/l10nflist.c
intl/libgettext.h
intl/libgnuintl.h [new file with mode: 0644]
intl/linux-msg.sed [deleted file]
intl/loadinfo.h
intl/loadmsgcat.c
intl/localcharset.c [new file with mode: 0644]
intl/locale.alias [new file with mode: 0644]
intl/localealias.c
intl/ngettext.c [new file with mode: 0644]
intl/plural.c [new file with mode: 0644]
intl/plural.y [new file with mode: 0644]
intl/po2tbl.sed.in [deleted file]
intl/ref-add.sin [new file with mode: 0644]
intl/ref-del.sin [new file with mode: 0644]
intl/textdomain.c
intl/xopen-msg.sed [deleted file]
lib/.indent.pro [new file with mode: 0644]
lib/Makefile.am
lib/Makefile.in
lib/commonio.c
lib/commonio.h
lib/defines.h
lib/groupio.c
lib/groupio.h
lib/md5.c [deleted file]
lib/md5crypt.c [deleted file]
lib/mkdir.c [deleted file]
lib/pam_defs.h
lib/putgrent.c [deleted file]
lib/putpwent.c [deleted file]
lib/putspent.c [deleted file]
lib/pwio.c
lib/pwio.h
lib/rename.c [deleted file]
lib/rmdir.c [deleted file]
lib/sgetspent.c [deleted file]
lib/sgroupio.c
lib/sgroupio.h
lib/shadowio.c
lib/shadowio.h
lib/snprintf.c [deleted file]
lib/strcasecmp.c [deleted file]
lib/strdup.c [deleted file]
lib/strerror.c [deleted file]
lib/strstr.c [deleted file]
libmisc/Makefile.am
libmisc/Makefile.in
libmisc/addgrps.c
libmisc/chowntty.c
libmisc/copydir.c
libmisc/pam_pass.c
libmisc/sulog.c
ltconfig [deleted file]
ltmain.sh
man/Makefile.am
man/Makefile.in
man/chage.1
man/chfn.1
man/chpasswd.8
man/chsh.1
man/dpasswd.8
man/expiry.1 [new file with mode: 0644]
man/faillog.5
man/faillog.8
man/gpasswd.1
man/groupadd.8
man/groupdel.8
man/groupmod.8
man/groups.1
man/grpck.8
man/id.1
man/ja/Makefile.am [new file with mode: 0644]
man/ja/Makefile.in [new file with mode: 0644]
man/ja/chage.1 [new file with mode: 0644]
man/ja/chfn.1 [new file with mode: 0644]
man/ja/chpasswd.8 [new file with mode: 0644]
man/ja/chsh.1 [new file with mode: 0644]
man/ja/dpasswd.8 [new file with mode: 0644]
man/ja/faillog.5 [new file with mode: 0644]
man/ja/faillog.8 [new file with mode: 0644]
man/ja/gpasswd.1 [new file with mode: 0644]
man/ja/groupadd.8 [new file with mode: 0644]
man/ja/groupdel.8 [new file with mode: 0644]
man/ja/groupmod.8 [new file with mode: 0644]
man/ja/grpck.8 [new file with mode: 0644]
man/ja/lastlog.8 [new file with mode: 0644]
man/ja/login.1 [new file with mode: 0644]
man/ja/login.access.5 [new file with mode: 0644]
man/ja/login.defs.5 [new file with mode: 0644]
man/ja/logoutd.8 [new file with mode: 0644]
man/ja/mkpasswd.8 [new file with mode: 0644]
man/ja/newgrp.1 [new file with mode: 0644]
man/ja/passwd.1 [new file with mode: 0644]
man/ja/passwd.5 [new file with mode: 0644]
man/ja/porttime.5 [new file with mode: 0644]
man/ja/pw_auth.3 [new file with mode: 0644]
man/ja/pwauth.8 [new file with mode: 0644]
man/ja/pwck.8 [new file with mode: 0644]
man/ja/pwconv.8 [new file with mode: 0644]
man/ja/shadow.3 [new file with mode: 0644]
man/ja/shadow.5 [new file with mode: 0644]
man/ja/su.1 [new file with mode: 0644]
man/ja/suauth.5 [new file with mode: 0644]
man/ja/sulogin.8 [new file with mode: 0644]
man/ja/userdel.8 [new file with mode: 0644]
man/ja/usermod.8 [new file with mode: 0644]
man/lastlog.8
man/limits.5
man/login.1
man/login.access.5
man/login.defs.5
man/logoutd.8
man/mkpasswd.8
man/newgrp.1
man/newusers.8
man/passwd.1
man/passwd.5
man/pl/Makefile.in
man/pl/chage.1
man/pl/chfn.1
man/pl/chpasswd.8
man/pl/chsh.1
man/pl/d_passwd.5
man/pl/dialups.5
man/pl/dpasswd.8
man/pl/faillog.5
man/pl/faillog.8
man/pl/gpasswd.1
man/pl/groupadd.8
man/pl/groupdel.8
man/pl/groupmod.8
man/pl/groups.1
man/pl/grpck.8
man/pl/id.1
man/pl/lastlog.8
man/pl/limits.5
man/pl/login.1
man/pl/login.access.5
man/pl/login.defs.5
man/pl/logoutd.8
man/pl/mkpasswd.8
man/pl/newgrp.1
man/pl/newusers.8
man/pl/passwd.1
man/pl/passwd.5
man/pl/porttime.5
man/pl/pw_auth.3
man/pl/pwauth.8
man/pl/pwck.8
man/pl/pwconv.8
man/pl/shadow.3
man/pl/shadow.5
man/pl/shadowconfig.8
man/pl/su.1
man/pl/suauth.5
man/pl/sulogin.8
man/pl/useradd.8
man/pl/userdel.8
man/pl/usermod.8
man/pl/vipw.8
man/porttime.5
man/pt_BR/Makefile.am [new file with mode: 0644]
man/pt_BR/Makefile.in [new file with mode: 0644]
man/pt_BR/gpasswd.1 [new file with mode: 0644]
man/pt_BR/groupadd.8 [new file with mode: 0644]
man/pt_BR/groupdel.8 [new file with mode: 0644]
man/pt_BR/groupmod.8 [new file with mode: 0644]
man/pt_BR/shadow.5 [new file with mode: 0644]
man/pw_auth.3
man/pwauth.8
man/pwck.8
man/pwconv.8
man/shadow.3
man/shadow.5
man/shadowconfig.8
man/su.1
man/suauth.5
man/sulogin.8
man/useradd.8
man/userdel.8
man/usermod.8
man/vipw.8
missing
po/ChangeLog
po/Makefile.in.in
po/POTFILES.in
po/cat-id-tbl.c [deleted file]
po/cs.gmo
po/cs.po
po/el.gmo
po/el.po
po/fr.gmo
po/fr.po
po/pl.gmo
po/pl.po
po/shadow.pot
po/stamp-cat-id [deleted file]
po/sv.gmo
po/sv.po
po/uk.gmo [new file with mode: 0644]
po/uk.po [new file with mode: 0644]
src/Makefile.am
src/Makefile.in
src/chpasswd.c
src/groups.c
src/grpck.c
src/id.c
src/lastlog.c
src/login.c
src/logoutd.c
src/newgrp.c
src/patchlevel.h [deleted file]
src/pwck.c
src/pwunconv.c
src/su.c
src/useradd.c
src/usermod.c

index 28d38c76fd68364a19f8ef42601e0421bd9039f1..7e6b380934937451fc5631b168b228fb9130c074 100644 (file)
--- a/ABOUT-NLS
+++ b/ABOUT-NLS
@@ -8,7 +8,7 @@ A few packages already provide translations for their messages.
 
    If you found this `ABOUT-NLS' file inside a distribution, you may
 assume that the distributed package does use GNU `gettext' internally,
-itself available at your nearest GNU archive site.  But you do *not*
+itself available at your nearest GNU archive site.  But you do _not_
 need to install GNU `gettext' prior to configuring, installing or using
 this package with messages translated.
 
@@ -22,8 +22,8 @@ related to internationalization, you should tell about the version of
 `gettext' which is used.  The information can be found in the
 `intl/VERSION' file, in internationalized packages.
 
-One advise in advance
-=====================
+Quick configuration advice
+==========================
 
    If you want to exploit the full power of internationalization, you
 should configure it using
@@ -34,13 +34,14 @@ to force usage of internationalizing routines provided within this
 package, despite the existence of internationalizing capabilities in the
 operating system where this package is being installed.  So far, only
 the `gettext' implementation in the GNU C library version 2 provides as
-many features (such as locale alias or message inheritance) as the
-implementation here.  It is also not possible to offer this additional
-functionality on top of a `catgets' implementation.  Future versions of
-GNU `gettext' will very likely convey even more functionality.  So it
-might be a good idea to change to GNU `gettext' as soon as possible.
-
-   So you need not provide this option if you are using GNU libc 2 or
+many features (such as locale alias, message inheritance, automatic
+charset conversion or plural form handling) as the implementation here.
+It is also not possible to offer this additional functionality on top
+of a `catgets' implementation.  Future versions of GNU `gettext' will
+very likely convey even more functionality.  So it might be a good idea
+to change to GNU `gettext' as soon as possible.
+
+   So you need _not_ provide this option if you are using GNU libc 2 or
 you have installed a recent copy of the GNU gettext package with the
 included `libintl'.
 
@@ -53,23 +54,20 @@ Most such packages use GNU `gettext'.  Other packages have their own
 ways to internationalization, predating GNU `gettext'.
 
    By default, this package will be installed to allow translation of
-messages.  It will automatically detect whether the system provides
-usable `catgets' (if using this is selected by the installer) or
-`gettext' functions.  If neither is available, the GNU `gettext' own
+messages.  It will automatically detect whether the system already
+provides the GNU `gettext' functions.  If not, the GNU `gettext' own
 library will be used.  This library is wholly contained within this
 package, usually in the `intl/' subdirectory, so prior installation of
-the GNU `gettext' package is *not* required.  Installers may use
+the GNU `gettext' package is _not_ required.  Installers may use
 special options at configuration time for changing the default
 behaviour.  The commands:
 
      ./configure --with-included-gettext
-     ./configure --with-catgets
      ./configure --disable-nls
 
-will respectively bypass any pre-existing `catgets' or `gettext' to use
-the internationalizing routines provided within this package, enable
-the use of the `catgets' functions (if found on the locale system), or
-else, *totally* disable translation of messages.
+will respectively bypass any pre-existing `gettext' to use the
+internationalizing routines provided within this package, or else,
+_totally_ disable translation of messages.
 
    When you already have GNU `gettext' installed on your system and run
 configure without an option for your new package, `configure' will
@@ -83,18 +81,10 @@ package is more recent, you should use
 
 to prevent auto-detection.
 
-   By default the configuration process will not test for the `catgets'
-function and therefore they will not be used.  The reasons are already
-given above: the emulation on top of `catgets' cannot provide all the
-extensions provided by the GNU `gettext' library.  If you nevertheless
-want to use the `catgets' functions use
-
-     ./configure --with-catgets
-
-to enable the test for `catgets' (this causes no harm if `catgets' is
-not available on your system).  If you really select this option we
-would like to hear about the reasons because we cannot think of any
-good one ourself.
+   The configuration process will not test for the `catgets' function
+and therefore it will not be used.  The reason is that even an
+emulation of `gettext' on top of `catgets' could not provide all the
+extensions of the GNU `gettext' library.
 
    Internationalized packages have usually many `po/LL.po' files, where
 LL gives an ISO 639 two-letter code identifying the language.  Unless
@@ -110,22 +100,35 @@ Using This Package
 
    As a user, if your language has been installed for this package, you
 only have to set the `LANG' environment variable to the appropriate
-ISO 639 `LL' two-letter code prior to using the programs in the
-package.  For example, let's suppose that you speak German.  At the
-shell prompt, merely execute `setenv LANG de' (in `csh'),
-`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash').  This
-can be done from your `.login' or `.profile' file, once and for all.
-
-   An operating system might already offer message localization for
-many of its programs, while other programs have been installed locally
-with the full capabilities of GNU `gettext'.  Just using `gettext'
-extended syntax for `LANG' would break proper localization of already
-available operating system programs.  In this case, users should set
-both `LANGUAGE' and `LANG' variables in their environment, as programs
-using GNU `gettext' give preference to `LANGUAGE'.  For example, some
-Swedish users would rather read translations in German than English for
-when Swedish is not available.  This is easily accomplished by setting
-`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'.
+`LL_CC' combination.  Here `LL' is an ISO 639 two-letter language code,
+and `CC' is an ISO 3166 two-letter country code.  For example, let's
+suppose that you speak German and live in Germany.  At the shell
+prompt, merely execute `setenv LANG de_DE' (in `csh'),
+`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash').
+This can be done from your `.login' or `.profile' file, once and for
+all.
+
+   You might think that the country code specification is redundant.
+But in fact, some languages have dialects in different countries.  For
+example, `de_AT' is used for Austria, and `pt_BR' for Brazil.  The
+country code serves to distinguish the dialects.
+
+   Not all programs have translations for all languages.  By default, an
+English message is shown in place of a nonexistent translation.  If you
+understand other languages, you can set up a priority list of languages.
+This is done through a different environment variable, called
+`LANGUAGE'.  GNU `gettext' gives preference to `LANGUAGE' over `LANG'
+for the purpose of message handling, but you still need to have `LANG'
+set to the primary language; this is required by other parts of the
+system libraries.  For example, some Swedish users who would rather
+read translations in German than English for when Swedish is not
+available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'.
+
+   In the `LANGUAGE' environment variable, but not in the `LANG'
+environment variable, `LL_CC' combinations can be abbreviated as `LL'
+to denote the language's main dialect.  For example, `de' is equivalent
+to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT'
+(Portuguese as spoken in Portugal) in this context.
 
 Translating Teams
 =================
@@ -133,33 +136,21 @@ Translating Teams
    For the Free Translation Project to be a success, we need interested
 people who like their own language and write it well, and who are also
 able to synergize with other translators speaking the same language.
-Each translation team has its own mailing list, courtesy of Linux
-International.  You may reach your translation team at the address
-`LL@li.org', replacing LL by the two-letter ISO 639 code for your
-language.  Language codes are *not* the same as the country codes given
-in ISO 3166.  The following translation teams exist, as of December
-1997:
-
-     Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en',
-     Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian
-     `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja',
-     Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish
-     `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es',
-     Swedish `sv', and Turkish `tr'.
-
-For example, you may reach the Chinese translation team by writing to
-`zh@li.org'.
-
-   If you'd like to volunteer to *work* at translating messages, you
+Each translation team has its own mailing list.  The up-to-date list of
+teams can be found at the Free Translation Project's homepage,
+`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams"
+area.
+
+   If you'd like to volunteer to _work_ at translating messages, you
 should become a member of the translating team for your own language.
-The subscribing address is *not* the same as the list itself, it has
+The subscribing address is _not_ the same as the list itself, it has
 `-request' appended.  For example, speakers of Swedish can send a
 message to `sv-request@li.org', having this message body:
 
      subscribe
 
    Keep in mind that team members are expected to participate
-*actively* in translations, or at solving translational difficulties,
+_actively_ in translations, or at solving translational difficulties,
 rather than merely lurking around.  If your team does not exist yet and
 you want to start one, or if you are unsure about what to do or how to
 get started, please write to `translation@iro.umontreal.ca' to reach the
@@ -173,42 +164,102 @@ Available Packages
 ==================
 
    Languages are not equally supported in all packages.  The following
-matrix shows the current state of internationalization, as of December
-1997.  The matrix shows, in regard of each package, for which languages
-PO files have been submitted to translation coordination.
-
-     Ready PO files    cs da de en es fi fr it ja ko nl no pl pt ru sl sv
-                     .----------------------------------------------------.
-     bash            |       []          []          []                   |  3
-     bison           |       []          []          []                   |  3
-     clisp           |       [] [] []    []                               |  4
-     cpio            |       []    []    []       [] []    []             |  6
-     diffutils       |       []    []    []                []          [] |  5
-     enscript        |       []    [] [] []          []             []    |  6
-     fileutils       | []    []    []    []       [] []    [] []    [] [] | 10
-     findutils       |       []    []    [] []    [] []    []    []    [] |  9
-     flex            |             []    []       []                   [] |  4
-     gcal            |       []          []          []    []          [] |  5
-     gettext         |    [] []    []    []       [] [] [] [] []    [] [] | 12
-     grep            |       []    []    []       [] [] [] []    [] [] [] | 10
-     hello           |    [] []    []    []       [] [] [] [] []    [] [] | 11
-     id-utils        |       []          []                []             |  3
-     indent          |    [] []                   []       []    []       |  5
-     libc            |       []    []    []       [] []    []          [] |  7
-     m4              |       []          []    []    []          []    [] |  6
-     make            |       []    []    []       [] []    []             |  6
-     music           |                   []                []             |  2
-     ptx             |       []    []    []          [] [] [] []       [] |  8
-     recode          |    [] []    []    []          []    [] []    [] [] |  9
-     sh-utils        |       []    []    []          [] [] [] []       [] |  8
-     sharutils       | []    []    []    []          []                [] |  6
-     tar             | []    []          [] []    [] [] [] [] []    [] [] | 11
-     texinfo         | []    []          []                               |  3
-     textutils       | []    []    []    []       [] [] [] []          [] |  9
-     wdiff           | []    []    []    []          [] [] []          [] |  8
-                     `----------------------------------------------------'
-       17 languages    cs da de en es fi fr it ja ko nl no pl pt ru sl sv
-       27 packages      6  4 25  1 18  1 26  2  1 12 20  9 19  7  4  7 17  179
+matrix shows the current state of internationalization, as of May 2001.
+The matrix shows, in regard of each package, for which languages PO
+files have been submitted to translation coordination, with a
+translation percentage of at least 50%.
+
+     Ready PO files    bg cs da de el en eo es et fi fr gl hr id it
+                     +----------------------------------------------+
+     a2ps            |          []             []                   |
+     bash            |          []       [] []       []             |
+     bison           |          []          [] []    []             |
+     clisp           |          []    []    []       []             |
+     cpio            |       [] []          []       []             |
+     diffutils       |       [] []       [] []       [] []    []    |
+     enscript        |          []                   []             |
+     error           |                               []             |
+     fileutils       |    [] [] [] []       []       [] []          |
+     findutils       |       [] []          [] []    [] []    [] [] |
+     flex            |       []             []       []             |
+     gawk            |                                              |
+     gcal            |                                              |
+     gcc             |       []                                     |
+     gettext         |    [] [] [] []       []       [] []    [] [] |
+     gnupg           |          []       []    []    []          [] |
+     grep            |                   []    []                [] |
+     hello           |       [] []       [] [] [] [] []       [] [] |
+     id-utils        |       []                      []             |
+     indent          |       [] []             []    [] []          |
+     libc            |    [] [] [] []       []       [] []       [] |
+     lilypond        |                                              |
+     lynx            |    [] [] []                                  |
+     m4              |    [] [] [] []                [] []    []    |
+     make            |          []          []       [] []          |
+     parted          |          []                      []          |
+     ptx             |       [] []          [] []    [] []    []    |
+     python          |                                              |
+     recode          |       [] [] []    [] []       [] []       [] |
+     sed             |    []    [] []    []    []    [] []    [] [] |
+     sh-utils        |    [] [] [] []       [] []    [] []       [] |
+     sharutils       |    [] [] [] []       []       [] []          |
+     soundtracker    |                                              |
+     sp              |                                              |
+     tar             |    [] [] []          [] []    []       [] [] |
+     texinfo         |    []    []       []          []             |
+     textutils       |    [] [] [] []       []       [] []          |
+     util-linux      |    []                                        |
+     wdiff           |    [] []             [] []    [] []    []    |
+     wget            |    [] [] [] []       [] []    [] []       [] |
+                     +----------------------------------------------+
+                       bg cs da de el en eo es et fi fr gl hr id it
+                        0 14 21 27 10  1  8 20 13  1 28 17  0  9 11
+     
+                       ja ko lv nl no pl pt pt_BR ru sk sl sv tr zh
+                     +----------------------------------------------+
+     a2ps            |          []                []    []          |  5
+     bash            |                                              |  4
+     bison           | []       []                []                |  7
+     clisp           |          []                                  |  5
+     cpio            |    []    []    []     []   []                |  9
+     diffutils       |                []          []       []       | 10
+     enscript        |          []           []   []                |  5
+     error           |                                              |  1
+     fileutils       | [] []    []    []     []   [] [] [] []       | 16
+     findutils       |    []    []    []     []   []       []       | 14
+     flex            |    []                      []       []       |  6
+     gawk            |                                              |  0
+     gcal            |                                              |  0
+     gcc             | []                                           |  2
+     gettext         | [] []    []    []     []   []    [] [] [] [] | 19
+     gnupg           | []             []                   []       |  8
+     grep            |                                              |  3
+     hello           | [] []    []    []     []   [] []    []       | 17
+     id-utils        |          []                []       []       |  5
+     indent          |    []    []    []          [] []    [] []    | 12
+     libc            | [] []       [] []     []      []    []       | 15
+     lilypond        |          []                                  |  1
+     lynx            | []       []           []   []       []       |  8
+     m4              | []       []    []          []       []       | 12
+     make            | []       []    []     []   []                |  9
+     parted          | []       []                []                |  5
+     ptx             |          [] [] [] []       []       []       | 13
+     python          |                                              |  0
+     recode          |                            []    [] []       | 11
+     sed             | []       []           []   [] [] [] []       | 16
+     sh-utils        | []       [] [] []     []   [] [] [] []    [] | 19
+     sharutils       | []       []                []       []       | 11
+     soundtracker    |                                              |  0
+     sp              |                                              |  0
+     tar             | []       [] [] []     []   []    [] []       | 16
+     texinfo         | []                         []                |  6
+     textutils       | []       [] [] []     []   [] [] []          | 15
+     util-linux      |                       []                     |  2
+     wdiff           |          []    []          [] []    []       | 12
+     wget            | []          []        []   [] [] [] []    [] | 17
+                     +----------------------------------------------+
+       29 teams        ja ko lv nl no pl pt pt_BR ru sk sl sv tr zh
+       40 domains      18  8  0 23  6 16  1  15   26  9  9 20  2  3  336
 
    Some counters in the preceding matrix are higher than the number of
 visible blocks let us expect.  This is because a few extra PO files are
@@ -221,6 +272,25 @@ distributed as such by its maintainer.  There might be an observable
 lag between the mere existence a PO file and its wide availability in a
 distribution.
 
-   If December 1997 seems to be old, you may fetch a more recent copy
-of this `ABOUT-NLS' file on most GNU archive sites.
+   If May 2001 seems to be old, you may fetch a more recent copy of
+this `ABOUT-NLS' file on most GNU archive sites.  The most up-to-date
+matrix with full percentage details can be found at
+`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'.
+
+Using `gettext' in new packages
+===============================
+
+   If you are writing a freely available program and want to
+internationalize it you are welcome to use GNU `gettext' in your
+package.  Of course the GNU Public License applies to your sources from
+then if you include `gettext' directly in your distribution on but
+since you are writing free software anyway this is no restriction.
+
+   Once the sources are change appropriately and the setup can handle to
+use of `gettext' the only thing missing are the translations.  The Free
+Translation Project is also available for packages which are not
+developed inside the GNU project.  Therefore the information given above
+applies also for every other Free Software Project.  Contact
+`translation@iro.umontreal.ca' to make the `.pot' files available to
+the translation teams.
 
index 42a47ab868855731f092e73beb06997e95203e81..d3dbdf4b3dde281173a4ae6235a3777e85acb523 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,356 @@
+2001-10-06  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * lib/Makefile.am (libshadow_la_SOURCES):
+       reverte last change and added rcsid.h,
+       (EXTRA_DIST): added missing "\".
+
+       * src/Makefile.am: (DEFS):
+       - fix -DLOCALEDIR in DEFS,
+       - added -DHAVE_CONFIG_H,
+       - removed @DEFS@.
+
+       * lib/Makefile.am:
+       added missing shadow_.h file to libshadow_la_SOURCES.
+
+2001-09-08  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * Makefile.am (AUTOMAKE_OPTIONS):
+       version changed to 1.5 and added dist-bzip2.
+
+       * lib/Makefile.am, libmisc/Makefile.am, src/Makefile.am:
+       add .indent.pro to EXTRA_DIST.
+
+       * etc/Makefile.am, etc/useradd: add example /etc/defaults/useradd.
+
+2001-09-07  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * TODO: last touch.
+
+       * TODO: more TODO.
+
+       * lib/commonio.c, NEWS:
+       Fix bug discovered and fixed by Marcel Ritter <Marcel.Ritter@rrze.uni-erlangen.de>
+       Due to a big buffer size in lib/commonio.c this error does only appear
+       if a line gets longer than 4096 bytes (there are probably very few people
+       stumbling across this).
+       Ths bug can be exposed by trashing /etc/groups file using useradd with script:
+               #!/bin/sh
+               typeset -i NUM
+               NUM=0
+               groupadd demogroup
+               while [ $NUM -le 1000 ]; do
+                  useradd -g demogroup -G demogroup -p "NONE" user$NUM
+                  NUM=$NUM+1
+               done
+
+2001-09-01  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/groups.c, src/id.c, src/newgrp.c, src/useradd.c, src/usermod.c, libmisc/addgrps.c, NEWS:
+       remove limit 32 to groups per user (the same user can belong to
+       more than 32 groups) by use sysconf(_SC_NGROUPS_MAX) instead constant
+       NGROUPS_MAX (patch by Radu Constantin Rendec <radu.rendec@ines.ro>)
+       NOTE: it probably need testing on other system for add some conditionals
+       for using sysconf(_SC_NGROUPS_MAX) or NGROUPS_MAX constant.
+
+2001-08-31  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * etc/pam.d/Makefile.am, etc/pam.d/useradd: added file for useradd.
+
+2001-08-24  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/useradd.c (set_defaults):
+       handle correctly error open/create useradd default config
+       filei (based on orginal post to bugtraq).
+
+       * TODO: documment in pt_BR, ja man pages -s {pw,grp}ck option.
+
+       * libmisc/sulog.c, NEWS:
+       remove limit to 6 chars logged tty name (apply 012_libmisc_sulog.c.diff Debian
+       patch).
+
+       * man/pl/shadowconfig.8, man/shadowconfig.8:
+       - aply 021_man_shadowconfig_usr_doc.diff debian patch.
+
+       * src/Makefile.am, lib/Makefile.am:
+       use $(top_builddir) in .la files paths (for allow correct compile if
+       $(top_builddir) isn't the same as $(top_srcdir)).
+
+       * po/Attic/ChangeLog: removed ChangeLog.
+
+2001-08-18  Micha³ Moskal  <malekith@pld.org.pl>
+
+       * src/grpck.c: - fixed getopt() call, thnx to arekm
+
+2001-08-15  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * NEWS: - include last changes to list changes in version 4.0.0.
+
+2001-08-14  Micha³ Moskal  <malekith@pld.org.pl>
+
+       * NEWS: - mention new -s options
+
+       * man/pl/grpck.8, man/pl/pwck.8, man/grpck.8, man/pwck.8:
+       - documented new -s options
+
+       * src/grpck.c, src/pwck.c: - added -s option to sort output files
+
+       * lib/groupio.c, lib/groupio.h, lib/pwio.c, lib/pwio.h, lib/sgroupio.c, lib/sgroupio.h, lib/shadowio.c, lib/shadowio.h:
+       - added pw_sort, gr_sort, sgr_sort and spw_sort functions
+
+       * lib/commonio.c, lib/commonio.h:
+       - added commonio_sort{,_wrt} functions
+
+2001-08-06  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * po/Attic/ChangeLog, po/uk.po, configure.in:
+       added uk translation (Roman Festchook <roma@polesye.net>).
+
+       * src/logoutd.c (mani):
+       s/ut->ut_libe/ut->ut_user/ on prepare strin with user name for syslog
+       line (reported by Roman Festchook <roma@polesye.net>).
+
+2001-07-27  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * acconfig.h: - added missing USG.
+
+2001-07-04  Marek Micha³kiewicz  <marekm@pld.org.pl>
+
+       * lib/commonio.c:
+       fix buffer overflow (not a security hole) in commonio_setname
+
+2001-06-28  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * NEWS: entry about dropping support one argument pam_strerror().
+
+       * libmisc/pam_pass.c, src/login.c, src/su.c, acconfig.h, configure.in, lib/defines.h, lib/pam_defs.h:
+       drop detecting is pam_strerror() need one or two arguments. Instead using
+       PAM_STRERROR() macro use directly pam_strerror() function with two arguments.
+       pam_strerror() with one argument is obsoleted.
+
+       * configure.in:
+       pass display error message if libpam_misc not found in correct argument
+       AC_CHECK_LIB().
+
+       * configure.in:
+       added checking for libpam_misc if libpam found and if libpam_misc is avalaible
+       add them to $LIBPAM. Othervise exit fron autoconf script with error message.
+       Now shadow compiles if pam support is enabled.
+
+2001-06-28  Marek Micha³kiewicz  <marekm@pld.org.pl>
+
+       * libmisc/copydir.c: fix overwriting existing file (add O_TRUNC)
+
+2001-06-23  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * configure.in: remove intl/po2tbl.sed from AC_OUTPUT().
+
+       * configure.in:
+       removed add md5.o md5crypt.o conditionaly to $LIBOBJS (this is obsoleted).
+       In current version ndling md5 functionality is included conditionaly
+       inside md5.c and md5crypt.c source files.
+
+       * lib/md5.c: added comments for #endif.
+
+       * configure.in: also do not use SU_ACCESS when PAM is used.
+
+       * configure.in:
+       - check pam directly by AC_CHECK_LIB() (PAM from PLD is now fixed an also other
+         PAM implementation must be fixed for this method checkin is libpam is avalaible;
+         sorry .. no way this is plain linking procedure bug),
+       - use AC_DEFINE(LOGIN_ACCES) only when PAM isn't used.
+
+2001-06-23  Marek Micha³kiewicz  <marekm@pld.org.pl>
+
+       * src/Makefile.am:
+       add LDADD for groupmod and usermod, as they use PAM too
+
+       * src/login.c, src/su.c: fix uninitialized variable failcount
+       skip '*' in pw_shell for subsystem root
+
+2001-06-23  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/login.c: use "extern int login_access()" only if !USE_PAM.
+
+       * src/Makefile.am:
+       added LDADD rules for programs which uses PAM and cracklib.
+
+2001-06-23  Marek Micha³kiewicz  <marekm@pld.org.pl>
+
+       * libmisc/chowntty.c:
+       allow root login even on read-only root filesystem
+
+       * libmisc/Makefile.am: add -DHAVE_CONFIG_H to DEFS
+
+2001-06-23  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * autogen.sh: run configure by default with --disable-desrpc,
+       fix: --with-libpam (not --with-pam).
+
+2001-06-23  Marek Micha³kiewicz  <marekm@pld.org.pl>
+
+       * libmisc/chowntty.c:
+       libmisc/chowntty.c (chown_tty): move perror() before syslog() call
+       which might change errno.
+
+       * man/pl/login.defs.5, man/login.defs.5:
+       (UMASK): Default value is 077, not 0 - see NEWS for shadow-3.3.2-951106.
+
+2001-06-23  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * NEWS, configure.in: prepare for release 4.0.0 version.
+
+       * configure.in: remove commented line.
+
+2001-06-16  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * po/pl.po: fixed charset (must be iso-8859-2).
+
+       * man/Makefile.am, man/ja/Makefile.am, man/ja/chage.1, man/ja/chfn.1, man/ja/chpasswd.8, man/ja/chsh.1, man/ja/dpasswd.8, man/ja/faillog.5, man/ja/faillog.8, man/ja/gpasswd.1, man/ja/groupadd.8, man/ja/groupdel.8, man/ja/groupmod.8, man/ja/grpck.8, man/ja/lastlog.8, man/ja/login.1, man/ja/login.access.5, man/ja/login.defs.5, man/ja/logoutd.8, man/ja/mkpasswd.8, man/ja/newgrp.1, man/ja/passwd.1, man/ja/passwd.5, man/ja/porttime.5, man/ja/pw_auth.3, man/ja/pwauth.8, man/ja/pwck.8, man/ja/pwconv.8, man/ja/shadow.3, man/ja/shadow.5, man/ja/su.1, man/ja/suauth.5, man/ja/sulogin.8, man/ja/userdel.8, man/ja/usermod.8, configure.in, NEWS:
+       added ja man pages.
+
+2001-05-30  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/Attic/shadowconfig.sh, src/Makefile.am, debian/Makefile.am, debian/shadowconfig.sh:
+       move shadowconfig.sh to debian/
+
+       * src/Makefile.am: added missing -I${top_srcdir} to INCLUDES.
+
+       * lib/Makefile.am: empty DEFS and INCLUDES="-I$(top_srcdir)".
+
+       * libmisc/Makefile.am:
+       empty DEFS and INCLUDES="-I$(top_srcdir) -I$(top_srcdir)/lib".
+
+2001-03-05  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * autogen.sh (conf_flags): added --with-pam.
+
+       * NEWS: start complette next release information.
+
+2001-02-04  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * shlib/Attic/Makefile.am, shlib/Attic/Makefile.in.saved: - removed.
+
+       * src/Makefile.am, libmisc/Makefile.am, lib/Makefile.am:
+       Rewrited automake suit for building lib, libmisc and src (now this look much
+       better). Also for all is now used libtool in proper way.
+
+       * configure.in:
+       - added useing AM_DISABLE_SHARED, AM_ENABLE_STATIC for disable compile shared
+         libraries and enable static,
+       - some cosmetics.
+
+       * Makefile.am (SUBDIRS): reorder libmisc must be before lib.
+
+2001-02-01  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * man/pt_BR/Makefile.am: - added man_MANS to EXTRA_DIST.
+
+2001-01-31  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * man/Makefile.am, man/pt_BR/Makefile.am, man/pt_BR/gpasswd.1, man/pt_BR/groupadd.8, man/pt_BR/groupdel.8, man/pt_BR/groupmod.8, man/pt_BR/shadow.5, configure.in:
+       include pt_BR man pages for gpasswd(1), groupadd(1), groupdel(8),
+       groupmod(8), shadow(5).
+
+2001-01-27  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * TODO: - updated.
+
+       * man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/gpasswd.1, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/login.1, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/su.1, man/pl/useradd.8, man/pl/userdel.8, man/pl/vipw.8, man/dpasswd.8, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmems.8, man/groupmod.8, man/groups.1, man/id.1, man/lastlog.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/su.1, man/useradd.8, man/usermod.8, man/vipw.8:
+       many small cleanups, fixes also removed commented obsoleted texts.
+
+2001-01-25  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * autogen.sh: add to conf_flags --disable-shared.
+
+       * man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/d_passwd.5, man/pl/dialups.5, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/gpasswd.1, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/limits.5, man/pl/login.1, man/pl/login.access.5, man/pl/login.defs.5, man/pl/logoutd.8, man/pl/mkpasswd.8, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/passwd.5, man/pl/porttime.5, man/pl/pw_auth.3, man/pl/pwauth.8, man/pl/pwck.8, man/pl/pwconv.8, man/pl/shadow.3, man/pl/shadow.5, man/pl/shadowconfig.8, man/pl/su.1, man/pl/suauth.5, man/pl/sulogin.8, man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/pl/vipw.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/shadow.3, man/shadow.5, man/shadowconfig.8, man/su.1, man/suauth.5, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, man/vipw.8, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/expiry.1, man/faillog.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmems.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/limits.5, man/login.1, man/login.access.5, man/login.defs.5, man/logoutd.8:
+       put or move to top cemmented Id cvs keyword,
+       (passwd.1): documment -e option (patch from Debian),
+       (userdel.1): remove commented obsoleted options.
+
+       * man/Makefile.am:
+       put all files in man_MANS and EXTRA_DIST in alphabethic order.
+
+       * src/chpasswd.c, src/pwunconv.c:
+       remove from comments program description and history logs.
+
+       * src/Makefile.am: move groups to bin_PROGRAMS.
+
+2000-12-19  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/su.c: Based on Debian modyfications:
+       (main): #endif /* USE_PAM */ #ifdef USE_PAM replaced by #else,
+       (main): removed some dead code (scoped by #if 0 .. #endif).
+       (main): call to re-establish SIGINT to right place.
+
+       * man/pl/passwd.1: Removed SEE ALSO to shadow(3) and passwd(3).
+
+       * man/pl/shadow.5, man/shadow.5: Removed SEE ALSO to shadow(3).
+
+       * man/passwd.1: Removed SEE ALSO to passwd(3) and commented shadow(3).
+
+2000-12-06  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/useradd.c (main):
+       use "useradd" instead "shadow in pam_start() parameters - this
+       allow use separated pam config file for useradd (for example for allow
+       specified non-root user for add user).
+
+2000-11-29  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * TODO: remove write expiry(1) man page.
+
+       * man/Makefile.am, man/expiry.1: added expiry(1) man page from Debian.
+
+       * man/pl/lastlog.8, man/lastlog.8:
+       updated man pages for whole dispaly syntax.
+
+       * src/lastlog.c (main): fixed command line syntax description.
+
+       * src/lastlog.c (main):
+       display correctly and full current commnad line lastlog syntax
+       and also output this string using gettext.
+
+       * src/lastlog.c (main):
+       merge src_lastlogin.c patch from debian with use getopt_long()
+       instead getopt() for add handling --help, --user, --time switches and
+       dipslay useage message on -h, --help and as default action.
+
+2000-11-17  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * src/groupmems.c, po/el.po, po/fr.po, po/pl.po, po/sv.po, po/POTFILES.in, po/cs.po:
+       added i18n support for src/groupmems.c.
+
+       * src/useradd.c:
+       * (set_defaults): use mkstemp() if avalaible. Othereise use mktemp().
+
+       * configure.in: * added checking for mkstemp().
+
+       * src/useradd.c: * (set_defaults): use mkstemp() instead mktemp(),
+       * (mani): fix compilation error in previouse RH patch (removed using nflg).
+
+2000-11-12  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * TODO: - groupmems need some work on add PAM and i18n support.
+
+       * src/groupmems.c, man/groupmems.8:
+       Added raw version groupmems program for administer members of a user's
+       primary group. groupmems was written by George Kraft IV <gk4@us.ibm.com>
+       and this tool have BSD license.
+
+       * src/Attic/patchlevel.h, src/Makefile.am:
+       patchlevel.h, Makefile.am: removed patchlevel.h file,
+       Makefile.am: removed bindir, sbindir (this comes with autoconf).
+
+2000-11-06  Tomasz K³oczko  <kloczek@pld.org.pl>
+
+       * TODO: - write expire man page.
+
 2000-10-16  Tomasz K³oczko  <kloczek@pld.org.pl>
 
-       * old/pwconv.8, old/pwconv-old.8, old/pwunconv.8, old/pwunconv-old.8, man/pl/login.defs.5, man/pl/logoutd.8, man/pl/mkpasswd.8, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/porttime.5, man/pl/pw_auth.3, man/pl/pwauth.8, man/pl/pwck.8, man/pl/shadow.3, man/pl/su.1, man/pl/sulogin.8, man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/login.1, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/shadow.3, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, doc/ANNOUNCE, doc/LSM, doc/README, doc/README.linux:
+       * old/pwconv-old.8, old/pwconv.8, old/pwunconv-old.8, old/pwunconv.8, man/pl/login.defs.5, man/pl/logoutd.8, man/pl/mkpasswd.8, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/porttime.5, man/pl/pw_auth.3, man/pl/pwauth.8, man/pl/pwck.8, man/pl/shadow.3, man/pl/su.1, man/pl/sulogin.8, man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/login.1, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/shadow.3, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, doc/ANNOUNCE, doc/LSM, doc/README, doc/README.linux:
        Julianne F. Haugh new contact adress.
 
-       * NEWS: - summary changes for 20001016.
+       * NEWS: - summary chanfes for 20001016.
 
        * doc/Attic/README.shadow-paper, doc/Makefile.am:
        - removed outdated README.shadow-paper.
        - do not install by default groups.1, id.1, pw_auth.3, shadow.3, pwauth.8,
          sulogin.8, dpasswd.8 (moved to EXTRA_DISTS),
 
-2000-10-15  Marek Micha³kiewicz  <marekm@linux.org.pl>
+2000-10-15  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * lib/commonio.c (reload_nscd): Disable for now because not every
        version of nscd can handle it, unless ENABLE_NSCD_SIGHUP defined.
 
 2000-10-10  Tomasz K³oczko  <kloczek@pld.org.pl>
 
-       * po/ChangeLog: - add empty file (gettext requires this).
+       * po/Attic/ChangeLog: - add empty file (gettext requires this).
 
 2000-10-10  Arkadiusz Mi¶kiewicz  <misiek@pld.org.pl>
 
 
 2000-10-09  Tomasz K³oczko  <kloczek@pld.org.pl>
 
-       * redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970616-fix.patch, redhat/Attic/shadow-970616-glibc.patch, redhat/Attic/shadow-970616.login.defs, redhat/Attic/shadow-970616-rh.patch, redhat/Attic/shadow-970616.useradd, redhat/Attic/shadow-970616-utuser.patch, redhat/Attic/shadow-utils-970616.spec, configure.in, Makefile.am, shadow-utils.spec.in:
+       * redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970616-fix.patch, redhat/Attic/shadow-970616-glibc.patch, redhat/Attic/shadow-970616-rh.patch, redhat/Attic/shadow-970616-utuser.patch, redhat/Attic/shadow-970616.login.defs, redhat/Attic/shadow-970616.useradd, redhat/Attic/shadow-utils-970616.spec, Makefile.am, configure.in, shadow-utils.spec.in:
        - remove redhat/ directory with obsoleted files.
 
        * man/Makefile.am: - removed redundant ${man_MANS} from EXTRA_DIST.
        * po/cs.po, po/el.po, po/fr.po, po/pl.po, po/sv.po:
        - "make updated-po".
 
-       * man/pl/grpconv.8, man/pl/grpunconv.8, man/pl/Makefile.am, man/pl/pwunconv.8, man/grpconv.8, man/grpunconv.8, man/Makefile.am, man/pwunconv.8:
+       * man/pl/Makefile.am, man/pl/grpconv.8, man/pl/grpunconv.8, man/pl/pwunconv.8, man/Makefile.am, man/grpconv.8, man/grpunconv.8, man/pwunconv.8:
        - added man pages for grpconv(8), grpunconv(8), pwunconv(8) (.so link to
          pwconv(8))
 
-       * man/pl/adduser.8, man/pl/Makefile.am, man/adduser.8, man/Makefile.am:
+       * man/pl/Makefile.am, man/pl/adduser.8, man/Makefile.am, man/adduser.8:
        - added man page for adduser(8) (.so link to useradd(8)).
 
        * po/Attic/doit:
        * po/cs.po, configure.in:
        - added cs translation (Jiri Pavlovsky <Jiri.Pavlovsky@ff.cuni.cz>).
 
-2000-09-05  Marek Micha³kiewicz  <marekm@linux.org.pl>
+2000-09-05  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * man/pl/sulogin.8, man/pl/vipw.8, po/el.po, po/fr.po, po/pl.po, po/sv.po, man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/dialups.5, man/pl/d_passwd.5, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/gpasswd.1, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/limits.5, man/pl/login.1, man/pl/login.access.5, man/pl/login.defs.5, man/pl/logoutd.8, man/pl/mkpasswd.8, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/passwd.5, man/pl/porttime.5, man/pl/pw_auth.3, man/pl/pwauth.8, man/pl/pwck.8, man/pl/pwconv.8, man/pl/shadow.3, man/pl/shadow.5, man/pl/shadowconfig.8, man/pl/su.1, man/pl/suauth.5:
+       * man/pl/sulogin.8, man/pl/vipw.8, po/el.po, po/fr.po, po/pl.po, po/sv.po, man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/d_passwd.5, man/pl/dialups.5, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/gpasswd.1, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/limits.5, man/pl/login.1, man/pl/login.access.5, man/pl/login.defs.5, man/pl/logoutd.8, man/pl/mkpasswd.8, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/passwd.5, man/pl/porttime.5, man/pl/pw_auth.3, man/pl/pwauth.8, man/pl/pwck.8, man/pl/pwconv.8, man/pl/shadow.3, man/pl/shadow.5, man/pl/shadowconfig.8, man/pl/su.1, man/pl/suauth.5:
        *** empty log message ***
 
-2000-09-02  Marek Micha³kiewicz  <marekm@linux.org.pl>
+2000-09-02  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/groupmod.c, src/grpck.c, src/login.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/pwck.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, lib/commonio.h, lib/defines.h, lib/groupio.c, lib/pwio.c, lib/sgroupio.c, lib/shadowio.c, man/usermod.8, po/el.po, po/fr.po, po/pl.po, po/sv.po, redhat/Attic/shadow-utils.spec.in, src/chage.c, src/chfn.c, src/chsh.c, src/dpasswd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, configure.in, debian/rules, doc/Attic/CHANGES, doc/LSM, lib/commonio.c:
        *** empty log message ***
 
-2000-08-26  Marek Micha³kiewicz  <marekm@linux.org.pl>
+2000-08-26  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * contrib/groupmems.shar, contrib/Makefile.am, doc/LSM, po/el.po, po/fr.po, po/pl.po, po/sv.po, doc/README.mirrors, src/vipw.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/logoutd.c, src/Makefile.am, src/mkpasswd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/dialchk.h, lib/dialup.h, lib/encrypt.c, lib/getdef.c, lib/getdef.h, lib/groupio.c, lib/groupio.h, lib/Makefile.am, libmisc/chkname.h, libmisc/chowndir.c, libmisc/copydir.c, libmisc/entry.c, libmisc/failure.h, libmisc/getdate.h, libmisc/hushed.c, libmisc/loginprompt.c, libmisc/setupenv.c, libmisc/suauth.c, libmisc/sulog.c, lib/prototypes.h, lib/pwauth.c, lib/pwio.c, lib/pwio.h, lib/rad64.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadowio.h, lib/tcfsio.h, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.defs.5, man/logoutd.8, man/Makefile.am, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/Makefile.am, man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/shadow.3, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, etc/login.defs.hurd, etc/login.defs.linux, doc/ANNOUNCE, doc/Attic/CHANGES, doc/README, doc/README.linux, doc/README.pam, doc/WISHLIST, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, Attic/mkinstalldirs, configure.in, Makefile.am:
+       * contrib/Makefile.am, contrib/groupmems.shar, doc/LSM, po/el.po, po/fr.po, po/pl.po, po/sv.po, doc/README.mirrors, src/vipw.c, src/Makefile.am, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, lib/Makefile.am, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/dialchk.h, lib/dialup.h, lib/encrypt.c, lib/getdef.c, lib/getdef.h, lib/groupio.c, lib/groupio.h, lib/prototypes.h, lib/pwauth.c, lib/pwio.c, lib/pwio.h, lib/rad64.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadowio.h, lib/tcfsio.h, libmisc/chkname.h, libmisc/chowndir.c, libmisc/copydir.c, libmisc/entry.c, libmisc/failure.h, libmisc/getdate.h, libmisc/hushed.c, libmisc/loginprompt.c, libmisc/setupenv.c, libmisc/suauth.c, libmisc/sulog.c, man/Makefile.am, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/pl/Makefile.am, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/shadow.3, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, etc/login.defs.hurd, etc/login.defs.linux, doc/ANNOUNCE, doc/Attic/CHANGES, doc/README, doc/README.linux, doc/README.pam, doc/WISHLIST, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, Attic/mkinstalldirs, configure.in, Makefile.am:
        *** empty log message ***
 
-1999-08-27  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1999-08-27  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * doc/LSM, po/el.po, po/fr.po, po/pl.po, po/sv.po, debian/passwd.postinst, lib/dialchk.c, lib/getdef.c, lib/getpass.c, libmisc/limits.c, libmisc/rlogin.c, lib/pwauth.c, man/limits.5, man/newgrp.1, src/chage.c, src/dpasswd.c, src/gpasswd.c, src/login.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/sulogin.c, acconfig.h, configure.in, debian/Attic/logoutd, debian/changelog, debian/control.gnu, debian/control.linux, debian/login.postrm, debian/logoutd.init, debian/Makefile.am, debian/passwd.conffiles, debian/passwd.cron, debian/passwd.init, debian/passwd.postrm, debian/rules, doc/Attic/CHANGES, doc/README.mirrors, doc/WISHLIST, etc/login.defs.hurd, etc/login.defs.linux, etc/Makefile.am, lib/defines.h:
+       * doc/LSM, po/el.po, po/fr.po, po/pl.po, po/sv.po, debian/passwd.postinst, lib/dialchk.c, lib/getdef.c, lib/getpass.c, lib/pwauth.c, libmisc/limits.c, libmisc/rlogin.c, man/limits.5, man/newgrp.1, src/chage.c, src/dpasswd.c, src/gpasswd.c, src/login.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/sulogin.c, acconfig.h, configure.in, debian/Attic/logoutd, debian/Makefile.am, debian/changelog, debian/control.gnu, debian/control.linux, debian/login.postrm, debian/logoutd.init, debian/passwd.conffiles, debian/passwd.cron, debian/passwd.init, debian/passwd.postrm, debian/rules, doc/Attic/CHANGES, doc/README.mirrors, doc/WISHLIST, etc/Makefile.am, etc/login.defs.hurd, etc/login.defs.linux, lib/defines.h:
        *** empty log message ***
 
-1999-07-09  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1999-07-09  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * configure.in, contrib/Makefile.am, debian/changelog, doc/Attic/CHANGES, doc/LSM, doc/WISHLIST, libmisc/Makefile.am, lib/prototypes.h, lib/strcasecmp.c, man/faillog.8, po/el.po, po/pl.po, src/chfn.c, src/chsh.c, src/faillog.c, src/groupmod.c, src/grpconv.c, src/grpunconv.c, src/Makefile.am, src/newgrp.c, src/passwd.c, src/vipw.c:
+       * configure.in, contrib/Makefile.am, debian/changelog, doc/Attic/CHANGES, doc/LSM, doc/WISHLIST, lib/prototypes.h, lib/strcasecmp.c, libmisc/Makefile.am, man/faillog.8, po/el.po, po/pl.po, src/Makefile.am, src/chfn.c, src/chsh.c, src/faillog.c, src/groupmod.c, src/grpconv.c, src/grpunconv.c, src/newgrp.c, src/passwd.c, src/vipw.c:
        *** empty log message ***
 
-1999-06-07  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1999-06-07  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * redhat/Attic/shadow-utils.spec.in, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/logoutd.c, src/Makefile.am, src/mkpasswd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, contrib/Makefile.am, contrib/README, contrib/udbachk.tgz, debian/changelog, debian/rules, doc/Attic/CHANGES, doc/LSM, doc/README.linux, doc/README.mirrors, doc/README.platforms, doc/WISHLIST, lib/fputsx.c, lib/getpass.c, lib/Makefile.am, libmisc/login_desrpc.c, libmisc/pam_pass.c, libmisc/utmp.c, lib/pam_defs.h, lib/prototypes.h, lib/rcsid.h, man/login.1, po/el.po, po/pl.po, acconfig.h, configure.in:
+       * redhat/Attic/shadow-utils.spec.in, src/Makefile.am, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, contrib/Makefile.am, contrib/README, contrib/udbachk.tgz, debian/changelog, debian/rules, doc/Attic/CHANGES, doc/LSM, doc/README.linux, doc/README.mirrors, doc/README.platforms, doc/WISHLIST, lib/Makefile.am, lib/fputsx.c, lib/getpass.c, lib/pam_defs.h, lib/prototypes.h, lib/rcsid.h, libmisc/login_desrpc.c, libmisc/pam_pass.c, libmisc/utmp.c, man/login.1, po/el.po, po/pl.po, acconfig.h, configure.in:
        *** empty log message ***
 
-1999-03-07  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1999-03-07  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * po/pl.po, po/el.po, doc/LSM, src/useradd.c, src/su.c, src/pwconv.c, src/pwck.c, src/passwd.c, src/newusers.c, src/newgrp.c, src/logoutd.c, src/login.c, src/grpconv.c, src/grpck.c, src/groupadd.c, src/gpasswd.c, src/dpasswd.c, src/chfn.c, src/chage.c, man/usermod.8, man/useradd.8, man/limits.5, man/chage.1, libmisc/valid.c, libmisc/sub.c, libmisc/strtoday.c, libmisc/setupenv.c, libmisc/obscure.c, libmisc/limits.c, libmisc/env.c, lib/snprintf.h, lib/getdef.c, lib/encrypt.c, lib/defines.h, etc/login.defs.linux, doc/WISHLIST, doc/README.nls, doc/README.pam, doc/README.platforms, doc/README.mirrors, doc/README.linux, doc/Makefile.am, doc/Attic/CHANGES, debian/tar.c, debian/rules, debian/Attic/logoutd, debian/control, debian/changelog, configure.in:
        *** empty log message ***
 
-1998-12-28  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-12-28  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/usermod.c, src/userdel.c, src/useradd.c, src/sulogin.c, src/su.c, src/pwunconv.c, src/pwconv.c, src/pwck.c, src/passwd.c, src/newusers.c, src/newgrp.c, src/mkpasswd.c, src/logoutd.c, src/login.c, src/lastlog.c, src/id.c, src/grpunconv.c, src/grpconv.c, src/grpck.c, src/groups.c, src/groupmod.c, src/groupdel.c, src/groupadd.c, src/gpasswd.c, src/faillog.c, src/expiry.c, src/dpasswd.c, src/chsh.c, src/chpasswd.c, src/chfn.c, src/chage.c, po/Attic/doit, po/el.po, po/POTFILES.in, src/Makefile.am, man/usermod.8, man/userdel.8, man/useradd.8, man/sulogin.8, man/su.1, man/shadow.5, man/shadow.3, man/pwck.8, man/pwauth.8, man/pw_auth.3, man/porttime.5, man/passwd.5, man/passwd.1, man/newusers.8, man/newgrp.1, man/mkpasswd.8, man/logoutd.8, man/login.defs.5, man/login.1, man/lastlog.8, man/id.1, man/grpck.8, man/groups.1, man/groupmod.8, man/groupdel.8, man/groupadd.8, man/faillog.8, man/faillog.5, man/dpasswd.8, man/chsh.1, man/chpasswd.8, man/chfn.1, man/chage.1, libmisc/xmalloc.c, libmisc/sub.c, libmisc/suauth.c, libmisc/shell.c, libmisc/setupenv.c, libmisc/pam_pass.c, libmisc/obscure.c, libmisc/mail.c, libmisc/login_desrpc.c, libmisc/limits.c, libmisc/failure.c, libmisc/env.c, libmisc/console.c, libmisc/chowntty.c, libmisc/age.c, libmisc/addgrps.c, libmisc/Makefile.am, lib/strerror.c, lib/pwauth.c, lib/prototypes.h, lib/getpass.c, lib/getdef.c, lib/dialchk.c, lib/defines.h, lib/Makefile.am, doc/WISHLIST, doc/README.platforms, doc/README.mirrors, doc/README.linux, doc/README, doc/LSM, doc/Attic/CHANGES, debian/secure-su.copyright, debian/passwd.copyright, debian/login.copyright, debian/control, debian/changelog, configure.in, acconfig.h, Makefile.am:
+       * src/usermod.c, src/userdel.c, src/useradd.c, src/sulogin.c, src/su.c, src/pwunconv.c, src/pwconv.c, src/pwck.c, src/passwd.c, src/newusers.c, src/newgrp.c, src/mkpasswd.c, src/logoutd.c, src/login.c, src/lastlog.c, src/id.c, src/grpunconv.c, src/grpconv.c, src/grpck.c, src/groups.c, src/groupmod.c, src/groupdel.c, src/groupadd.c, src/gpasswd.c, src/faillog.c, src/expiry.c, src/dpasswd.c, src/chsh.c, src/chpasswd.c, src/chfn.c, src/chage.c, po/Attic/doit, po/POTFILES.in, po/el.po, src/Makefile.am, man/usermod.8, man/userdel.8, man/useradd.8, man/sulogin.8, man/su.1, man/shadow.5, man/shadow.3, man/pwck.8, man/pwauth.8, man/pw_auth.3, man/porttime.5, man/passwd.5, man/passwd.1, man/newusers.8, man/newgrp.1, man/mkpasswd.8, man/logoutd.8, man/login.defs.5, man/login.1, man/lastlog.8, man/id.1, man/grpck.8, man/groups.1, man/groupmod.8, man/groupdel.8, man/groupadd.8, man/faillog.8, man/faillog.5, man/dpasswd.8, man/chsh.1, man/chpasswd.8, man/chfn.1, man/chage.1, libmisc/xmalloc.c, libmisc/sub.c, libmisc/suauth.c, libmisc/shell.c, libmisc/setupenv.c, libmisc/pam_pass.c, libmisc/obscure.c, libmisc/mail.c, libmisc/login_desrpc.c, libmisc/limits.c, libmisc/failure.c, libmisc/env.c, libmisc/console.c, libmisc/chowntty.c, libmisc/age.c, libmisc/addgrps.c, libmisc/Makefile.am, lib/strerror.c, lib/pwauth.c, lib/prototypes.h, lib/getpass.c, lib/getdef.c, lib/dialchk.c, lib/defines.h, lib/Makefile.am, doc/WISHLIST, doc/README.platforms, doc/README.mirrors, doc/README.linux, doc/README, doc/LSM, doc/Attic/CHANGES, debian/secure-su.copyright, debian/passwd.copyright, debian/login.copyright, debian/control, debian/changelog, configure.in, acconfig.h, Makefile.am:
        *** empty log message ***
 
-1998-07-24  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-07-24  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/passwd.c, src/su.c, src/userdel.c, src/chage.c, src/faillog.c, src/login.c, src/Makefile.am, libmisc/chowntty.c, libmisc/pam_pass.c, libmisc/setugid.c, lib/pwauth.c, lib/tcfsio.c, lib/tcfsio.h, etc/pam.d/passwd, etc/pam.d/su, lib/commonio.c, lib/defines.h, lib/Makefile.am, lib/prototypes.h, doc/Makefile.am, doc/README.linux, doc/README.mirrors, doc/README.platforms, doc/WISHLIST, etc/Makefile.am, etc/pam.d/Makefile.am, doc/Attic/CHANGES, debian/changelog, configure.in, acconfig.h:
+       * src/passwd.c, src/su.c, src/userdel.c, src/Makefile.am, src/chage.c, src/faillog.c, src/login.c, lib/pwauth.c, lib/tcfsio.c, lib/tcfsio.h, libmisc/chowntty.c, libmisc/pam_pass.c, libmisc/setugid.c, etc/pam.d/passwd, etc/pam.d/su, lib/Makefile.am, lib/commonio.c, lib/defines.h, lib/prototypes.h, doc/Makefile.am, doc/README.linux, doc/README.mirrors, doc/README.platforms, doc/WISHLIST, etc/Makefile.am, etc/pam.d/Makefile.am, doc/Attic/CHANGES, debian/changelog, configure.in, acconfig.h:
        *** empty log message ***
 
-1998-06-26  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-06-26  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/passwd.c, src/usermod.c, man/faillog.8, man/pwconv.8, src/logoutd.c, lib/getpass.c, libmisc/copydir.c, doc/README.linux, doc/README.mirrors, doc/WISHLIST, lib/commonio.c, debian/changelog, doc/Attic/CHANGES, configure.in:
        *** empty log message ***
 
-1998-05-29  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-05-29  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * man/lastlog.8, man/login.1, src/usermod.c, doc/Attic/CHANGES, doc/README.linux, etc/login.defs.linux, lib/defines.h, debian/changelog, debian/login.copyright, debian/login.postinst, debian/passwd.copyright, debian/rules, debian/secure-su.copyright, configure.in, contrib/Makefile.am, contrib/shadow-anonftp.patch:
        *** empty log message ***
 
-1998-04-16  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-04-16  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/useradd.c, src/userdel.c, src/usermod.c, src/passwd.c, src/sulogin.c, src/groupdel.c, src/login.c, src/logoutd.c, src/newgrp.c, src/chage.c, src/dpasswd.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, redhat/Attic/shadow-970616.login.defs, redhat/Attic/shadow-970616-rh.patch, redhat/Attic/shadow-970616.useradd, redhat/Attic/shadow-970616-utuser.patch, redhat/Attic/shadow-utils-970616.spec, src/Makefile.am, libmisc/utmp.c, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970616-fix.patch, redhat/Attic/shadow-970616-glibc.patch, libmisc/limits.c, libmisc/log.c, libmisc/login_desrpc.c, libmisc/loginprompt.c, libmisc/obscure.c, libmisc/strtoday.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/copydir.c, libmisc/failure.c, lib/defines.h, lib/dialchk.c, lib/pwauth.c, lib/pwpack.c, doc/Attic/CHANGES, doc/cracklib26.diff, doc/README.linux, doc/WISHLIST, lib/commonio.c, acconfig.h, configure.in, debian/tar.c:
+       * src/useradd.c, src/userdel.c, src/usermod.c, src/passwd.c, src/sulogin.c, src/groupdel.c, src/login.c, src/logoutd.c, src/newgrp.c, src/chage.c, src/dpasswd.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, redhat/Attic/shadow-970616-rh.patch, redhat/Attic/shadow-970616-utuser.patch, redhat/Attic/shadow-970616.login.defs, redhat/Attic/shadow-970616.useradd, redhat/Attic/shadow-utils-970616.spec, src/Makefile.am, libmisc/utmp.c, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970616-fix.patch, redhat/Attic/shadow-970616-glibc.patch, libmisc/limits.c, libmisc/log.c, libmisc/login_desrpc.c, libmisc/loginprompt.c, libmisc/obscure.c, libmisc/strtoday.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/copydir.c, libmisc/failure.c, lib/defines.h, lib/dialchk.c, lib/pwauth.c, lib/pwpack.c, doc/Attic/CHANGES, doc/README.linux, doc/WISHLIST, doc/cracklib26.diff, lib/commonio.c, acconfig.h, configure.in, debian/tar.c:
        *** empty log message ***
 
-1998-04-02  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-04-02  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/groupmod.c, libmisc/sulog.c, lib/sgetspent.c, lib/sgetpwent.c, lib/sgetgrent.c, lib/putgrent.c, lib/gshadow.c, lib/getdef.c, lib/fputsx.c, lib/commonio.c, doc/README.linux, doc/README.mirrors, doc/Attic/CHANGES, configure.in:
        *** empty log message ***
 
-1998-01-30  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-01-30  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * Attic/install-sh, src/userdel.c, src/usermod.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/useradd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/groupmod.c, src/login.c, src/logoutd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/expiry.c, redhat/Attic/README, redhat/Attic/shadow-utils.spec.in, src/chage.c, src/Makefile.am, man/login.defs.5, man/useradd.8, man/usermod.8, redhat/Attic/Makefile.am, libmisc/pam_pass.c, libmisc/strtoday.c, libmisc/tz.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/obscure.c, libmisc/age.c, libmisc/env.c, libmisc/limits.c, lib/shadow.c, lib/shadowio.c, lib/shadowio.h, lib/strstr.c, lib/utent.c, lib/pwio.c, lib/pwio.h, lib/rmdir.c, lib/sgetspent.c, lib/sgroupio.c, lib/mkdir.c, lib/prototypes.h, lib/putgrent.c, lib/pwauth.c, lib/md5crypt.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/commonio.h, lib/defines.h, lib/encrypt.c, lib/getdef.c, lib/getdef.h, doc/Attic/automake-1.0.diff, doc/README.mirrors, doc/WISHLIST, lib/commonio.c, lib/Makefile.am, doc/ANNOUNCE, doc/Attic/CHANGES, doc/Makefile.am, doc/README.limits, doc/README.linux, debian/changelog, debian/login.copyright, debian/Makefile.am, debian/rules, Attic/mkinstalldirs, Attic/shadow-utils.spec, contrib/README, acconfig.h, Attic/aclocal.m4, configure.in, Makefile.am:
+       * Attic/install-sh, src/userdel.c, src/usermod.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/useradd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/groupmod.c, src/login.c, src/logoutd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/expiry.c, redhat/Attic/README, redhat/Attic/shadow-utils.spec.in, src/Makefile.am, src/chage.c, man/login.defs.5, man/useradd.8, man/usermod.8, redhat/Attic/Makefile.am, libmisc/pam_pass.c, libmisc/strtoday.c, libmisc/tz.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/obscure.c, libmisc/age.c, libmisc/env.c, libmisc/limits.c, lib/shadow.c, lib/shadowio.c, lib/shadowio.h, lib/strstr.c, lib/utent.c, lib/pwio.c, lib/pwio.h, lib/rmdir.c, lib/sgetspent.c, lib/sgroupio.c, lib/mkdir.c, lib/prototypes.h, lib/putgrent.c, lib/pwauth.c, lib/md5crypt.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/commonio.h, lib/defines.h, lib/encrypt.c, lib/getdef.c, lib/getdef.h, doc/Attic/automake-1.0.diff, doc/README.mirrors, doc/WISHLIST, lib/Makefile.am, lib/commonio.c, doc/ANNOUNCE, doc/Attic/CHANGES, doc/Makefile.am, doc/README.limits, doc/README.linux, debian/Makefile.am, debian/changelog, debian/login.copyright, debian/rules, Attic/mkinstalldirs, Attic/shadow-utils.spec, contrib/README, Attic/aclocal.m4, acconfig.h, configure.in, Makefile.am:
        *** empty log message ***
 
-1998-01-25  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1998-01-25  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * acconfig.h: *** empty log message ***
 
-1997-12-14  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-12-14  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * doc/Attic/CHANGES, debian/checksums, debian/rules, debian/Makefile.am, src/Makefile.am, src/userdel.c, src/usermod.c, src/pwck.c, src/useradd.c, src/mkpasswd.c, src/gpasswd.c, src/grpck.c, src/login.c, src/chage.c, src/chfn.c, src/chsh.c, man/shadowconfig.8, man/vipw.8, old/Makefile.am, old/pwunconv.8, man/login.defs.5, man/Makefile.am, man/pwconv.8, man/pwunconv.8, libmisc/limits.c, libmisc/rlogin.c, lib/prototypes.h, lib/pwdbm.c, lib/pwent.c, lib/shadow.c, doc/LSM, doc/WISHLIST, etc/limits, lib/grent.c, Attic/shadow-utils.spec, debian/changelog, configure.in:
+       * doc/Attic/CHANGES, debian/checksums, debian/rules, debian/Makefile.am, src/Makefile.am, src/userdel.c, src/usermod.c, src/pwck.c, src/useradd.c, src/mkpasswd.c, src/gpasswd.c, src/grpck.c, src/login.c, src/chage.c, src/chfn.c, src/chsh.c, man/shadowconfig.8, man/vipw.8, old/Makefile.am, old/pwunconv.8, man/Makefile.am, man/login.defs.5, man/pwconv.8, man/pwunconv.8, libmisc/limits.c, libmisc/rlogin.c, lib/prototypes.h, lib/pwdbm.c, lib/pwent.c, lib/shadow.c, doc/LSM, doc/WISHLIST, etc/limits, lib/grent.c, Attic/shadow-utils.spec, debian/changelog, configure.in:
        *** empty log message ***
 
-1997-12-08  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-12-08  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/userdel.c, src/usermod.c, src/shadowconfig.sh, src/su.c, src/sulogin.c, src/useradd.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/newgrp.c, src/newusers.c, src/logoutd.c, src/mkpasswd.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/Makefile.am, old/Makefile.am, old/pwconv.8, old/vipw.8, man/limits.5, man/Makefile.am, man/pwconv.8, man/shadowconfig.8, man/vipw.8, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/rlogin.c, libmisc/motd.c, libmisc/myname.c, libmisc/obscure.c, libmisc/pam_pass.c, libmisc/pwd2spwd.c, libmisc/pwd_init.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/failure.h, libmisc/fields.c, libmisc/getdate.c, libmisc/getdate.h, libmisc/getdate.y, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chkname.h, libmisc/chkshell.c, libmisc/addgrps.c, libmisc/Makefile.am, lib/strdup.c, lib/strerror.c, lib/strstr.c, lib/utent.c, lib/sgroupio.c, lib/shadow.c, lib/shadowio.c, lib/spdbm.c, lib/sppack.c, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/rad64.c, lib/pwauth.c, lib/pwdbm.c, lib/pwent.c, lib/pwio.c, lib/pwpack.c, lib/mkdir.c, lib/port.c, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/gsdbm.c, lib/gshadow.c, lib/gspack.c, lib/lockpw.c, lib/md5.c, lib/md5crypt.c, lib/grdbm.c, lib/grent.c, lib/groupio.c, lib/grpack.c, lib/getpass.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/dialchk.c, lib/dialchk.h, doc/Attic/automake-1.0.diff, etc/limits, etc/login.defs.linux, lib/Makefile.am, doc/Attic/CHANGES, doc/README.linux, doc/README.mirrors, doc/WISHLIST, debian/login.conffiles, debian/login.postinst, debian/passwd.postinst, debian/porttime, debian/rules, debian/secure-su.README, debian/securetty, contrib/pwdauth.c, debian/changelog, debian/control, acconfig.h, Attic/aclocal.m4, Attic/shadow-utils.spec, configure.in, Makefile.am:
+       * src/userdel.c, src/usermod.c, src/Attic/shadowconfig.sh, src/su.c, src/sulogin.c, src/useradd.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/newgrp.c, src/newusers.c, src/logoutd.c, src/mkpasswd.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/Makefile.am, src/chage.c, src/chfn.c, src/chpasswd.c, old/Makefile.am, old/pwconv.8, old/vipw.8, man/Makefile.am, man/limits.5, man/pwconv.8, man/shadowconfig.8, man/vipw.8, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/rlogin.c, libmisc/motd.c, libmisc/myname.c, libmisc/obscure.c, libmisc/pam_pass.c, libmisc/pwd2spwd.c, libmisc/pwd_init.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/failure.h, libmisc/fields.c, libmisc/getdate.c, libmisc/getdate.h, libmisc/getdate.y, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chkname.h, libmisc/chkshell.c, lib/strdup.c, lib/strerror.c, lib/strstr.c, lib/utent.c, libmisc/Makefile.am, libmisc/addgrps.c, lib/sgroupio.c, lib/shadow.c, lib/shadowio.c, lib/spdbm.c, lib/sppack.c, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/rad64.c, lib/pwauth.c, lib/pwdbm.c, lib/pwent.c, lib/pwio.c, lib/pwpack.c, lib/mkdir.c, lib/port.c, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/gsdbm.c, lib/gshadow.c, lib/gspack.c, lib/lockpw.c, lib/md5.c, lib/md5crypt.c, lib/grdbm.c, lib/grent.c, lib/groupio.c, lib/grpack.c, lib/getpass.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/dialchk.c, lib/dialchk.h, doc/Attic/automake-1.0.diff, etc/limits, etc/login.defs.linux, lib/Makefile.am, doc/Attic/CHANGES, doc/README.linux, doc/README.mirrors, doc/WISHLIST, debian/login.conffiles, debian/login.postinst, debian/passwd.postinst, debian/porttime, debian/rules, debian/secure-su.README, debian/securetty, contrib/pwdauth.c, debian/changelog, debian/control, Attic/aclocal.m4, Attic/shadow-utils.spec, acconfig.h, configure.in, Makefile.am:
        *** empty log message ***
 
-1997-10-01  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-10-01  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * debian/changelog, src/chpasswd.c, libmisc/login_access.c, lib/commonio.h, lib/sgroupio.c, lib/shadowio.c, etc/login.defs.linux, doc/Attic/CHANGES, doc/LSM, doc/README.mirrors, doc/WISHLIST, Attic/shadow-utils.spec:
        *** empty log message ***
 
-1997-09-30  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-09-30  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/useradd.c, src/userdel.c, src/usermod.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/newusers.c, src/passwd.c, src/pwck.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/login.c, src/groupmod.c, src/dpasswd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/Makefile.am, old/Attic/install-sh, old/pwconv-old.8, old/pwunconv-old.8, old/Makefile.am, man/pwconv.8, man/pwunconv.8, libmisc/setugid.c, libmisc/shell.c, libmisc/utmp.c, libmisc/mail.c, libmisc/obscure.c, libmisc/pam_pass.c, libmisc/salt.c, libmisc/isexpired.c, libmisc/login_access.c, libmisc/env.c, libmisc/fields.c, libmisc/addgrps.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, lib/strerror.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadowio.c, lib/shadowio.h, lib/snprintf.c, lib/snprintf.h, lib/putgrent.c, lib/pwauth.c, lib/pwent.c, lib/getpass.c, lib/grent.c, lib/prototypes.h, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/encrypt.c, lib/getdef.c, lib/Makefile.am, etc/login.defs.linux, doc/README.linux, doc/README.mirrors, doc/WISHLIST, doc/Attic/CHANGES, doc/LSM, doc/Makefile.am, debian/rules, debian/changelog, contrib/adduser.c, configure.in, acconfig.h:
        *** empty log message ***
 
-1997-09-29  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-09-29  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * man/chpasswd.8, man/pwconv.8, man/pwunconv.8, man/su.1, man/Makefile.am:
        *** empty log message ***
 
-1997-06-16  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-06-16  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * doc/Attic/console.c.spec, doc/console.c.spec.txt, doc/Makefile.am, doc/WISHLIST, doc/Attic/CHANGES, debian/changelog, src/shadowconfig.sh, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970502-config.patch, redhat/Attic/shadow-utils.spec, doc/Attic/README.shadow-paper, doc/README.mirrors, doc/README.linux, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, Attic/shadow-utils.spec, configure.in, Makefile.am:
+       * doc/Attic/console.c.spec, doc/Makefile.am, doc/WISHLIST, doc/console.c.spec.txt, doc/Attic/CHANGES, debian/changelog, src/Attic/shadowconfig.sh, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970502-config.patch, redhat/Attic/shadow-utils.spec, doc/Attic/README.shadow-paper, doc/README.mirrors, doc/README.linux, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, Attic/shadow-utils.spec, Makefile.am, configure.in:
        *** empty log message ***
 
-1997-06-01  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-06-01  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * debian/changelog, src/userdel.c, src/usermod.c, src/pwck.c, src/pwunconv.c, src/useradd.c, src/grpunconv.c, src/newusers.c, src/passwd.c, src/expiry.c, src/grpconv.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/Makefile.am, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970502-config.patch, redhat/Attic/shadow-utils.spec, libmisc/mail.c, libmisc/login_desrpc.c, lib/pwio.h, lib/shadowio.c, lib/shadowio.h, lib/prototypes.h, lib/pwauth.c, lib/pwio.c, lib/commonio.c, lib/defines.h, doc/README.linux, doc/WISHLIST, doc/Attic/CHANGES, doc/INSTALL, Attic/install-sh, Attic/mkinstalldirs, acconfig.h, configure.in, Makefile.am:
+       * debian/changelog, src/userdel.c, src/usermod.c, src/pwck.c, src/pwunconv.c, src/useradd.c, src/grpunconv.c, src/newusers.c, src/passwd.c, src/expiry.c, src/grpconv.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/Makefile.am, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970502-config.patch, redhat/Attic/shadow-utils.spec, libmisc/mail.c, libmisc/login_desrpc.c, lib/pwio.h, lib/shadowio.c, lib/shadowio.h, lib/prototypes.h, lib/pwauth.c, lib/pwio.c, lib/commonio.c, lib/defines.h, doc/README.linux, doc/WISHLIST, doc/Attic/CHANGES, doc/INSTALL, Attic/install-sh, Attic/mkinstalldirs, Makefile.am, acconfig.h, configure.in:
        *** empty log message ***
 
-1997-05-02  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-05-02  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/shadowconfig.sh, src/Makefile.am, man/Makefile.am, libmisc/mail.c, libmisc/salt.c, lib/sgroupio.c, lib/shadowio.c, lib/groupio.c, lib/pwio.c, etc/Makefile.am, doc/WISHLIST, doc/Attic/CHANGES, debian/Attic/shadowconfig, debian/changelog, debian/control, debian/Makefile.am, debian/rules, configure.in, Attic/configure, shlib/Attic/Makefile.in, man/Attic/Makefile.in, libmisc/Attic/Makefile.in, lib/Attic/Makefile.in, etc/Attic/Makefile.in, doc/Attic/Makefile.in, contrib/Attic/Makefile.in, Attic/Makefile.in, man/userdel.8, man/usermod.8, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/limits.5, man/login.1, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, libmisc/valid.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/utmp.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/sub.c, libmisc/setugid.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/login_access.c, libmisc/loginprompt.c, libmisc/motd.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/age.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, lib/utent.c, lib/shadow_.h, lib/spdbm.c, lib/sppack.c, lib/strstr.c, lib/shadow.c, lib/sgetpwent.c, lib/sgetspent.c, lib/pwpack.c, lib/rad64.c, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/port.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.c, lib/lastlog_.h, lib/lockpw.c, lib/mkdir.c, lib/port.c, lib/grpack.c, lib/gsdbm.c, lib/gshadow.c, lib/gshadow_.h, lib/gspack.c, lib/getdef.c, lib/getpass.c, lib/grdbm.c, lib/grent.c, lib/dialup.h, lib/encrypt.c, lib/faillog.h, lib/fputsx.c, lib/commonio.c, lib/defines.h, lib/dialchk.c, lib/dialup.c, etc/login.defs, etc/login.defs.linux, doc/README.linux, doc/LICENSE, doc/Makefile.am, doc/README, doc/HOWTO, doc/ANNOUNCE, debian/secure-su.conffiles, debian/secure-su.copyright, debian/secure-su.postrm, debian/secure-su.preinst, debian/secure-su.README, debian/securetty, debian/passwd.conffiles, debian/passwd.copyright, debian/passwd.postinst, debian/porttime, debian/Attic/logoutd, debian/login.conffiles, debian/login.copyright, debian/login.postinst, debian/login.postrm, debian/login.preinst, debian/login.prerm, acconfig.h, Attic/config.h.in, Makefile.am, old/Attic/Makefile.in, old/scologin.c, old/orig-config.h, old/pwconv-old.c, old/pwd.h.m4, old/pwunconv-old.c, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/config.h.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/Makefile.am, old/Makefile.linux, src/Attic/Makefile.in, src/pwconv.c, src/userdel.c, src/usermod.c, src/useradd.c, src/su.c, src/sulogin.c, src/Attic/pwconv5.c, src/Attic/scologin.c, src/pwck.c, src/pwunconv.c, src/newusers.c, src/passwd.c, src/patchlevel.h, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/grpck.c, src/grpconv.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/chfn.c, src/chpasswd.c, src/chage.c:
+       * src/Attic/shadowconfig.sh, src/Makefile.am, man/Makefile.am, libmisc/mail.c, libmisc/salt.c, lib/sgroupio.c, lib/shadowio.c, lib/groupio.c, lib/pwio.c, etc/Makefile.am, doc/WISHLIST, doc/Attic/CHANGES, debian/Attic/shadowconfig, debian/Makefile.am, debian/changelog, debian/control, debian/rules, configure.in, Attic/configure, shlib/Attic/Makefile.in, man/Attic/Makefile.in, libmisc/Attic/Makefile.in, lib/Attic/Makefile.in, etc/Attic/Makefile.in, doc/Attic/Makefile.in, contrib/Attic/Makefile.in, Attic/Makefile.in, man/userdel.8, man/usermod.8, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/limits.5, man/login.1, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, libmisc/valid.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/utmp.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/sub.c, libmisc/setugid.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/login_access.c, libmisc/loginprompt.c, libmisc/motd.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/age.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, lib/utent.c, lib/shadow_.h, lib/spdbm.c, lib/sppack.c, lib/strstr.c, lib/shadow.c, lib/sgetpwent.c, lib/sgetspent.c, lib/pwpack.c, lib/rad64.c, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/port.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.c, lib/lastlog_.h, lib/lockpw.c, lib/mkdir.c, lib/port.c, lib/grpack.c, lib/gsdbm.c, lib/gshadow.c, lib/gshadow_.h, lib/gspack.c, lib/getdef.c, lib/getpass.c, lib/grdbm.c, lib/grent.c, lib/dialup.h, lib/encrypt.c, lib/faillog.h, lib/fputsx.c, lib/commonio.c, lib/defines.h, lib/dialchk.c, lib/dialup.c, etc/login.defs, etc/login.defs.linux, doc/README.linux, doc/LICENSE, doc/Makefile.am, doc/README, doc/HOWTO, doc/ANNOUNCE, debian/secure-su.README, debian/secure-su.conffiles, debian/secure-su.copyright, debian/secure-su.postrm, debian/secure-su.preinst, debian/securetty, debian/passwd.conffiles, debian/passwd.copyright, debian/passwd.postinst, debian/porttime, debian/Attic/logoutd, debian/login.conffiles, debian/login.copyright, debian/login.postinst, debian/login.postrm, debian/login.preinst, debian/login.prerm, Attic/config.h.in, acconfig.h, Makefile.am, old/Attic/Makefile.in, old/scologin.c, old/orig-config.h, old/pwconv-old.c, old/pwd.h.m4, old/pwunconv-old.c, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/config.h.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/Makefile.am, old/Makefile.linux, src/Attic/Makefile.in, src/pwconv.c, src/userdel.c, src/usermod.c, src/useradd.c, src/su.c, src/sulogin.c, src/Attic/pwconv5.c, src/Attic/scologin.c, src/pwck.c, src/pwunconv.c, src/Attic/patchlevel.h, src/newusers.c, src/passwd.c, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/grpck.c, src/grpconv.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/chfn.c, src/chpasswd.c, src/chage.c:
        *** empty log message ***
 
-1997-02-11  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-02-11  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/groupadd.c, src/useradd.c, libmisc/setupenv.c, lib/sgroupio.c, lib/shadowio.c, lib/groupio.c, lib/pwio.c, lib/commonio.c, lib/Makefile.am, doc/Attic/CHANGES, doc/HOWTO, configure.in, README:
+       * src/groupadd.c, src/useradd.c, libmisc/setupenv.c, lib/sgroupio.c, lib/shadowio.c, lib/groupio.c, lib/pwio.c, lib/Makefile.am, lib/commonio.c, doc/Attic/CHANGES, doc/HOWTO, README, configure.in:
        *** empty log message ***
 
-1997-01-08  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1997-01-08  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * src/groupadd.c, lib/commonio.c, README, src/useradd.c, src/userdel.c, src/usermod.c, src/Attic/pwconv5.c, src/pwconv.c, src/su.c, src/passwd.c, src/pwck.c, src/grpunconv.c, src/login.c, src/logoutd.c, src/newgrp.c, src/grpck.c, src/grpconv.c, src/faillog.c, src/gpasswd.c, src/groupmod.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, libmisc/ttytype.c, libmisc/utmp.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/shell.c, libmisc/failure.c, libmisc/log.c, libmisc/loginprompt.c, libmisc/myname.c, libmisc/chkname.c, libmisc/Makefile.am, lib/shadowio.h, lib/sgetpwent.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadow.c, lib/shadowio.c, lib/pwent.c, lib/pwio.c, lib/pwio.h, lib/groupio.c, lib/groupio.h, lib/gshadow.c, lib/prototypes.h, lib/putgrent.c, lib/defines.h, lib/faillog.h, lib/getdef.c, doc/README.linux, doc/WISHLIST, etc/login.defs.linux, lib/Makefile.am, doc/Attic/CHANGES, doc/HOWTO, acconfig.h, configure.in:
+       * src/groupadd.c, lib/commonio.c, README, src/useradd.c, src/userdel.c, src/usermod.c, src/Attic/pwconv5.c, src/pwconv.c, src/su.c, src/passwd.c, src/pwck.c, src/grpunconv.c, src/login.c, src/logoutd.c, src/newgrp.c, src/grpck.c, src/grpconv.c, src/faillog.c, src/gpasswd.c, src/groupmod.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, libmisc/ttytype.c, libmisc/utmp.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/shell.c, libmisc/failure.c, libmisc/log.c, libmisc/loginprompt.c, libmisc/myname.c, lib/shadowio.h, libmisc/Makefile.am, libmisc/chkname.c, lib/sgetpwent.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadow.c, lib/shadowio.c, lib/pwent.c, lib/pwio.c, lib/pwio.h, lib/groupio.c, lib/groupio.h, lib/gshadow.c, lib/prototypes.h, lib/putgrent.c, lib/defines.h, lib/faillog.h, lib/getdef.c, doc/README.linux, doc/WISHLIST, etc/login.defs.linux, lib/Makefile.am, doc/Attic/CHANGES, doc/HOWTO, acconfig.h, configure.in:
        *** empty log message ***
 
-1996-10-27  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1996-10-27  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/usermod.c, src/grpck.c, src/useradd.c, src/userdel.c, src/chsh.c, src/gpasswd.c, libmisc/isexpired.c, libmisc/limits.c, lib/sgroupio.c, lib/shadowio.c, lib/commonio.c, lib/groupio.c, lib/pwio.c, doc/Attic/CHANGES, doc/README.linux, doc/WISHLIST, Attic/configure, configure.in:
        *** empty log message ***
 
-1996-09-25  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1996-09-25  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/usermod.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/su.c, src/Attic/pwconv5.c, src/newgrp.c, src/passwd.c, src/pwck.c, src/grpck.c, src/login.c, src/logoutd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/chfn.c, src/chsh.c, src/chage.c, libmisc/strtoday.c, libmisc/env.c, libmisc/fields.c, libmisc/isexpired.c, libmisc/setupenv.c, lib/getdef.c, lib/prototypes.h, lib/rad64.c, lib/defines.h, etc/login.defs.linux, doc/README.linux, doc/WISHLIST, doc/Attic/CHANGES, Attic/configure, configure.in, Attic/config.h.in:
        *** empty log message ***
 
-1996-09-20  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1996-09-20  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/usermod.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/newusers.c, src/passwd.c, src/pwck.c, src/grpck.c, src/login.c, src/logoutd.c, src/newgrp.c, src/groupdel.c, src/groupmod.c, src/chsh.c, src/dpasswd.c, src/gpasswd.c, src/groupadd.c, src/Attic/Makefile.in, src/chage.c, src/chfn.c, src/Makefile.am, libmisc/shell.c, libmisc/suauth.c, libmisc/sub.c, libmisc/ttytype.c, libmisc/env.c, libmisc/setugid.c, libmisc/setupenv.c, libmisc/chowntty.c, lib/prototypes.h, lib/getdef.c, doc/Attic/CHANGES, doc/WISHLIST:
        *** empty log message ***
 
-1996-09-10  Marek Micha³kiewicz  <marekm@linux.org.pl>
+1996-09-10  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
        * src/su.c, src/sulogin.c, src/usermod.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/pwconv.c, src/Attic/Makefile.in, src/chfn.c, src/chsh.c, src/grpunconv.c, src/login.c, src/Makefile.am, man/useradd.8, man/userdel.8, man/usermod.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, libmisc/isexpired.c, libmisc/obscure.c, libmisc/setupenv.c, libmisc/utmp.c, libmisc/age.c, lib/defines.h, lib/getdef.c, lib/getpass.c, etc/limits, etc/login.access, etc/login.defs.linux, doc/Attic/CHANGES, doc/README.linux, doc/WISHLIST, contrib/Attic/Makefile.in, contrib/Makefile.am, Attic/configure, configure.in:
        *** empty log message ***
 
-1996-08-10  Marek Micha³kiewicz  <marekm@linux.org.pl>
-
-       * old/Attic/install-sh, old/config.h.linux, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/Makefile.am, old/Makefile.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/orig-config.h, old/pwd.h.m4, shlib/Attic/Makefile.in, shlib/Makefile.am, shlib/Makefile.in.saved:
-       960810 - first version under cvs
+1996-08-10  Marek Micha³kiewicz  <marekm@pld.org.pl>
 
-       * old/Attic/install-sh, old/config.h.linux, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/Makefile.am, old/Makefile.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/orig-config.h, old/pwd.h.m4, shlib/Attic/Makefile.in, shlib/Makefile.am, shlib/Makefile.in.saved:
+       * old/Attic/install-sh, old/Makefile.am, old/Makefile.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/config.h.linux, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/orig-config.h, old/pwd.h.m4, shlib/Attic/Makefile.am, shlib/Attic/Makefile.in, shlib/Attic/Makefile.in.saved:
        New file.
 
-       * contrib/adduser2.sh, contrib/adduser.c, contrib/adduser-old.c, contrib/adduser.sh, contrib/Attic/Makefile.in, contrib/atudel, contrib/Makefile.am, contrib/pwdauth.c, contrib/README, doc/ANNOUNCE, doc/Attic/automake-1.0.diff, doc/Attic/CHANGES, doc/Attic/console.c.spec, doc/Attic/Makefile.in, doc/HOWTO, doc/LICENSE, doc/Makefile.am, doc/README, doc/README.limits, doc/README.linux, doc/README.sun4, doc/WISHLIST, etc/Attic/Makefile.in, etc/login.access, etc/login.defs, etc/login.defs.linux, etc/Makefile.am, old/Attic/Makefile.in, src/Attic/pwconv5.c, src/Attic/scologin.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, src/gpasswd.c, src/groups.c, src/grpconv.c, src/id.c, src/login.c, src/newgrp.c, src/passwd.c, src/patchlevel.h, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c:
+       * contrib/adduser-old.c, contrib/adduser.sh, contrib/adduser2.sh, contrib/atudel, doc/README.sun4:
        960810 - first version under cvs
 
-       * contrib/adduser2.sh, contrib/adduser.c, contrib/adduser-old.c, contrib/adduser.sh, contrib/Attic/Makefile.in, contrib/atudel, contrib/Makefile.am, contrib/pwdauth.c, contrib/README, doc/ANNOUNCE, doc/Attic/automake-1.0.diff, doc/Attic/CHANGES, doc/Attic/console.c.spec, doc/Attic/Makefile.in, doc/HOWTO, doc/LICENSE, doc/Makefile.am, doc/README, doc/README.limits, doc/README.linux, doc/README.sun4, doc/WISHLIST, etc/Attic/Makefile.in, etc/login.access, etc/login.defs, etc/login.defs.linux, etc/Makefile.am, old/Attic/Makefile.in, src/Attic/pwconv5.c, src/Attic/scologin.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, src/gpasswd.c, src/groups.c, src/grpconv.c, src/id.c, src/login.c, src/newgrp.c, src/passwd.c, src/patchlevel.h, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c:
+       * contrib/Attic/Makefile.in, contrib/Makefile.am, contrib/README, contrib/adduser.c, contrib/pwdauth.c, doc/ANNOUNCE, doc/Attic/CHANGES, doc/Attic/Makefile.in, doc/Attic/automake-1.0.diff, doc/Attic/console.c.spec, doc/HOWTO, doc/LICENSE, doc/Makefile.am, doc/README, doc/README.limits, doc/README.linux, doc/WISHLIST, etc/Attic/Makefile.in, etc/Makefile.am, etc/login.access, etc/login.defs, etc/login.defs.linux, old/Attic/Makefile.in, src/Attic/patchlevel.h, src/Attic/pwconv5.c, src/Attic/scologin.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, src/gpasswd.c, src/groups.c, src/grpconv.c, src/id.c, src/login.c, src/newgrp.c, src/passwd.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c:
        New file.
 
-       * lib/defines.h, lib/dialup.h, lib/faillog.h, lib/getdef.h, lib/grdbm.c, lib/grent.c, lib/groupio.h, lib/grpack.c, lib/gsdbm.c, lib/gshadow_.h, lib/gspack.c, lib/lastlog_.h, lib/md5.c, lib/md5crypt.c, lib/md5.h, lib/mkdir.c, lib/port.h, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/pwio.h, lib/pwpack.c, lib/rcsid.h, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/sgroupio.h, lib/shadow.c, lib/shadow_.h, lib/shadowio.c, lib/shadowio.h, lib/spdbm.c, lib/sppack.c, lib/strdup.c, lib/strstr.c, lib/utent.c, src/Attic/Makefile.in, src/chpasswd.c, src/dpasswd.c, src/faillog.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/grpck.c, src/lastlog.c, src/logoutd.c, src/Makefile.am, src/mkpasswd.c, src/newusers.c, src/pwck.c, src/useradd.c, src/userdel.c, src/usermod.c:
-       960810 - first version under cvs
-
-       * lib/defines.h, lib/dialup.h, lib/faillog.h, lib/getdef.h, lib/grdbm.c, lib/grent.c, lib/groupio.h, lib/grpack.c, lib/gsdbm.c, lib/gshadow_.h, lib/gspack.c, lib/lastlog_.h, lib/md5.c, lib/md5crypt.c, lib/md5.h, lib/mkdir.c, lib/port.h, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/pwio.h, lib/pwpack.c, lib/rcsid.h, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/sgroupio.h, lib/shadow.c, lib/shadow_.h, lib/shadowio.c, lib/shadowio.h, lib/spdbm.c, lib/sppack.c, lib/strdup.c, lib/strstr.c, lib/utent.c, src/Attic/Makefile.in, src/chpasswd.c, src/dpasswd.c, src/faillog.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/grpck.c, src/lastlog.c, src/logoutd.c, src/Makefile.am, src/mkpasswd.c, src/newusers.c, src/pwck.c, src/useradd.c, src/userdel.c, src/usermod.c:
-       New file.
-
-       * lib/Attic/Makefile.in, lib/commonio.c, lib/dialchk.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/Makefile.am, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/motd.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, lib/port.c, lib/pwauth.c, lib/pwio.c, lib/rad64.c, lib/sgroupio.c, man/Attic/Makefile.in, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/login.defs.5, man/logoutd.8, man/Makefile.am, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8:
-       960810 - first version under cvs
-
-       * lib/Attic/Makefile.in, lib/commonio.c, lib/dialchk.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/Makefile.am, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/motd.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, lib/port.c, lib/pwauth.c, lib/pwio.c, lib/rad64.c, lib/sgroupio.c, man/Attic/Makefile.in, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/login.defs.5, man/logoutd.8, man/Makefile.am, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8:
-       New file.
-
-       * acconfig.h, Attic/aclocal.m4, Attic/config.h.in, Attic/configure, Attic/install-sh, Attic/Makefile.in, Attic/mkinstalldirs, Attic/stamp-h.in, configure.in, libmisc/addgrps.c, libmisc/Attic/Makefile.in, libmisc/Makefile.am, Makefile.am, README:
-       960810 - first version under cvs
+       * lib/md5.h: 960810 - first version under cvs
 
-       * acconfig.h, Attic/aclocal.m4, Attic/config.h.in, Attic/configure, Attic/install-sh, Attic/Makefile.in, Attic/mkinstalldirs, Attic/stamp-h.in, configure.in, libmisc/addgrps.c, libmisc/Attic/Makefile.in, libmisc/Makefile.am, Makefile.am, README:
+       * lib/defines.h, lib/dialup.h, lib/faillog.h, lib/getdef.h, lib/grdbm.c, lib/grent.c, lib/groupio.h, lib/grpack.c, lib/gsdbm.c, lib/gshadow_.h, lib/gspack.c, lib/lastlog_.h, lib/md5.c, lib/md5crypt.c, lib/mkdir.c, lib/port.h, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/pwio.h, lib/pwpack.c, lib/rcsid.h, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/sgroupio.h, lib/shadow.c, lib/shadow_.h, lib/shadowio.c, lib/shadowio.h, lib/spdbm.c, lib/sppack.c, lib/strdup.c, lib/strstr.c, lib/utent.c, src/Attic/Makefile.in, src/Makefile.am, src/chpasswd.c, src/dpasswd.c, src/faillog.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/grpck.c, src/lastlog.c, src/logoutd.c, src/mkpasswd.c, src/newusers.c, src/pwck.c, src/useradd.c, src/userdel.c, src/usermod.c, lib/Attic/Makefile.in, lib/Makefile.am, lib/commonio.c, lib/dialchk.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/port.c, lib/pwauth.c, lib/pwio.c, lib/rad64.c, lib/sgroupio.c, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/motd.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, man/Attic/Makefile.in, man/Makefile.am, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, Attic/Makefile.in, Attic/aclocal.m4, Attic/config.h.in, Attic/configure, Attic/install-sh, Attic/mkinstalldirs, Attic/stamp-h.in, Makefile.am, README, acconfig.h, configure.in, libmisc/Attic/Makefile.in, libmisc/Makefile.am, libmisc/addgrps.c:
        New file.
 
index 867a0aac22a607dfd39eb399617ae733ba3200f3..58ce43a1e80587f7e9c9c93c6d28fad82b8f0498 100644 (file)
@@ -2,7 +2,7 @@
 
 EXTRA_DIST = NEWS README TODO shadow-utils.spec.in
 
-AUTOMAKE_OPTIONS = 1.0 foreign
+AUTOMAKE_OPTIONS = 1.5 dist-bzip2 foreign
 
-SUBDIRS = intl po man lib libmisc src \
+SUBDIRS = intl po man libmisc lib src \
        contrib debian doc etc
index e7d90ba51e5feb14377a3773cbca9cfdebc8cc30..d7771a050239608d5e896cdf4ec80145da4923fc 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
@@ -10,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
 
 SHELL = @SHELL@
 
@@ -31,13 +33,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = .
 
 ACLOCAL = @ACLOCAL@
@@ -49,9 +47,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -60,113 +57,137 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
 EXTRA_DIST = NEWS README TODO shadow-utils.spec.in
 
-AUTOMAKE_OPTIONS = 1.0 foreign
+AUTOMAKE_OPTIONS = 1.5 dist-bzip2 foreign
 
-SUBDIRS = intl po man lib libmisc src  contrib debian doc etc
+SUBDIRS = intl po man libmisc lib src \
+       contrib debian doc etc
 
+subdir = .
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
 CONFIG_HEADER = config.h
-CONFIG_CLEAN_FILES =  shadow-utils.spec
-DIST_COMMON =  README ./stamp-h.in ABOUT-NLS ChangeLog Makefile.am \
-Makefile.in NEWS TODO acconfig.h aclocal.m4 config.guess config.h.in \
-config.sub configure configure.in install-sh ltconfig ltmain.sh missing \
-mkinstalldirs shadow-utils.spec.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+CONFIG_CLEAN_FILES = intl/Makefile shadow-utils.spec
+DIST_SOURCES =
+
+RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \
+       uninstall-info-recursive all-recursive install-data-recursive \
+       install-exec-recursive installdirs-recursive install-recursive \
+       uninstall-recursive check-recursive installcheck-recursive
+DIST_COMMON = README ./stamp-h.in ABOUT-NLS ChangeLog Makefile.am \
+       Makefile.in NEWS TODO acconfig.h aclocal.m4 config.guess \
+       config.h.in config.sub configure configure.in depcomp \
+       install-sh ltmain.sh missing mkinstalldirs shadow-utils.spec.in
+DIST_SUBDIRS = $(SUBDIRS)
+all: config.h
+       $(MAKE) $(AM_MAKEFLAGS) all-recursive
 
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
 
-$(ACLOCAL_M4):  configure.in 
-       cd $(srcdir) && $(ACLOCAL)
+clean-libtool:
+       -rm -rf .libs _libs
 
-config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --foreign  Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$@ $(SHELL) ./config.status
+
+$(top_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
        $(SHELL) ./config.status --recheck
-$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+$(srcdir)/configure:  $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
        cd $(srcdir) && $(AUTOCONF)
 
+$(ACLOCAL_M4):  configure.in 
+       cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
 config.h: stamp-h
        @if test ! -f $@; then \
                rm -f stamp-h; \
                $(MAKE) stamp-h; \
        else :; fi
 stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
+       @rm -f stamp-h stamp-hT
+       @echo timestamp > stamp-hT 2> /dev/null
        cd $(top_builddir) \
          && CONFIG_FILES= CONFIG_HEADERS=config.h \
             $(SHELL) ./config.status
-       @echo timestamp > stamp-h 2> /dev/null
-$(srcdir)/config.h.in: $(srcdir)/stamp-h.in
+       @mv stamp-hT stamp-h
+$(srcdir)/config.h.in:  $(srcdir)/./stamp-h.in
        @if test ! -f $@; then \
-               rm -f $(srcdir)/stamp-h.in; \
-               $(MAKE) $(srcdir)/stamp-h.in; \
+               rm -f $(srcdir)/./stamp-h.in; \
+               $(MAKE) $(srcdir)/./stamp-h.in; \
        else :; fi
-$(srcdir)/stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h
+$(srcdir)/./stamp-h.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) $(top_srcdir)/acconfig.h
+       @rm -f $(srcdir)/./stamp-h.in $(srcdir)/./stamp-h.inT
+       @echo timestamp > $(srcdir)/./stamp-h.inT 2> /dev/null
        cd $(top_srcdir) && $(AUTOHEADER)
-       @echo timestamp > $(srcdir)/stamp-h.in 2> /dev/null
-
-mostlyclean-hdr:
-
-clean-hdr:
+       @mv $(srcdir)/./stamp-h.inT $(srcdir)/./stamp-h.in
 
 distclean-hdr:
        -rm -f config.h
-
-maintainer-clean-hdr:
+intl/Makefile: $(top_builddir)/config.status $(top_srcdir)/intl/Makefile.in
+       cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= CONFIG_LINKS= $(SHELL) ./config.status
 shadow-utils.spec: $(top_builddir)/config.status shadow-utils.spec.in
-       cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
+       cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= CONFIG_LINKS= $(SHELL) ./config.status
+uninstall-info-am:
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
@@ -174,12 +195,7 @@ shadow-utils.spec: $(top_builddir)/config.status shadow-utils.spec.in
 # (1) if the variable is set in `config.status', edit `config.status'
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
-
-@SET_MAKE@
-
-all-recursive install-data-recursive install-exec-recursive \
-installdirs-recursive install-recursive uninstall-recursive  \
-check-recursive installcheck-recursive info-recursive dvi-recursive:
+$(RECURSIVE_TARGETS):
        @set fnord $(MAKEFLAGS); amf=$$2; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
@@ -202,11 +218,16 @@ mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
        @set fnord $(MAKEFLAGS); amf=$$2; \
        dot_seen=no; \
-       rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
-         rev="$$subdir $$rev"; \
-         test "$$subdir" = "." && dot_seen=yes; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
        done; \
-       test "$$dot_seen" = "no" && rev=". $$rev"; \
+       rev="$$rev ."; \
        target=`echo $@ | sed s/-recursive//`; \
        for subdir in $$rev; do \
          echo "Making $$target in $$subdir"; \
@@ -225,84 +246,66 @@ tags-recursive:
 
 tags: TAGS
 
-ID: $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(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; }'`; \
-       here=`pwd` && cd $(srcdir) \
-         && mkid -f$$here/ID $$unique $(LISP)
+       mkid -fID $$unique $(LISP)
 
-TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) $(LISP)
+TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
        tags=; \
        here=`pwd`; \
        list='$(SUBDIRS)'; for subdir in $$list; do \
-   if test "$$subdir" = .; then :; else \
+         if test "$$subdir" = .; then :; else \
            test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
-   fi; \
+         fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+       list='$(SOURCES) $(HEADERS) $(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 "$(ETAGS_ARGS)config.h.in$$unique$(LISP)$$tags" \
-         || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
+         || etags $(ETAGS_ARGS) $$tags config.h.in $$unique $(LISP)
 
-clean-tags:
+GTAGS:
+       here=`CDPATH=: && cd $(top_builddir) && pwd` \
+         && cd $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) $$here
 
 distclean-tags:
-       -rm -f TAGS ID
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
 
-maintainer-clean-tags:
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
+top_distdir = .
+# Avoid unsightly `./'.
 distdir = $(PACKAGE)-$(VERSION)
-top_distdir = $(distdir)
 
-# This target untars the dist file and tries a VPATH configuration.  Then
-# it guarantees that the distribution is self-contained by making another
-# tarfile.
-distcheck: dist
-       -rm -rf $(distdir)
-       GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
-       mkdir $(distdir)/=build
-       mkdir $(distdir)/=inst
-       dc_install_base=`cd $(distdir)/=inst && pwd`; \
-       cd $(distdir)/=build \
-         && ../configure --with-included-gettext --srcdir=.. --prefix=$$dc_install_base \
-         && $(MAKE) $(AM_MAKEFLAGS) \
-         && $(MAKE) $(AM_MAKEFLAGS) dvi \
-         && $(MAKE) $(AM_MAKEFLAGS) check \
-         && $(MAKE) $(AM_MAKEFLAGS) install \
-         && $(MAKE) $(AM_MAKEFLAGS) installcheck \
-         && $(MAKE) $(AM_MAKEFLAGS) dist
-       -rm -rf $(distdir)
-       @banner="$(distdir).tar.gz is ready for distribution"; \
-       dashes=`echo "$$banner" | sed s/./=/g`; \
-       echo "$$dashes"; \
-       echo "$$banner"; \
-       echo "$$dashes"
-dist: distdir
-       -chmod -R a+r $(distdir)
-       GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
-       -rm -rf $(distdir)
-dist-all: distdir
-       -chmod -R a+r $(distdir)
-       GZIP=$(GZIP_ENV) $(TAR) chozf $(distdir).tar.gz $(distdir)
-       -rm -rf $(distdir)
+GZIP_ENV = --best
+
 distdir: $(DISTFILES)
-       -rm -rf $(distdir)
+       -chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
        mkdir $(distdir)
-       -chmod 777 $(distdir)
+       $(mkinstalldirs) $(distdir)/. $(distdir)/intl $(distdir)/po
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
        for subdir in $(SUBDIRS); do \
@@ -310,85 +313,146 @@ distdir: $(DISTFILES)
            test -d $(distdir)/$$subdir \
            || mkdir $(distdir)/$$subdir \
            || exit 1; \
-           chmod 777 $(distdir)/$$subdir; \
-           (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(distdir) distdir=../$(distdir)/$$subdir distdir) \
+           (cd $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$(top_distdir)" \
+               distdir=../$(distdir)/$$subdir \
+               distdir) \
              || exit 1; \
          fi; \
        done
-info-am:
-info: info-recursive
-dvi-am:
-dvi: dvi-recursive
+       -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
+         ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
+         ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
+         ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
+       || chmod -R a+r $(distdir)
+dist: distdir
+       $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+       -chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
+
+dist-bzip2: distdir
+       $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
+       -chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
+
+# This target untars the dist file and tries a VPATH configuration.  Then
+# it guarantees that the distribution is self-contained by making another
+# tarfile.
+distcheck: dist
+       -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir)
+       GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
+       chmod -R a-w $(distdir); chmod a+w $(distdir)
+       mkdir $(distdir)/=build
+       mkdir $(distdir)/=inst
+       chmod a-w $(distdir)
+       dc_install_base=`CDPATH=: && cd $(distdir)/=inst && pwd` \
+         && cd $(distdir)/=build \
+         && ../configure --srcdir=.. --prefix=$$dc_install_base \
+           --with-included-gettext \
+         && $(MAKE) $(AM_MAKEFLAGS) \
+         && $(MAKE) $(AM_MAKEFLAGS) dvi \
+         && $(MAKE) $(AM_MAKEFLAGS) check \
+         && $(MAKE) $(AM_MAKEFLAGS) install \
+         && $(MAKE) $(AM_MAKEFLAGS) installcheck \
+         && $(MAKE) $(AM_MAKEFLAGS) uninstall \
+         && (test `find $$dc_install_base -type f -print | wc -l` -le 1 \
+            || (echo "Error: files left after uninstall" 1>&2; \
+                exit 1) ) \
+         && $(MAKE) $(AM_MAKEFLAGS) dist \
+         && $(MAKE) $(AM_MAKEFLAGS) distclean \
+         && rm -f $(distdir).tar.gz \
+         && (test `find . -type f -print | wc -l` -eq 0 \
+            || (echo "Error: files left after distclean" 1>&2; \
+                exit 1) )
+       -chmod -R a+w $(distdir) > /dev/null 2>&1; rm -rf $(distdir)
+       @echo "$(distdir).tar.gz is ready for distribution" | \
+         sed 'h;s/./=/g;p;x;p;x'
 check-am: all-am
 check: check-recursive
-installcheck-am:
-installcheck: installcheck-recursive
-all-recursive-am: config.h
-       $(MAKE) $(AM_MAKEFLAGS) all-recursive
+all-am: Makefile config.h
+installdirs: installdirs-recursive
+installdirs-am:
 
-install-exec-am:
+install: install-recursive
 install-exec: install-exec-recursive
-
-install-data-am:
 install-data: install-data-recursive
+uninstall: uninstall-recursive
 
 install-am: all-am
        @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-recursive
-uninstall-am:
-uninstall: uninstall-recursive
-all-am: Makefile config.h
-all-redirect: all-recursive-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs: installdirs-recursive
-installdirs-am:
-
 
+installcheck: installcheck-recursive
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-hdr mostlyclean-tags mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
 
-mostlyclean: mostlyclean-recursive
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-hdr clean-tags clean-generic mostlyclean-am
+dist-all: distdir
+       $(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+       $(AMTAR) chof - $(distdir) | bzip2 -9 -c >$(distdir).tar.bz2
+       -chmod -R a+w $(distdir) >/dev/null 2>&1; rm -rf $(distdir)
+distclean: distclean-recursive
+       -rm -f config.status config.cache config.log
+distclean-am: clean-am distclean-generic distclean-hdr distclean-libtool \
+       distclean-tags
 
-clean: clean-recursive
+dvi: dvi-recursive
 
-distclean-am:  distclean-hdr distclean-tags distclean-generic clean-am
-       -rm -f libtool
+dvi-am:
 
-distclean: distclean-recursive
-       -rm -f config.status
+info: info-recursive
 
-maintainer-clean-am:  maintainer-clean-hdr maintainer-clean-tags \
-               maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
-       -rm -f config.status
-
-.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \
-install-data-recursive uninstall-data-recursive install-exec-recursive \
-uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
-all-recursive check-recursive installcheck-recursive info-recursive \
-dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
-maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
-distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
-dvi-am dvi check check-am installcheck-am installcheck all-recursive-am \
-install-exec-am install-exec install-data-am install-data install-am \
-install uninstall-am uninstall all-redirect all-am all installdirs-am \
-installdirs mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
 
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \
+       clean-generic clean-libtool clean-recursive dist dist-all \
+       dist-bzip2 distcheck distclean distclean-generic distclean-hdr \
+       distclean-libtool distclean-recursive distclean-tags distdir \
+       dvi dvi-am dvi-recursive info info-am info-recursive install \
+       install-am install-data install-data-am install-data-recursive \
+       install-exec install-exec-am install-exec-recursive \
+       install-info install-info-am install-info-recursive install-man \
+       install-recursive install-strip installcheck installcheck-am \
+       installdirs installdirs-am installdirs-recursive \
+       maintainer-clean maintainer-clean-generic \
+       maintainer-clean-recursive mostlyclean mostlyclean-generic \
+       mostlyclean-libtool mostlyclean-recursive tags tags-recursive \
+       uninstall uninstall-am uninstall-info-am \
+       uninstall-info-recursive uninstall-recursive
 
 # 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/NEWS b/NEWS
index cfbabc8db20086f6f72db4d6fed94969b369e3a1..ccab76f64b43559e0452e85d08f102e4fd914239 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,39 @@
-$Id: NEWS,v 1.3 2000/10/16 21:34:08 kloczek Exp $
+$Id: NEWS,v 1.12 2001/09/07 15:35:54 kloczek Exp $
+
+shadow-20001016 => shadow-4.0.0
+
+- fix bug discovered and fixed by Marcel Ritter
+  <Marcel.Ritter@rrze.uni-erlangen.de>
+  Due to a big buffer size in lib/commonio.c this error does only appear
+  if a line gets longer than 4096 bytes (there are probably very few people
+  stumbling across this).
+  Ths bug can be exposed by trashing /etc/groups file with using useradd
+  with script:
+       #!/bin/sh
+       typeset -i NUM
+       NUM=0
+       groupadd demogroup
+       while [ $NUM -le 1000 ]; do
+          useradd -g demogroup -G demogroup -p "NONE" user$NUM
+          NUM=$NUM+1
+       done
+- remove limit 32 to groups per user by (the same user can belong to
+  more than 32 groups) by use sysconf(_SC_NGROUPS_MAX) instead constant
+  NGROUPS_MAX (patch by Radu Constantin Rendec <radu.rendec@ines.ro>)
+  NOTE: it probably need testing on other system for add
+  some condition for using sysconf(_SC_NGROUPS_MAX) or NGROUPS_MAX constant,
+- added -s option to {pw,grp}ck to sort checked files by UID/GID,
+- drop detecting is pam_strerror() need one or two arguments. Instead using
+  PAM_STRERROR() macro use directly pam_strerror() function with two
+  arguments. pam_strerror() with one argument is obsoleted,
+- adde ja man pages (probably some man pages need update),
+- much better automake support,
+- added pt_BR man pages for gpasswd(1), groupadd(8), groupdel(8),
+  groupmod(8), shadow(5) (man pages for other nations also are welcome),
+- mamny small fixes and updates nad improvements in man pages,
+- aplayed Debian patch to man pages for shadowconfig,
+- remove limit to 6 chars logged tty name (012_libmisc_sulog.c.diff Debian
+  patch).
 
 shadow-20001012 -> shadow-20001016:
 - conditionaly disabled body reload_nscd() because not every
diff --git a/TODO b/TODO
index 82213a9685e6ff196cd4c8c512b662642239cab8..c0d62483ec59d1f4af479b00ab12ad93f5e66394 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,7 +1,38 @@
+# "-" to do
+# "*" partialy exist/implemented
+# "+" done
+
+- fix building shadow utils without PAM enabled,
+
 - fix nscd flushing databases on change (I'm still not shure where it will
   be bether add this on shadow or on PAM level),
 
 - add more translations (maintainners for man pages and gettext files
   welcome),
 
-- move all doc to docbook (maybe also man pages).
+- add handle /etc/defaults/useradd::USERGROUPS={yes,no} for allow configure
+  using by useradd create per user group,
+
+- add handle -n switch in groups nad id command for allow query is
+  group/user with specyfied id/gid exist - this will be very useable
+  on automation in packages for quoery/check is group/user exist in system
+  or not,
+
+- groupmems: 
+  - need some work on add PAM and i18n support.
+
+- userdel:
+  - add backup option on remomove user resources,
+  - add lookop and remove per user group.
+
+Documentation:
+
+- move all doc to docbook (also man pages)
+  look at http://refentry2man.pld.org.pl/ for fast refentry xml/docbook to
+  roff converter,
+
+- document {pw,grp}ck -s option in pt_BR, ja man pages,
+
+- documment in pt_BR, ja man pages -s {pw,grp}ck option,
+
+- pl man page for login(1) - documment -f -h -p -r options.
index 7fce8825a48b1460490fe89013e1c8d0cee637cc..16aa9e18d5919c855ffc8cd05ae987a77059be0a 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: acconfig.h,v 1.13 1999/08/27 19:02:50 marekm Exp $ */
+/* $Id: acconfig.h,v 1.15 2001/07/27 13:26:04 kloczek Exp $ */
 
 \f
 
@@ -95,9 +95,6 @@
 /* Package name.  */
 #undef PACKAGE
 
-/* Define if pam_strerror() needs two arguments (Linux-PAM 0.59+).  */
-#undef PAM_STRERROR_NEEDS_TWO_ARGS
-
 /* Path to passwd program.  */
 #undef PASSWD_PROGRAM
 
 /* Path for wtmp file.  */
 #undef _WTMP_FILE
 
+/* */
+#undef USG
index 765fdbf431f2e9cdbc00201bffe45e0bdae755a9..f4444f1f7d6585b8408e7b064cc6b1257b95852d 100644 (file)
-dnl aclocal.m4 generated automatically by aclocal 1.4a
+# aclocal.m4 generated automatically by aclocal 1.5
 
-dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
+# Copyright 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
 
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
+# 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.
 
 # Do all the work for Automake.  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.
 
-# serial 1
+# serial 5
 
-dnl Usage:
-dnl AM_INIT_AUTOMAKE(package,version, [no-define])
+# 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,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery.  Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
 
-AC_DEFUN(AM_INIT_AUTOMAKE,
-[AC_REQUIRE([AC_PROG_INSTALL])
-dnl We require 2.13 because we rely on SHELL being computed by configure.
+
+# We require 2.13 because we rely on SHELL being computed by configure.
 AC_PREREQ([2.13])
-PACKAGE=[$1]
-AC_SUBST(PACKAGE)
-VERSION=[$2]
-AC_SUBST(VERSION)
-dnl test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-  AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+
+# AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
+# -----------------------------------------------------------
+# If MACRO-NAME is provided do IF-PROVIDED, else IF-NOT-PROVIDED.
+# The purpose of this macro is to provide the user with a means to
+# check macros which are provided without letting her know how the
+# information is coded.
+# If this macro is not defined by Autoconf, define it here.
+ifdef([AC_PROVIDE_IFELSE],
+      [],
+      [define([AC_PROVIDE_IFELSE],
+              [ifdef([AC_PROVIDE_$1],
+                     [$2], [$3])])])
+
+
+# AM_INIT_AUTOMAKE(PACKAGE,VERSION, [NO-DEFINE])
+# ----------------------------------------------
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_REQUIRE([AC_PROG_INSTALL])dnl
+# test to see if srcdir already configured
+if test "`CDPATH=:; cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  AC_MSG_ERROR([source directory already configured; run \"make distclean\" there first])
 fi
+
+# Define the identity of the package.
+PACKAGE=$1
+AC_SUBST(PACKAGE)dnl
+VERSION=$2
+AC_SUBST(VERSION)dnl
 ifelse([$3],,
-AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
-AC_REQUIRE([AM_SANITY_CHECK])
-AC_REQUIRE([AC_ARG_PROGRAM])
-dnl FIXME This is truly gross.
-missing_dir=`cd $ac_aux_dir && pwd`
-AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
-AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
-AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
-AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
-AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
-AC_REQUIRE([AC_PROG_MAKE_SET])])
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])
+
+# Autoconf 2.50 wants to disallow AM_ names.  We explicitly allow
+# the ones we care about.
+ifdef([m4_pattern_allow],
+      [m4_pattern_allow([^AM_[A-Z]+FLAGS])])dnl
+
+# Autoconf 2.50 always computes EXEEXT.  However we need to be
+# compatible with 2.13, for now.  So we always define EXEEXT, but we
+# don't compute it.
+AC_SUBST(EXEEXT)
+# Similar for OBJEXT -- only we only use OBJEXT if the user actually
+# requests that it be used.  This is a bit dumb.
+: ${OBJEXT=o}
+AC_SUBST(OBJEXT)
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal)
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake)
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_MISSING_PROG(AMTAR, tar)
+AM_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_PROVIDE_IFELSE([AC_PROG_][CC],
+                  [_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
+])
 
 #
 # Check to make sure that the build environment is sane.
 #
 
-AC_DEFUN(AM_SANITY_CHECK,
+# serial 3
+
+# AM_SANITY_CHECK
+# ---------------
+AC_DEFUN([AM_SANITY_CHECK],
 [AC_MSG_CHECKING([whether build environment is sane])
 # Just in case
 sleep 1
-echo timestamp > conftestfile
+echo timestamp > conftest.file
 # 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 conftestfile 2> /dev/null`
-   if test "[$]*" = "X"; then
+   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 conftestfile`
+      set X `ls -t $srcdir/configure conftest.file`
    fi
-   if test "[$]*" != "X $srcdir/configure conftestfile" \
-      && test "[$]*" != "X conftestfile $srcdir/configure"; then
+   rm -f conftest.file
+   if test "$[*]" != "X $srcdir/configure conftest.file" \
+      && test "$[*]" != "X conftest.file $srcdir/configure"; then
 
       # If neither matched, then we have a broken ls.  This can happen
       # if, for instance, CONFIG_SHELL is bash and it inherits a
@@ -76,7 +137,7 @@ if (
 alias in your environment])
    fi
 
-   test "[$]2" = conftestfile
+   test "$[2]" = conftest.file
    )
 then
    # Ok.
@@ -85,238 +146,482 @@ else
    AC_MSG_ERROR([newly created file is older than distributed files!
 Check your system clock])
 fi
-rm -f conftest*
 AC_MSG_RESULT(yes)])
 
-dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
-dnl The program must properly implement --version.
-AC_DEFUN(AM_MISSING_PROG,
-[AC_MSG_CHECKING(for working $2)
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf.  Sigh.
-if ($2 --version) < /dev/null > /dev/null 2>&1; then
-   $1=$2
-   AC_MSG_RESULT(found)
+
+# serial 2
+
+# AM_MISSING_PROG(NAME, PROGRAM)
+# ------------------------------
+AC_DEFUN([AM_MISSING_PROG],
+[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+
+
+# AM_MISSING_HAS_RUN
+# ------------------
+# Define MISSING if not defined so far and test if it supports --run.
+# If it does, set am_missing_run to use it, otherwise, to nothing.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
 else
-   $1="$3/missing $2"
-   AC_MSG_RESULT(missing)
+  am_missing_run=
+  am_backtick='`'
+  AC_MSG_WARN([${am_backtick}missing' script is too old or missing])
 fi
-AC_SUBST($1)])
+])
 
-# Like AC_CONFIG_HEADER, but automatically create stamp file.
+# AM_AUX_DIR_EXPAND
 
-AC_DEFUN(AM_CONFIG_HEADER,
-[AC_PREREQ([2.12])
-AC_CONFIG_HEADER([$1])
-dnl When config.status generates a header, we must update the stamp-h file.
-dnl This file resides in the same directory as the config header
-dnl that is generated.  We must strip everything past the first ":",
-dnl and everything past the last "/".
-AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
-ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
-<<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
-<<am_indx=1
-for am_file in <<$1>>; do
-  case " <<$>>CONFIG_HEADERS " in
-  *" <<$>>am_file "*<<)>>
-    echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
-    ;;
-  esac
-  am_indx=`expr "<<$>>am_indx" + 1`
-done<<>>dnl>>)
-changequote([,]))])
+# 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/../..'.
+#
+# Of course, Automake must honor this variable whenever it calls a
+# tool from the auxiliary directory.  The problem is that $srcdir (and
+# therefore $ac_aux_dir as well) can be either absolute or relative,
+# depending on how configure is run.  This is pretty annoying, since
+# it makes $ac_aux_dir quite unusable in subdirectories: in the top
+# source directory, any form will work fine, but in subdirectories a
+# relative path needs to be adjusted first.
+#
+# $ac_aux_dir/missing
+#    fails when called from a subdirectory if $ac_aux_dir is relative
+# $top_srcdir/$ac_aux_dir/missing
+#    fails if $ac_aux_dir is absolute,
+#    fails when called from a subdirectory in a VPATH build with
+#          a relative $ac_aux_dir
+#
+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
+# are both prefixed by $srcdir.  In an in-source build this is usually
+# harmless because $srcdir is `.', but things will broke when you
+# start a VPATH build or use an absolute $srcdir.
+#
+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
+# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
+#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
+# and then we would define $MISSING as
+#   MISSING="\${SHELL} $am_aux_dir/missing"
+# This will work as long as MISSING is not called from configure, because
+# unfortunately $(top_srcdir) has no meaning in configure.
+# However there are other variables, like CC, which are often used in
+# configure, and could therefore not use this "fixed" $ac_aux_dir.
+#
+# Another solution, used here, is to always expand $ac_aux_dir to an
+# absolute PATH.  The drawback is that using absolute paths prevent a
+# configured tree to be moved without reconfiguration.
 
+AC_DEFUN([AM_AUX_DIR_EXPAND], [
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`CDPATH=:; cd $ac_aux_dir && pwd`
+])
 
-# 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-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
 
-AC_DEFUN(AM_C_PROTOTYPES,
-[AC_REQUIRE([AM_PROG_CC_STDC])
-AC_REQUIRE([AC_PROG_CPP])
-AC_MSG_CHECKING([for function prototypes])
-if test "$am_cv_prog_cc_stdc" != no; then
-  AC_MSG_RESULT(yes)
-  AC_DEFINE(PROTOTYPES,1,[Define if compiler has function prototypes])
-  U= ANSI2KNR=
+# One issue with vendor `install' (even GNU) is that you can't
+# specify the program used to strip binaries.  This is especially
+# annoying in cross-compiling environments, where the build's strip
+# is unlikely to handle the host's binaries.
+# Fortunately install-sh will honor a STRIPPROG variable, so we
+# always use install-sh in `make install-strip', and initialize
+# STRIPPROG with the value of the STRIP variable (set by the user).
+AC_DEFUN([AM_PROG_INSTALL_STRIP],
+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# serial 4                                             -*- Autoconf -*-
+
+
+
+# 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,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery.  Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+
+# _AM_DEPENDENCIES(NAME)
+# ---------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX" or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
+       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
+       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc']
+       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
+                   [depcc="$$1"   am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+               [am_cv_$1_dependencies_compiler_type],
+[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
+
+  am_cv_$1_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
+    # 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.
+    echo '#include "conftest.h"' > conftest.c
+    echo 'int i;' > conftest.h
+    echo "${am__include} ${am__quote}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=conftest.c object=conftest.o \
+       depfile=conftest.Po tmpdepfile=conftest.TPo \
+       $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 &&
+       grep conftest.h conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      am_cv_$1_dependencies_compiler_type=$depmode
+      break
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
 else
-  AC_MSG_RESULT(no)
-  U=_ ANSI2KNR=./ansi2knr
-  # Ensure some checks needed by ansi2knr itself.
-  AC_HEADER_STDC
-  AC_CHECK_HEADERS(string.h)
+  am_cv_$1_dependencies_compiler_type=none
 fi
-AC_SUBST(U)dnl
-AC_SUBST(ANSI2KNR)dnl
+])
+$1DEPMODE="depmode=$am_cv_$1_dependencies_compiler_type"
+AC_SUBST([$1DEPMODE])
 ])
 
 
-# serial 1
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[rm -f .deps 2>/dev/null
+mkdir .deps 2>/dev/null
+if test -d .deps; then
+  DEPDIR=.deps
+else
+  # MS-DOS does not allow filenames that begin with a dot.
+  DEPDIR=_deps
+fi
+rmdir .deps 2>/dev/null
+AC_SUBST(DEPDIR)
+])
 
-# @defmac AC_PROG_CC_STDC
-# @maindex PROG_CC_STDC
-# @ovindex CC
-# If the C compiler in not in ANSI C mode by default, try to add an option
-# to output variable @code{CC} to make it so.  This macro tries various
-# options that select ANSI C on some system or another.  It considers the
-# compiler to be in ANSI C mode if it handles function prototypes correctly.
-#
-# If you use this macro, you should check after calling it whether the C
-# compiler has been set to accept ANSI C; if not, the shell variable
-# @code{am_cv_prog_cc_stdc} is set to @samp{no}.  If you wrote your source
-# code in ANSI C, you can make an un-ANSIfied copy of it by using the
-# program @code{ansi2knr}, which comes with Ghostscript.
-# @end defmac
 
-AC_DEFUN(AM_PROG_CC_STDC,
-[AC_REQUIRE([AC_PROG_CC])
-AC_BEFORE([$0], [AC_C_INLINE])
-AC_BEFORE([$0], [AC_C_CONST])
-dnl Force this before AC_PROG_CPP.  Some cpp's, eg on HPUX, require
-dnl a magic option to avoid problems with ANSI preprocessor commands
-dnl like #elif.
-dnl FIXME: can't do this because then AC_AIX won't work due to a
-dnl circular dependency.
-dnl AC_BEFORE([$0], [AC_PROG_CPP])
-AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
-AC_CACHE_VAL(am_cv_prog_cc_stdc,
-[am_cv_prog_cc_stdc=no
-ac_save_CC="$CC"
-# Don't try gcc -ansi; that turns off useful extensions and
-# breaks some systems' header files.
-# AIX                  -qlanglvl=ansi
-# Ultrix and OSF/1     -std1
-# HP-UX                        -Aa -D_HPUX_SOURCE
-# SVR4                 -Xc -D__EXTENSIONS__
-for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-do
-  CC="$ac_save_CC $ac_arg"
-  AC_TRY_COMPILE(
-[#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;
-}
-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;
-], [
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-],
-[am_cv_prog_cc_stdc="$ac_arg"; break])
-done
-CC="$ac_save_CC"
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[  --disable-dependency-tracking Speeds up one-time builds
+  --enable-dependency-tracking  Do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+pushdef([subst], defn([AC_SUBST]))
+subst(AMDEPBACKSLASH)
+popdef([subst])
 ])
-if test -z "$am_cv_prog_cc_stdc"; then
-  AC_MSG_RESULT([none needed])
-else
-  AC_MSG_RESULT($am_cv_prog_cc_stdc)
+
+# Generate code to set up dependency tracking.
+# This macro should only be invoked once -- use via AC_REQUIRE.
+# Usage:
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+
+#
+# This code is only required when automatic dependency tracking
+# is enabled.  FIXME.  This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],[
+AC_OUTPUT_COMMANDS([
+test x"$AMDEP_TRUE" != x"" ||
+for mf in $CONFIG_FILES; do
+  case "$mf" in
+  Makefile) dirpart=.;;
+  */Makefile) dirpart=`echo "$mf" | sed -e 's|/[^/]*$||'`;;
+  *) continue;;
+  esac
+  grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
+  # Extract the definition of DEP_FILES from the Makefile without
+  # running `make'.
+  DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n -e '/^U = / s///p' < "$mf"`
+  test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
+  # 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 -e '
+    /^DEP_FILES = .*\\\\$/ {
+      s/^DEP_FILES = //
+      :loop
+       s/\\\\$//
+       p
+       n
+       /\\\\$/ b loop
+      p
+    }
+    /^DEP_FILES = / s/^DEP_FILES = //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=`echo "$file" | sed -e 's|/[^/]*$||'`
+    $ac_aux_dir/mkinstalldirs "$dirpart/$fdir" > /dev/null 2>&1
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+], [AMDEP_TRUE="$AMDEP_TRUE"
+ac_aux_dir="$ac_aux_dir"])])
+
+# AM_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+doit:
+       @echo done
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+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 | fgrep -v 'ing directory'`" = "done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
 fi
-case "x$am_cv_prog_cc_stdc" in
-  x|xno) ;;
-  *) CC="$CC $am_cv_prog_cc_stdc" ;;
-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
+fi
+AC_SUBST(am__include)
+AC_SUBST(am__quote)
+AC_MSG_RESULT($_am_result)
+rm -f confinc confmf
 ])
 
+# serial 3
 
-# serial 40 AC_PROG_LIBTOOL
-AC_DEFUN(AC_PROG_LIBTOOL,
-[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+#
+# FIXME: Once using 2.50, use this:
+# m4_match([$1], [^TRUE\|FALSE$], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_DEFUN([AM_CONDITIONAL],
+[ifelse([$1], [TRUE],
+        [errprint(__file__:__line__: [$0: invalid condition: $1
+])dnl
+m4exit(1)])dnl
+ifelse([$1], [FALSE],
+       [errprint(__file__:__line__: [$0: invalid condition: $1
+])dnl
+m4exit(1)])dnl
+AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+  $1_TRUE=
+  $1_FALSE='#'
+else
+  $1_TRUE='#'
+  $1_FALSE=
+fi])
+
+# Like AC_CONFIG_HEADER, but automatically create stamp file.
+
+# serial 3
 
-# Save cache, so that ltconfig can load it
-AC_CACHE_SAVE
+# When config.status generates a header, we must update the stamp-h file.
+# This file resides in the same directory as the config header
+# that is generated.  We must strip everything past the first ":",
+# and everything past the last "/".
 
-# Actually configure libtool.  ac_aux_dir is where install-sh is found.
-CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
-LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
-LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
-DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
-${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
-$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
-|| AC_MSG_ERROR([libtool configure failed])
+AC_PREREQ([2.12])
 
-# Reload cache, that may have been modified by ltconfig
-AC_CACHE_LOAD
+AC_DEFUN([AM_CONFIG_HEADER],
+[ifdef([AC_FOREACH],dnl
+        [dnl init our file count if it isn't already
+        m4_ifndef([_AM_Config_Header_Index], m4_define([_AM_Config_Header_Index], [0]))
+        dnl prepare to store our destination file list for use in config.status
+        AC_FOREACH([_AM_File], [$1],
+                   [m4_pushdef([_AM_Dest], m4_patsubst(_AM_File, [:.*]))
+                   m4_define([_AM_Config_Header_Index], m4_incr(_AM_Config_Header_Index))
+                   dnl and add it to the list of files AC keeps track of, along
+                   dnl with our hook
+                   AC_CONFIG_HEADERS(_AM_File,
+dnl COMMANDS, [, INIT-CMDS]
+[# update the timestamp
+echo timestamp >"AS_ESCAPE(_AM_DIRNAME(]_AM_Dest[))/stamp-h]_AM_Config_Header_Index["
+][$2]m4_ifval([$3], [, [$3]]))dnl AC_CONFIG_HEADERS
+                   m4_popdef([_AM_Dest])])],dnl
+[AC_CONFIG_HEADER([$1])
+  AC_OUTPUT_COMMANDS(
+   ifelse(patsubst([$1], [[^ ]], []),
+         [],
+         [test -z "$CONFIG_HEADERS" || echo timestamp >dnl
+          patsubst([$1], [^\([^:]*/\)?.*], [\1])stamp-h]),dnl
+[am_indx=1
+for am_file in $1; do
+  case " \$CONFIG_HEADERS " in
+  *" \$am_file "*)
+    am_dir=\`echo \$am_file |sed 's%:.*%%;s%[^/]*\$%%'\`
+    if test -n "\$am_dir"; then
+      am_tmpdir=\`echo \$am_dir |sed 's%^\(/*\).*\$%\1%'\`
+      for am_subdir in \`echo \$am_dir |sed 's%/% %'\`; do
+        am_tmpdir=\$am_tmpdir\$am_subdir/
+        if test ! -d \$am_tmpdir; then
+          mkdir \$am_tmpdir
+        fi
+      done
+    fi
+    echo timestamp > "\$am_dir"stamp-h\$am_indx
+    ;;
+  esac
+  am_indx=\`expr \$am_indx + 1\`
+done])
+])]) # AM_CONFIG_HEADER
+
+# _AM_DIRNAME(PATH)
+# -----------------
+# Like AS_DIRNAME, only do it during macro expansion
+AC_DEFUN([_AM_DIRNAME],
+       [m4_if(m4_regexp([$1], [^.*[^/]//*[^/][^/]*/*$]), -1,
+             m4_if(m4_regexp([$1], [^//\([^/]\|$\)]), -1,
+                   m4_if(m4_regexp([$1], [^/.*]), -1,
+                         [.],
+                         m4_patsubst([$1], [^\(/\).*], [\1])),
+                   m4_patsubst([$1], [^\(//\)\([^/].*\|$\)], [\1])),
+             m4_patsubst([$1], [^\(.*[^/]\)//*[^/][^/]*/*$], [\1]))[]dnl
+]) # _AM_DIRNAME
+
+# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*-
+
+# serial 46 AC_PROG_LIBTOOL
+
+AC_DEFUN([AC_PROG_LIBTOOL],
+[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl
 
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
 AC_SUBST(LIBTOOL)dnl
 
-# Redirect the config.log output again, so that the ltconfig log is not
-# clobbered by the next message.
-exec 5>>./config.log
+# Prevent multiple expansion
+define([AC_PROG_LIBTOOL], [])
 ])
 
-AC_DEFUN(AC_LIBTOOL_SETUP,
+AC_DEFUN([AC_LIBTOOL_SETUP],
 [AC_PREREQ(2.13)dnl
 AC_REQUIRE([AC_ENABLE_SHARED])dnl
 AC_REQUIRE([AC_ENABLE_STATIC])dnl
 AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl
 AC_REQUIRE([AC_CANONICAL_HOST])dnl
 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
-AC_REQUIRE([AC_PROG_RANLIB])dnl
 AC_REQUIRE([AC_PROG_CC])dnl
 AC_REQUIRE([AC_PROG_LD])dnl
+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl
 AC_REQUIRE([AC_PROG_NM])dnl
 AC_REQUIRE([AC_PROG_LN_S])dnl
+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl
+AC_REQUIRE([AC_OBJEXT])dnl
+AC_REQUIRE([AC_EXEEXT])dnl
 dnl
 
-case "$target" in
-NONE) lt_target="$host" ;;
-*) lt_target="$target" ;;
+_LT_AC_PROG_ECHO_BACKSLASH
+# Only perform the check for file, if the check method requires it
+case $deplibs_check_method in
+file_magic*)
+  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+    AC_PATH_MAGIC
+  fi
+  ;;
 esac
 
-# Check for any special flags to pass to ltconfig.
-#
-# the following will cause an existing older ltconfig to fail, so
-# we ignore this at the expense of the cache file... Checking this 
-# will just take longer ... bummer!
-#libtool_flags="--cache-file=$cache_file"
-#
-test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
-test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
-test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
-test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
-test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
-ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN],
-[libtool_flags="$libtool_flags --enable-dlopen"])
+AC_CHECK_TOOL(RANLIB, ranlib, :)
+AC_CHECK_TOOL(STRIP, strip, :)
+
+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no)
 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-[libtool_flags="$libtool_flags --enable-win32-dll"])
+enable_win32_dll=yes, enable_win32_dll=no)
+
 AC_ARG_ENABLE(libtool-lock,
   [  --disable-libtool-lock  avoid locking (might break parallel builds)])
-test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
-test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
 
 # Some flags need to be propagated to the compiler or linker for good
 # libtool support.
-case "$lt_target" in
+case $host in
 *-*-irix6*)
   # Find out which ABI we are using.
   echo '[#]line __oline__ "configure"' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
-    case "`/usr/bin/file conftest.o`" in
+    case `/usr/bin/file conftest.$ac_objext` in
     *32-bit*)
       LD="${LD-ld} -32"
       ;;
@@ -336,7 +641,10 @@ case "$lt_target" in
   SAVE_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS -belf"
   AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
-    [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])])
+    [AC_LANG_SAVE
+     AC_LANG_C
+     AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
+     AC_LANG_RESTORE])
   if test x"$lt_cv_cc_needs_belf" != x"yes"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
     CFLAGS="$SAVE_CFLAGS"
@@ -344,100 +652,2898 @@ case "$lt_target" in
   ;;
 
 ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL],
-[*-*-cygwin* | *-*-mingw*)
+[*-*-cygwin* | *-*-mingw* | *-*-pw32*)
   AC_CHECK_TOOL(DLLTOOL, dlltool, false)
   AC_CHECK_TOOL(AS, as, false)
   AC_CHECK_TOOL(OBJDUMP, objdump, false)
+
+  # recent cygwin and mingw systems supply a stub DllMain which the user
+  # can override, but on older systems we have to supply one
+  AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain,
+    [AC_TRY_LINK([],
+      [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*);
+      DllMain (0, 0, 0);],
+      [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])])
+
+  case $host/$CC in
+  *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*)
+    # old mingw systems require "-dll" to link a DLL, while more recent ones
+    # require "-mdll"
+    SAVE_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS -mdll"
+    AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch,
+      [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])])
+    CFLAGS="$SAVE_CFLAGS" ;;
+  *-*-cygwin* | *-*-pw32*)
+    # cygwin systems need to pass --dll to the linker, and not link
+    # crt.o which will require a WinMain@16 definition.
+    lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;;
+  esac
   ;;
-])
+  ])
 esac
+
+_LT_AC_LTCONFIG_HACK
+
 ])
 
-# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
-AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
+# AC_LIBTOOL_HEADER_ASSERT
+# ------------------------
+AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT],
+[AC_CACHE_CHECK([whether $CC supports assert without backlinking],
+    [lt_cv_func_assert_works],
+    [case $host in
+    *-*-solaris*)
+      if test "$GCC" = yes && test "$with_gnu_ld" != yes; then
+        case `$CC --version 2>/dev/null` in
+        [[12]].*) lt_cv_func_assert_works=no ;;
+        *)        lt_cv_func_assert_works=yes ;;
+        esac
+      fi
+      ;;
+    esac])
 
-# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
-AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
+if test "x$lt_cv_func_assert_works" = xyes; then
+  AC_CHECK_HEADERS(assert.h)
+fi
+])# AC_LIBTOOL_HEADER_ASSERT
 
-# AC_ENABLE_SHARED - implement the --enable-shared flag
-# Usage: AC_ENABLE_SHARED[(DEFAULT)]
-#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
-#   `yes'.
-AC_DEFUN(AC_ENABLE_SHARED, [dnl
-define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
-AC_ARG_ENABLE(shared,
-changequote(<<, >>)dnl
-<<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
-changequote([, ])dnl
-[p=${PACKAGE-default}
-case "$enableval" in
-yes) enable_shared=yes ;;
-no) enable_shared=no ;;
-*)
-  enable_shared=no
-  # Look at the argument we got.  We use all the common list separators.
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
-  for pkg in $enableval; do
-    if test "X$pkg" = "X$p"; then
-      enable_shared=yes
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-esac],
-enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
-])
+# _LT_AC_CHECK_DLFCN
+# --------------------
+AC_DEFUN([_LT_AC_CHECK_DLFCN],
+[AC_CHECK_HEADERS(dlfcn.h)
+])# _LT_AC_CHECK_DLFCN
 
-# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
-AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-AC_ENABLE_SHARED(no)])
+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
+# ---------------------------------
+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
+[AC_REQUIRE([AC_CANONICAL_HOST])
+AC_REQUIRE([AC_PROG_NM])
+AC_REQUIRE([AC_OBJEXT])
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+AC_MSG_CHECKING([command to parse $NM output])
+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl
 
-# AC_ENABLE_STATIC - implement the --enable-static flag
-# Usage: AC_ENABLE_STATIC[(DEFAULT)]
-#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
-#   `yes'.
-AC_DEFUN(AC_ENABLE_STATIC, [dnl
-define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
-AC_ARG_ENABLE(static,
-changequote(<<, >>)dnl
-<<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
-changequote([, ])dnl
-[p=${PACKAGE-default}
-case "$enableval" in
-yes) enable_static=yes ;;
-no) enable_static=no ;;
-*)
-  enable_static=no
-  # Look at the argument we got.  We use all the common list separators.
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
-  for pkg in $enableval; do
-    if test "X$pkg" = "X$p"; then
-      enable_static=yes
-    fi
-  done
-  IFS="$ac_save_ifs"
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[[BCDEGRST]]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
+
+# Transform the above into a raw symbol and a C symbol.
+symxfrm='\1 \2\3 \3'
+
+# Transform an extracted symbol line into a proper C declaration
+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+  symcode='[[BCDT]]'
   ;;
-esac],
-enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
-])
+cygwin* | mingw* | pw32*)
+  symcode='[[ABCDGISTW]]'
+  ;;
+hpux*) # Its linker distinguishes data from code symbols
+  lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+  lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
+  ;;
+irix*)
+  symcode='[[BCDEGRST]]'
+  ;;
+solaris* | sysv5*)
+  symcode='[[BDT]]'
+  ;;
+sysv4)
+  symcode='[[DFNSTU]]'
+  ;;
+esac
 
-# AC_DISABLE_STATIC - set the default static flag to --disable-static
-AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-AC_ENABLE_STATIC(no)])
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $host_os in
+mingw*)
+  opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+  ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
+  symcode='[[ABCDGISTW]]'
+fi
+
+# Try without a prefix undercore, then with it.
+for ac_symprfx in "" "_"; do
+
+  # Write the raw and C identifiers.
+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[       ]]\($symcode$symcode*\)[[       ]][[    ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
+
+  # Check to see that the pipe works correctly.
+  pipe_works=no
+  rm -f conftest*
+  cat > conftest.$ac_ext <<EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+EOF
+
+  if AC_TRY_EVAL(ac_compile); then
+    # Now try to grab the symbols.
+    nlist=conftest.nm
+    if AC_TRY_EVAL(NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) && test -s "$nlist"; then
+      # Try sorting and uniquifying the output.
+      if sort "$nlist" | uniq > "$nlist"T; then
+       mv -f "$nlist"T "$nlist"
+      else
+       rm -f "$nlist"T
+      fi
+
+      # Make sure that we snagged all the symbols we need.
+      if egrep ' nm_test_var$' "$nlist" >/dev/null; then
+       if egrep ' nm_test_func$' "$nlist" >/dev/null; then
+         cat <<EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+EOF
+         # Now generate the symbol file.
+         eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
+
+         cat <<EOF >> conftest.$ac_ext
+#if defined (__STDC__) && __STDC__
+# define lt_ptr void *
+#else
+# define lt_ptr char *
+# define const
+#endif
+
+/* The mapping between symbol names and symbols. */
+const struct {
+  const char *name;
+  lt_ptr address;
+}
+lt_preloaded_symbols[[]] =
+{
+EOF
+         sed "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
+         cat <<\EOF >> conftest.$ac_ext
+  {0, (lt_ptr) 0}
+};
+
+#ifdef __cplusplus
+}
+#endif
+EOF
+         # Now try linking the two files.
+         mv conftest.$ac_objext conftstm.$ac_objext
+         save_LIBS="$LIBS"
+         save_CFLAGS="$CFLAGS"
+         LIBS="conftstm.$ac_objext"
+         CFLAGS="$CFLAGS$no_builtin_flag"
+         if AC_TRY_EVAL(ac_link) && test -s conftest; then
+           pipe_works=yes
+         fi
+         LIBS="$save_LIBS"
+         CFLAGS="$save_CFLAGS"
+       else
+         echo "cannot find nm_test_func in $nlist" >&AC_FD_CC
+       fi
+      else
+       echo "cannot find nm_test_var in $nlist" >&AC_FD_CC
+      fi
+    else
+      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC
+    fi
+  else
+    echo "$progname: failed program was:" >&AC_FD_CC
+    cat conftest.$ac_ext >&5
+  fi
+  rm -f conftest* conftst*
+
+  # Do not use the global_symbol_pipe unless it works.
+  if test "$pipe_works" = yes; then
+    break
+  else
+    lt_cv_sys_global_symbol_pipe=
+  fi
+done
+])
+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+  global_symbol_to_cdecl=
+  global_symbol_to_c_name_address=
+else
+  global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
+  global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
+fi
+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
+then
+  AC_MSG_RESULT(failed)
+else
+  AC_MSG_RESULT(ok)
+fi
+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE
+
+# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
+# ---------------------------------
+AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR],
+[# Find the correct PATH separator.  Usually this is `:', but
+# DJGPP uses `;' like DOS.
+if test "X${PATH_SEPARATOR+set}" != Xset; then
+  UNAME=${UNAME-`uname 2>/dev/null`}
+  case X$UNAME in
+    *-DOS) lt_cv_sys_path_separator=';' ;;
+    *)     lt_cv_sys_path_separator=':' ;;
+  esac
+  PATH_SEPARATOR=$lt_cv_sys_path_separator
+fi
+])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
+
+# _LT_AC_PROG_ECHO_BACKSLASH
+# --------------------------
+# Add some code to the start of the generated configure script which
+# will find an echo command which doesn't interpret backslashes.
+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH],
+[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)],
+                             [AC_DIVERT_PUSH(NOTICE)])
+_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR
+
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$ECHO in
+X*--fallback-echo)
+  # Remove one level of quotation (which was required for Make).
+  ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','`
+  ;;
+esac
+
+echo=${ECHO-echo}
+if test "X[$]1" = X--no-reexec; then
+  # Discard the --no-reexec flag, and continue.
+  shift
+elif test "X[$]1" = X--fallback-echo; then
+  # Avoid inline document here, it may be left over
+  :
+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
+  # Yippee, $echo works!
+  :
+else
+  # Restart under the correct shell.
+  exec $SHELL "[$]0" --no-reexec ${1+"[$]@"}
+fi
+
+if test "X[$]1" = X--fallback-echo; then
+  # used as fallback echo
+  shift
+  cat <<EOF
+$*
+EOF
+  exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+
+if test -z "$ECHO"; then
+if test "X${echo_test_string+set}" != Xset; then
+# find a string as large as possible, as long as the shell can cope with it
+  for cmd in 'sed 50q "[$]0"' 'sed 20q "[$]0"' 'sed 10q "[$]0"' 'sed 2q "[$]0"' 'echo test'; do
+    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+    if (echo_test_string="`eval $cmd`") 2>/dev/null &&
+       echo_test_string="`eval $cmd`" &&
+       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
+    then
+      break
+    fi
+  done
+fi
+
+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
+   echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
+   test "X$echo_testing_string" = "X$echo_test_string"; then
+  :
+else
+  # The Solaris, AIX, and Digital Unix default echo programs unquote
+  # backslashes.  This makes it impossible to quote backslashes using
+  #   echo "$something" | sed 's/\\/\\\\/g'
+  #
+  # So, first we look for a working echo in the user's PATH.
+
+  IFS="${IFS=  }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  for dir in $PATH /usr/ucb; do
+    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+       echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+       test "X$echo_testing_string" = "X$echo_test_string"; then
+      echo="$dir/echo"
+      break
+    fi
+  done
+  IFS="$save_ifs"
+
+  if test "X$echo" = Xecho; then
+    # We didn't find a better echo, so look for alternatives.
+    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
+       echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
+       test "X$echo_testing_string" = "X$echo_test_string"; then
+      # This shell has a builtin print -r that does the trick.
+      echo='print -r'
+    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
+        test "X$CONFIG_SHELL" != X/bin/ksh; then
+      # If we have ksh, try running configure again with it.
+      ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+      export ORIGINAL_CONFIG_SHELL
+      CONFIG_SHELL=/bin/ksh
+      export CONFIG_SHELL
+      exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"}
+    else
+      # Try using printf.
+      echo='printf %s\n'
+      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
+        echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
+        test "X$echo_testing_string" = "X$echo_test_string"; then
+       # Cool, printf works
+       :
+      elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+          test "X$echo_testing_string" = 'X\t' &&
+          echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+          test "X$echo_testing_string" = "X$echo_test_string"; then
+       CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+       export CONFIG_SHELL
+       SHELL="$CONFIG_SHELL"
+       export SHELL
+       echo="$CONFIG_SHELL [$]0 --fallback-echo"
+      elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` &&
+          test "X$echo_testing_string" = 'X\t' &&
+          echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+          test "X$echo_testing_string" = "X$echo_test_string"; then
+       echo="$CONFIG_SHELL [$]0 --fallback-echo"
+      else
+       # maybe with a smaller string...
+       prev=:
+
+       for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do
+         if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
+         then
+           break
+         fi
+         prev="$cmd"
+       done
+
+       if test "$prev" != 'sed 50q "[$]0"'; then
+         echo_test_string=`eval $prev`
+         export echo_test_string
+         exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"}
+       else
+         # Oops.  We lost completely, so just stick with echo.
+         echo=echo
+       fi
+      fi
+    fi
+  fi
+fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+ECHO=$echo
+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then
+   ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo"
+fi
+
+AC_SUBST(ECHO)
+AC_DIVERT_POP
+])# _LT_AC_PROG_ECHO_BACKSLASH
+
+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
+#                           ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
+# ------------------------------------------------------------------
+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF],
+[if test "$cross_compiling" = yes; then :
+  [$4]
+else
+  AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
+  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+  lt_status=$lt_dlunknown
+  cat > conftest.$ac_ext <<EOF
+[#line __oline__ "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+#  define LT_DLGLOBAL          RTLD_GLOBAL
+#else
+#  ifdef DL_GLOBAL
+#    define LT_DLGLOBAL                DL_GLOBAL
+#  else
+#    define LT_DLGLOBAL                0
+#  endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+   find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+#  ifdef RTLD_LAZY
+#    define LT_DLLAZY_OR_NOW           RTLD_LAZY
+#  else
+#    ifdef DL_LAZY
+#      define LT_DLLAZY_OR_NOW         DL_LAZY
+#    else
+#      ifdef RTLD_NOW
+#        define LT_DLLAZY_OR_NOW       RTLD_NOW
+#      else
+#        ifdef DL_NOW
+#          define LT_DLLAZY_OR_NOW     DL_NOW
+#        else
+#          define LT_DLLAZY_OR_NOW     0
+#        endif
+#      endif
+#    endif
+#  endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+  int status = $lt_dlunknown;
+
+  if (self)
+    {
+      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
+      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+      /* dlclose (self); */
+    }
+
+    exit (status);
+}]
+EOF
+  if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
+    (./conftest; exit; ) 2>/dev/null
+    lt_status=$?
+    case x$lt_status in
+      x$lt_dlno_uscore) $1 ;;
+      x$lt_dlneed_uscore) $2 ;;
+      x$lt_unknown|x*) $3 ;;
+    esac
+  else :
+    # compilation failed
+    $3
+  fi
+fi
+rm -fr conftest*
+])# _LT_AC_TRY_DLOPEN_SELF
+
+# AC_LIBTOOL_DLOPEN_SELF
+# -------------------
+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF],
+[if test "x$enable_dlopen" != xyes; then
+  enable_dlopen=unknown
+  enable_dlopen_self=unknown
+  enable_dlopen_self_static=unknown
+else
+  lt_cv_dlopen=no
+  lt_cv_dlopen_libs=
+
+  case $host_os in
+  beos*)
+    lt_cv_dlopen="load_add_on"
+    lt_cv_dlopen_libs=
+    lt_cv_dlopen_self=yes
+    ;;
+
+  cygwin* | mingw* | pw32*)
+    lt_cv_dlopen="LoadLibrary"
+    lt_cv_dlopen_libs=
+   ;;
+
+  *)
+    AC_CHECK_FUNC([shl_load],
+          [lt_cv_dlopen="shl_load"],
+      [AC_CHECK_LIB([dld], [shl_load],
+            [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"],
+       [AC_CHECK_FUNC([dlopen],
+             [lt_cv_dlopen="dlopen"],
+         [AC_CHECK_LIB([dl], [dlopen],
+               [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
+           [AC_CHECK_LIB([svld], [dlopen],
+                 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
+             [AC_CHECK_LIB([dld], [dld_link],
+                   [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"])
+             ])
+           ])
+         ])
+       ])
+      ])
+    ;;
+  esac
+
+  if test "x$lt_cv_dlopen" != xno; then
+    enable_dlopen=yes
+  else
+    enable_dlopen=no
+  fi
+
+  case $lt_cv_dlopen in
+  dlopen)
+    save_CPPFLAGS="$CPPFLAGS"
+    AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl
+    test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+    save_LDFLAGS="$LDFLAGS"
+    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+    save_LIBS="$LIBS"
+    LIBS="$lt_cv_dlopen_libs $LIBS"
+
+    AC_CACHE_CHECK([whether a program can dlopen itself],
+         lt_cv_dlopen_self, [dnl
+         _LT_AC_TRY_DLOPEN_SELF(
+           lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
+           lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
+    ])
+
+    if test "x$lt_cv_dlopen_self" = xyes; then
+      LDFLAGS="$LDFLAGS $link_static_flag"
+      AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
+         lt_cv_dlopen_self_static, [dnl
+         _LT_AC_TRY_DLOPEN_SELF(
+           lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
+           lt_cv_dlopen_self_static=no,  lt_cv_dlopen_self_static=cross)
+      ])
+    fi
+
+    CPPFLAGS="$save_CPPFLAGS"
+    LDFLAGS="$save_LDFLAGS"
+    LIBS="$save_LIBS"
+    ;;
+  esac
+
+  case $lt_cv_dlopen_self in
+  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+  *) enable_dlopen_self=unknown ;;
+  esac
+
+  case $lt_cv_dlopen_self_static in
+  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+  *) enable_dlopen_self_static=unknown ;;
+  esac
+fi
+])# AC_LIBTOOL_DLOPEN_SELF
+
+AC_DEFUN([_LT_AC_LTCONFIG_HACK],
+[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl
+# Sed substitution that helps us do robust quoting.  It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='sed -e s/^X//'
+sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Constants:
+rm="rm -f"
+
+# Global variables:
+default_ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except M$VC,
+# which needs '.lib').
+libext=a
+ltmain="$ac_aux_dir/ltmain.sh"
+ofile="$default_ofile"
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+need_locks="$enable_libtool_lock"
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+test -z "$AS" && AS=as
+test -z "$CC" && CC=cc
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+test -z "$LD" && LD=ld
+test -z "$LN_S" && LN_S="ln -s"
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+test -z "$NM" && NM=nm
+test -z "$OBJDUMP" && OBJDUMP=objdump
+test -z "$RANLIB" && RANLIB=:
+test -z "$STRIP" && STRIP=:
+test -z "$ac_objext" && ac_objext=o
+
+if test x"$host" != x"$build"; then
+  ac_tool_prefix=${host_alias}-
+else
+  ac_tool_prefix=
+fi
+
+# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+case $host_os in
+linux-gnu*) ;;
+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+esac
+
+case $host_os in
+aix3*)
+  # AIX sometimes has problems with the GCC collect2 program.  For some
+  # reason, if we set the COLLECT_NAMES environment variable, the problems
+  # vanish in a puff of smoke.
+  if test "X${COLLECT_NAMES+set}" != Xset; then
+    COLLECT_NAMES=
+    export COLLECT_NAMES
+  fi
+  ;;
+esac
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+  case $host_os in
+  openbsd*)
+    old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
+    ;;
+  *)
+    old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
+    ;;
+  esac
+  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+
+# Allow CC to be a program name with arguments.
+set dummy $CC
+compiler="[$]2"
+
+AC_MSG_CHECKING([for objdir])
+rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+  objdir=.libs
+else
+  # MS-DOS does not allow filenames that begin with a dot.
+  objdir=_libs
+fi
+rmdir .libs 2>/dev/null
+AC_MSG_RESULT($objdir)
+
+
+AC_ARG_WITH(pic,
+[  --with-pic              try to use only PIC/non-PIC objects [default=use both]],
+pic_mode="$withval", pic_mode=default)
+test -z "$pic_mode" && pic_mode=default
+
+# We assume here that the value for lt_cv_prog_cc_pic will not be cached
+# in isolation, and that seeing it set (from the cache) indicates that
+# the associated values are set (in the cache) correctly too.
+AC_MSG_CHECKING([for $compiler option to produce PIC])
+AC_CACHE_VAL(lt_cv_prog_cc_pic,
+[ lt_cv_prog_cc_pic=
+  lt_cv_prog_cc_shlib=
+  lt_cv_prog_cc_wl=
+  lt_cv_prog_cc_static=
+  lt_cv_prog_cc_no_builtin=
+  lt_cv_prog_cc_can_build_shared=$can_build_shared
+
+  if test "$GCC" = yes; then
+    lt_cv_prog_cc_wl='-Wl,'
+    lt_cv_prog_cc_static='-static'
+
+    case $host_os in
+    aix*)
+      # Below there is a dirty hack to force normal static linking with -ldl
+      # The problem is because libdl dynamically linked with both libc and
+      # libC (AIX C++ library), which obviously doesn't included in libraries
+      # list by gcc. This cause undefined symbols with -static flags.
+      # This hack allows C programs to be linked with "-static -ldl", but
+      # not sure about C++ programs.
+      lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
+      ;;
+    amigaos*)
+      # FIXME: we need at least 68020 code to build shared libraries, but
+      # adding the `-m68020' flag to GCC prevents building anything better,
+      # like `-m68040'.
+      lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
+      ;;
+    beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
+      # PIC is the default for these OSes.
+      ;;
+    darwin* | rhapsody*)
+      # PIC is the default on this platform
+      # Common symbols not allowed in MH_DYLIB files
+      lt_cv_prog_cc_pic='-fno-common'
+      ;;
+    cygwin* | mingw* | pw32* | os2*)
+      # This hack is so that the source file can tell whether it is being
+      # built for inclusion in a dll (and should export symbols for example).
+      lt_cv_prog_cc_pic='-DDLL_EXPORT'
+      ;;
+    sysv4*MP*)
+      if test -d /usr/nec; then
+        lt_cv_prog_cc_pic=-Kconform_pic
+      fi
+      ;;
+    *)
+      lt_cv_prog_cc_pic='-fPIC'
+      ;;
+    esac
+  else
+    # PORTME Check for PIC flags for the system compiler.
+    case $host_os in
+    aix3* | aix4* | aix5*)
+      lt_cv_prog_cc_wl='-Wl,'
+      # All AIX code is PIC.
+      if test "$host_cpu" = ia64; then
+       # AIX 5 now supports IA64 processor
+       lt_cv_prog_cc_static='-Bstatic'
+      else
+       lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
+      fi
+      ;;
+
+    hpux9* | hpux10* | hpux11*)
+      # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
+      lt_cv_prog_cc_wl='-Wl,'
+      lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
+      lt_cv_prog_cc_pic='+Z'
+      ;;
+
+    irix5* | irix6*)
+      lt_cv_prog_cc_wl='-Wl,'
+      lt_cv_prog_cc_static='-non_shared'
+      # PIC (with -KPIC) is the default.
+      ;;
+
+    cygwin* | mingw* | pw32* | os2*)
+      # This hack is so that the source file can tell whether it is being
+      # built for inclusion in a dll (and should export symbols for example).
+      lt_cv_prog_cc_pic='-DDLL_EXPORT'
+      ;;
+
+    newsos6)
+      lt_cv_prog_cc_pic='-KPIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      ;;
+
+    osf3* | osf4* | osf5*)
+      # All OSF/1 code is PIC.
+      lt_cv_prog_cc_wl='-Wl,'
+      lt_cv_prog_cc_static='-non_shared'
+      ;;
+
+    sco3.2v5*)
+      lt_cv_prog_cc_pic='-Kpic'
+      lt_cv_prog_cc_static='-dn'
+      lt_cv_prog_cc_shlib='-belf'
+      ;;
+
+    solaris*)
+      lt_cv_prog_cc_pic='-KPIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      lt_cv_prog_cc_wl='-Wl,'
+      ;;
+
+    sunos4*)
+      lt_cv_prog_cc_pic='-PIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      lt_cv_prog_cc_wl='-Qoption ld '
+      ;;
+
+    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+      lt_cv_prog_cc_pic='-KPIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      if test "x$host_vendor" = xsni; then
+       lt_cv_prog_cc_wl='-LD'
+      else
+       lt_cv_prog_cc_wl='-Wl,'
+      fi
+      ;;
+
+    uts4*)
+      lt_cv_prog_cc_pic='-pic'
+      lt_cv_prog_cc_static='-Bstatic'
+      ;;
+
+    sysv4*MP*)
+      if test -d /usr/nec ;then
+       lt_cv_prog_cc_pic='-Kconform_pic'
+       lt_cv_prog_cc_static='-Bstatic'
+      fi
+      ;;
+
+    *)
+      lt_cv_prog_cc_can_build_shared=no
+      ;;
+    esac
+  fi
+])
+if test -z "$lt_cv_prog_cc_pic"; then
+  AC_MSG_RESULT([none])
+else
+  AC_MSG_RESULT([$lt_cv_prog_cc_pic])
+
+  # Check to make sure the pic_flag actually works.
+  AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works])
+  AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl
+    save_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
+    AC_TRY_COMPILE([], [], [dnl
+      case $host_os in
+      hpux9* | hpux10* | hpux11*)
+       # On HP-UX, both CC and GCC only warn that PIC is supported... then
+       # they create non-PIC objects.  So, if there were any warnings, we
+       # assume that PIC is not supported.
+       if test -s conftest.err; then
+         lt_cv_prog_cc_pic_works=no
+       else
+         lt_cv_prog_cc_pic_works=yes
+       fi
+       ;;
+      *)
+       lt_cv_prog_cc_pic_works=yes
+       ;;
+      esac
+    ], [dnl
+      lt_cv_prog_cc_pic_works=no
+    ])
+    CFLAGS="$save_CFLAGS"
+  ])
+
+  if test "X$lt_cv_prog_cc_pic_works" = Xno; then
+    lt_cv_prog_cc_pic=
+    lt_cv_prog_cc_can_build_shared=no
+  else
+    lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
+  fi
+
+  AC_MSG_RESULT([$lt_cv_prog_cc_pic_works])
+fi
+
+# Check for any special shared library compilation flags.
+if test -n "$lt_cv_prog_cc_shlib"; then
+  AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries])
+  if echo "$old_CC $old_CFLAGS " | egrep -e "[[        ]]$lt_cv_prog_cc_shlib[[        ]]" >/dev/null; then :
+  else
+   AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure])
+    lt_cv_prog_cc_can_build_shared=no
+  fi
+fi
+
+AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works])
+AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl
+  lt_cv_prog_cc_static_works=no
+  save_LDFLAGS="$LDFLAGS"
+  LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
+  AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes])
+  LDFLAGS="$save_LDFLAGS"
+])
+
+# Belt *and* braces to stop my trousers falling down:
+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
+AC_MSG_RESULT([$lt_cv_prog_cc_static_works])
+
+pic_flag="$lt_cv_prog_cc_pic"
+special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
+wl="$lt_cv_prog_cc_wl"
+link_static_flag="$lt_cv_prog_cc_static"
+no_builtin_flag="$lt_cv_prog_cc_no_builtin"
+can_build_shared="$lt_cv_prog_cc_can_build_shared"
+
+
+# Check to see if options -o and -c are simultaneously supported by compiler
+AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext])
+AC_CACHE_VAL([lt_cv_compiler_c_o], [
+$rm -r conftest 2>/dev/null
+mkdir conftest
+cd conftest
+echo "int some_variable = 0;" > conftest.$ac_ext
+mkdir out
+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
+# that will create temporary files in the current directory regardless of
+# the output directory.  Thus, making CWD read-only will cause this test
+# to fail, enabling locking or at least warning the user not to do parallel
+# builds.
+chmod -w .
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
+compiler_c_o=no
+if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
+  # The compiler can only warn and ignore the option if not recognized
+  # So say no if there are warnings
+  if test -s out/conftest.err; then
+    lt_cv_compiler_c_o=no
+  else
+    lt_cv_compiler_c_o=yes
+  fi
+else
+  # Append any errors to the config.log.
+  cat out/conftest.err 1>&AC_FD_CC
+  lt_cv_compiler_c_o=no
+fi
+CFLAGS="$save_CFLAGS"
+chmod u+w .
+$rm conftest* out/*
+rmdir out
+cd ..
+rmdir conftest
+$rm -r conftest 2>/dev/null
+])
+compiler_c_o=$lt_cv_compiler_c_o
+AC_MSG_RESULT([$compiler_c_o])
+
+if test x"$compiler_c_o" = x"yes"; then
+  # Check to see if we can write to a .lo
+  AC_MSG_CHECKING([if $compiler supports -c -o file.lo])
+  AC_CACHE_VAL([lt_cv_compiler_o_lo], [
+  lt_cv_compiler_o_lo=no
+  save_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -c -o conftest.lo"
+  save_objext="$ac_objext"
+  ac_objext=lo
+  AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
+    # The compiler can only warn and ignore the option if not recognized
+    # So say no if there are warnings
+    if test -s conftest.err; then
+      lt_cv_compiler_o_lo=no
+    else
+      lt_cv_compiler_o_lo=yes
+    fi
+  ])
+  ac_objext="$save_objext"
+  CFLAGS="$save_CFLAGS"
+  ])
+  compiler_o_lo=$lt_cv_compiler_o_lo
+  AC_MSG_RESULT([$compiler_o_lo])
+else
+  compiler_o_lo=no
+fi
+
+# Check to see if we can do hard links to lock some files if needed
+hard_links="nottested"
+if test "$compiler_c_o" = no && test "$need_locks" != no; then
+  # do not overwrite the value of need_locks provided by the user
+  AC_MSG_CHECKING([if we can lock with hard links])
+  hard_links=yes
+  $rm conftest*
+  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+  touch conftest.a
+  ln conftest.a conftest.b 2>&5 || hard_links=no
+  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+  AC_MSG_RESULT([$hard_links])
+  if test "$hard_links" = no; then
+    AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe])
+    need_locks=warn
+  fi
+else
+  need_locks=no
+fi
+
+if test "$GCC" = yes; then
+  # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
+  AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions])
+  echo "int some_variable = 0;" > conftest.$ac_ext
+  save_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
+  compiler_rtti_exceptions=no
+  AC_TRY_COMPILE([], [int some_variable = 0;], [dnl
+    # The compiler can only warn and ignore the option if not recognized
+    # So say no if there are warnings
+    if test -s conftest.err; then
+      compiler_rtti_exceptions=no
+    else
+      compiler_rtti_exceptions=yes
+    fi
+  ])
+  CFLAGS="$save_CFLAGS"
+  AC_MSG_RESULT([$compiler_rtti_exceptions])
+
+  if test "$compiler_rtti_exceptions" = "yes"; then
+    no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
+  else
+    no_builtin_flag=' -fno-builtin'
+  fi
+fi
+
+# See if the linker supports building shared libraries.
+AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries])
+
+allow_undefined_flag=
+no_undefined_flag=
+need_lib_prefix=unknown
+need_version=unknown
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+archive_cmds=
+archive_expsym_cmds=
+old_archive_from_new_cmds=
+old_archive_from_expsyms_cmds=
+export_dynamic_flag_spec=
+whole_archive_flag_spec=
+thread_safe_flag_spec=
+hardcode_into_libs=no
+hardcode_libdir_flag_spec=
+hardcode_libdir_separator=
+hardcode_direct=no
+hardcode_minus_L=no
+hardcode_shlibpath_var=unsupported
+runpath_var=
+link_all_deplibs=unknown
+always_export_symbols=no
+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
+# include_expsyms should be a list of space-separated symbols to be *always*
+# included in the symbol list
+include_expsyms=
+# exclude_expsyms can be an egrep regular expression of symbols to exclude
+# it will be wrapped by ` (' and `)$', so one must not match beginning or
+# end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+# as well as any symbol that contains `d'.
+exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+# platforms (ab)use it in PIC code, but their linkers get confused if
+# the symbol is explicitly referenced.  Since portable code cannot
+# rely on this symbol name, it's probably fine to never include it in
+# preloaded symbol tables.
+extract_expsyms_cmds=
+
+case $host_os in
+cygwin* | mingw* | pw32*)
+  # FIXME: the MSVC++ port hasn't been tested in a loooong time
+  # When not using gcc, we currently assume that we are using
+  # Microsoft Visual C++.
+  if test "$GCC" != yes; then
+    with_gnu_ld=no
+  fi
+  ;;
+openbsd*)
+  with_gnu_ld=no
+  ;;
+esac
+
+ld_shlibs=yes
+if test "$with_gnu_ld" = yes; then
+  # If archive_cmds runs LD, not CC, wlarc should be empty
+  wlarc='${wl}'
+
+  # See if GNU ld supports shared libraries.
+  case $host_os in
+  aix3* | aix4* | aix5*)
+    # On AIX, the GNU linker is very broken
+    # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
+    ld_shlibs=no
+    cat <<EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support.  If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+EOF
+    ;;
+
+  amigaos*)
+    archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_minus_L=yes
+
+    # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
+    # that the semantics of dynamic libraries on AmigaOS, at least up
+    # to version 4, is to share data among multiple programs linked
+    # with the same dynamic library.  Since this doesn't match the
+    # behavior of shared libraries on other platforms, we can use
+    # them.
+    ld_shlibs=no
+    ;;
+
+  beos*)
+    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+      allow_undefined_flag=unsupported
+      # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+      # support --undefined.  This deserves some investigation.  FIXME
+      archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+    else
+      ld_shlibs=no
+    fi
+    ;;
+
+  cygwin* | mingw* | pw32*)
+    # hardcode_libdir_flag_spec is actually meaningless, as there is
+    # no search path for DLLs.
+    hardcode_libdir_flag_spec='-L$libdir'
+    allow_undefined_flag=unsupported
+    always_export_symbols=yes
+
+    extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
+      sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
+      test -f $output_objdir/impgen.exe || (cd $output_objdir && \
+      if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
+      else $CC -o impgen impgen.c ; fi)~
+      $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
+
+    old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
+
+    # cygwin and mingw dlls have different entry points and sets of symbols
+    # to exclude.
+    # FIXME: what about values for MSVC?
+    dll_entry=__cygwin_dll_entry@12
+    dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
+    case $host_os in
+    mingw*)
+      # mingw values
+      dll_entry=_DllMainCRTStartup@12
+      dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
+      ;;
+    esac
+
+    # mingw and cygwin differ, and it's simplest to just exclude the union
+    # of the two symbol sets.
+    dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
+
+    # recent cygwin and mingw systems supply a stub DllMain which the user
+    # can override, but on older systems we have to supply one (in ltdll.c)
+    if test "x$lt_cv_need_dllmain" = "xyes"; then
+      ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
+      ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
+       test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
+    else
+      ltdll_obj=
+      ltdll_cmds=
+    fi
+
+    # Extract the symbol export list from an `--export-all' def file,
+    # then regenerate the def file from the symbol export list, so that
+    # the compiled dll only exports the symbol export list.
+    # Be careful not to strip the DATA tag left be newer dlltools.
+    export_symbols_cmds="$ltdll_cmds"'
+      $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
+      sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
+
+    # If the export-symbols file already is a .def file (1st line
+    # is EXPORTS), use it as is.
+    # If DATA tags from a recent dlltool are present, honour them!
+    archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
+       cp $export_symbols $output_objdir/$soname-def;
+      else
+       echo EXPORTS > $output_objdir/$soname-def;
+       _lt_hint=1;
+       cat $export_symbols | while read symbol; do
+        set dummy \$symbol;
+        case \[$]# in
+          2) echo "   \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
+          *) echo "     \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;;
+        esac;
+        _lt_hint=`expr 1 + \$_lt_hint`;
+       done;
+      fi~
+      '"$ltdll_cmds"'
+      $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
+      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
+      $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
+      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
+      $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
+    ;;
+
+  netbsd*)
+    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+      archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+      wlarc=
+    else
+      archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+    fi
+    ;;
+
+  solaris* | sysv5*)
+    if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
+      ld_shlibs=no
+      cat <<EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems.  Therefore, libtool
+*** is disabling shared libraries support.  We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer.  Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+EOF
+    elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+    else
+      ld_shlibs=no
+    fi
+    ;;
+
+  sunos4*)
+    archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+    wlarc=
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  *)
+    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+    else
+      ld_shlibs=no
+    fi
+    ;;
+  esac
+
+  if test "$ld_shlibs" = yes; then
+    runpath_var=LD_RUN_PATH
+    hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
+    export_dynamic_flag_spec='${wl}--export-dynamic'
+    case $host_os in
+    cygwin* | mingw* | pw32*)
+      # dlltool doesn't understand --whole-archive et. al.
+      whole_archive_flag_spec=
+      ;;
+    *)
+      # ancient GNU ld didn't support --whole-archive et. al.
+      if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
+       whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      else
+       whole_archive_flag_spec=
+      fi
+      ;;
+    esac
+  fi
+else
+  # PORTME fill in a description of your system's linker (not GNU ld)
+  case $host_os in
+  aix3*)
+    allow_undefined_flag=unsupported
+    always_export_symbols=yes
+    archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+    # Note: this linker hardcodes the directories in LIBPATH if there
+    # are no directories specified by -L.
+    hardcode_minus_L=yes
+    if test "$GCC" = yes && test -z "$link_static_flag"; then
+      # Neither direct hardcoding nor static linking is supported with a
+      # broken collect2.
+      hardcode_direct=unsupported
+    fi
+    ;;
+
+  aix4* | aix5*)
+    if test "$host_cpu" = ia64; then
+      # On IA64, the linker does run time linking by default, so we don't
+      # have to do anything special.
+      aix_use_runtimelinking=no
+      exp_sym_flag='-Bexport'
+      no_entry_flag=""
+    else
+      aix_use_runtimelinking=no
+
+      # Test if we are trying to use run time linking or normal
+      # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+      # need to do runtime linking.
+      case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*)
+       for ld_flag in $LDFLAGS; do
+         if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+           aix_use_runtimelinking=yes
+           break
+         fi
+       done
+      esac
+
+      exp_sym_flag='-bexport'
+      no_entry_flag='-bnoentry'
+    fi
+
+    # When large executables or shared objects are built, AIX ld can
+    # have problems creating the table of contents.  If linking a library
+    # or program results in "error TOC overflow" add -mminimal-toc to
+    # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
+    # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+    hardcode_direct=yes
+    archive_cmds=''
+    hardcode_libdir_separator=':'
+    if test "$GCC" = yes; then
+      case $host_os in aix4.[[012]]|aix4.[[012]].*)
+       collect2name=`${CC} -print-prog-name=collect2`
+       if test -f "$collect2name" && \
+         strings "$collect2name" | grep resolve_lib_name >/dev/null
+       then
+         # We have reworked collect2
+         hardcode_direct=yes
+       else
+         # We have old collect2
+         hardcode_direct=unsupported
+         # It fails to find uninstalled libraries when the uninstalled
+         # path is not listed in the libpath.  Setting hardcode_minus_L
+         # to unsupported forces relinking
+         hardcode_minus_L=yes
+         hardcode_libdir_flag_spec='-L$libdir'
+         hardcode_libdir_separator=
+       fi
+      esac
+
+      shared_flag='-shared'
+    else
+      # not using gcc
+      if test "$host_cpu" = ia64; then
+       shared_flag='${wl}-G'
+      else
+       if test "$aix_use_runtimelinking" = yes; then
+         shared_flag='${wl}-G'
+       else
+         shared_flag='${wl}-bM:SRE'
+       fi
+      fi
+    fi
+
+    # It seems that -bexpall can do strange things, so it is better to
+    # generate a list of symbols to export.
+    always_export_symbols=yes
+    if test "$aix_use_runtimelinking" = yes; then
+      # Warning - without using the other runtime loading flags (-brtl),
+      # -berok will link without error, but may produce a broken library.
+      allow_undefined_flag='-berok'
+      hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
+      archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+    else
+      if test "$host_cpu" = ia64; then
+       hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+       allow_undefined_flag="-z nodefs"
+       archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+      else
+       hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
+       # Warning - without using the other run time loading flags,
+       # -berok will link without error, but may produce a broken library.
+       allow_undefined_flag='${wl}-berok'
+       # This is a bit strange, but is similar to how AIX traditionally builds
+       # it's shared libraries.
+       archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
+      fi
+    fi
+    ;;
+
+  amigaos*)
+    archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_minus_L=yes
+    # see comment about different semantics on the GNU ld section
+    ld_shlibs=no
+    ;;
+
+  cygwin* | mingw* | pw32*)
+    # When not using gcc, we currently assume that we are using
+    # Microsoft Visual C++.
+    # hardcode_libdir_flag_spec is actually meaningless, as there is
+    # no search path for DLLs.
+    hardcode_libdir_flag_spec=' '
+    allow_undefined_flag=unsupported
+    # Tell ltmain to make .lib files, not .a files.
+    libext=lib
+    # FIXME: Setting linknames here is a bad hack.
+    archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+    # The linker will automatically build a .lib file if we build a DLL.
+    old_archive_from_new_cmds='true'
+    # FIXME: Should let the user specify the lib program.
+    old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
+    fix_srcfile_path='`cygpath -w "$srcfile"`'
+    ;;
+
+  darwin* | rhapsody*)
+    case "$host_os" in
+    rhapsody* | darwin1.[[012]])
+      allow_undefined_flag='-undefined suppress'
+      ;;
+    *) # Darwin 1.3 on
+      allow_undefined_flag='-flat_namespace -undefined suppress'
+      ;;
+    esac
+    # FIXME: Relying on posixy $() will cause problems for
+    #        cross-compilation, but unfortunately the echo tests do not
+    #        yet detect zsh echo's removal of \ escapes.
+    archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
+    # We need to add '_' to the symbols in $export_symbols first
+    #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    whole_archive_flag_spec='-all_load $convenience'
+    ;;
+
+  freebsd1*)
+    ld_shlibs=no
+    ;;
+
+  # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+  # support.  Future versions do this automatically, but an explicit c++rt0.o
+  # does not break anything, and helps significantly (at the cost of a little
+  # extra space).
+  freebsd2.2*)
+    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+  freebsd2*)
+    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_direct=yes
+    hardcode_minus_L=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+  freebsd*)
+    archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  hpux9* | hpux10* | hpux11*)
+    case $host_os in
+    hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
+    *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
+    esac
+    hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+    hardcode_libdir_separator=:
+    hardcode_direct=yes
+    hardcode_minus_L=yes # Not in the search PATH, but as the default
+                        # location of the library.
+    export_dynamic_flag_spec='${wl}-E'
+    ;;
+
+  irix5* | irix6*)
+    if test "$GCC" = yes; then
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+    else
+      archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+    fi
+    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    hardcode_libdir_separator=:
+    link_all_deplibs=yes
+    ;;
+
+  netbsd*)
+    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+    else
+      archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
+    fi
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  newsos6)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_direct=yes
+    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    hardcode_libdir_separator=:
+    hardcode_shlibpath_var=no
+    ;;
+
+  openbsd*)
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+      archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+      export_dynamic_flag_spec='${wl}-E'
+    else
+      case "$host_os" in
+      openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+       archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+       hardcode_libdir_flag_spec='-R$libdir'
+        ;;
+      *)
+        archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
+        hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+        ;;
+      esac
+    fi
+    ;;
+
+  os2*)
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_minus_L=yes
+    allow_undefined_flag=unsupported
+    archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+    old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+    ;;
+
+  osf3*)
+    if test "$GCC" = yes; then
+      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+    else
+      allow_undefined_flag=' -expect_unresolved \*'
+      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+    fi
+    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    hardcode_libdir_separator=:
+    ;;
+
+  osf4* | osf5*)       # as osf3* with the addition of -msym flag
+    if test "$GCC" = yes; then
+      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    else
+      allow_undefined_flag=' -expect_unresolved \*'
+      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+      archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
+      $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
+
+      #Both c and cxx compiler support -rpath directly
+      hardcode_libdir_flag_spec='-rpath $libdir'
+    fi
+    hardcode_libdir_separator=:
+    ;;
+
+  sco3.2v5*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_shlibpath_var=no
+    runpath_var=LD_RUN_PATH
+    hardcode_runpath_var=yes
+    export_dynamic_flag_spec='${wl}-Bexport'
+    ;;
+
+  solaris*)
+    # gcc --version < 3.0 without binutils cannot create self contained
+    # shared libraries reliably, requiring libgcc.a to resolve some of
+    # the object symbols generated in some cases.  Libraries that use
+    # assert need libgcc.a to resolve __eprintf, for example.  Linking
+    # a copy of libgcc.a into every shared library to guarantee resolving
+    # such symbols causes other problems:  According to Tim Van Holder
+    # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
+    # (to the application) exception stack for one thing.
+    no_undefined_flag=' -z defs'
+    if test "$GCC" = yes; then
+      case `$CC --version 2>/dev/null` in
+      [[12]].*)
+       cat <<EOF 1>&2
+
+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
+*** create self contained shared libraries on Solaris systems, without
+*** introducing a dependency on libgcc.a.  Therefore, libtool is disabling
+*** -no-undefined support, which will at least allow you to build shared
+*** libraries.  However, you may find that when you link such libraries
+*** into an application without using GCC, you have to manually add
+*** \`gcc --print-libgcc-file-name\` to the link command.  We urge you to
+*** upgrade to a newer version of GCC.  Another option is to rebuild your
+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
+
+EOF
+        no_undefined_flag=
+       ;;
+      esac
+    fi
+    # $CC -shared without GNU ld will not create a library from C++
+    # object files and a static libstdc++, better avoid it by now
+    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_shlibpath_var=no
+    case $host_os in
+    solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+    *) # Supported since Solaris 2.6 (maybe 2.5.1?)
+      whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
+    esac
+    link_all_deplibs=yes
+    ;;
+
+  sunos4*)
+    if test "x$host_vendor" = xsequent; then
+      # Use $CC to link under sequent, because it throws in some extra .o
+      # files that make .init and .fini sections work.
+      archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+    else
+      archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+    fi
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_direct=yes
+    hardcode_minus_L=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  sysv4)
+    if test "x$host_vendor" = xsno; then
+      archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_direct=yes # is this really true???
+    else
+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_direct=no #Motorola manual says yes, but my tests say they lie
+    fi
+    runpath_var='LD_RUN_PATH'
+    hardcode_shlibpath_var=no
+    ;;
+
+  sysv4.3*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_shlibpath_var=no
+    export_dynamic_flag_spec='-Bexport'
+    ;;
+
+  sysv5*)
+    no_undefined_flag=' -z text'
+    # $CC -shared without GNU ld will not create a library from C++
+    # object files and a static libstdc++, better avoid it by now
+    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+    hardcode_libdir_flag_spec=
+    hardcode_shlibpath_var=no
+    runpath_var='LD_RUN_PATH'
+    ;;
+
+  uts4*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_shlibpath_var=no
+    ;;
+
+  dgux*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_shlibpath_var=no
+    ;;
+
+  sysv4*MP*)
+    if test -d /usr/nec; then
+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_shlibpath_var=no
+      runpath_var=LD_RUN_PATH
+      hardcode_runpath_var=yes
+      ld_shlibs=yes
+    fi
+    ;;
+
+  sysv4.2uw2*)
+    archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_direct=yes
+    hardcode_minus_L=no
+    hardcode_shlibpath_var=no
+    hardcode_runpath_var=yes
+    runpath_var=LD_RUN_PATH
+    ;;
+
+  sysv5uw7* | unixware7*)
+    no_undefined_flag='${wl}-z ${wl}text'
+    if test "$GCC" = yes; then
+      archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+    else
+      archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+    fi
+    runpath_var='LD_RUN_PATH'
+    hardcode_shlibpath_var=no
+    ;;
+
+  *)
+    ld_shlibs=no
+    ;;
+  esac
+fi
+AC_MSG_RESULT([$ld_shlibs])
+test "$ld_shlibs" = no && can_build_shared=no
+
+# Check hardcoding attributes.
+AC_MSG_CHECKING([how to hardcode library paths into programs])
+hardcode_action=
+if test -n "$hardcode_libdir_flag_spec" || \
+   test -n "$runpath_var"; then
+
+  # We can hardcode non-existant directories.
+  if test "$hardcode_direct" != no &&
+     # If the only mechanism to avoid hardcoding is shlibpath_var, we
+     # have to relink, otherwise we might link with an installed library
+     # when we should be linking with a yet-to-be-installed one
+     ## test "$hardcode_shlibpath_var" != no &&
+     test "$hardcode_minus_L" != no; then
+    # Linking always hardcodes the temporary library directory.
+    hardcode_action=relink
+  else
+    # We can link without hardcoding, and we can hardcode nonexisting dirs.
+    hardcode_action=immediate
+  fi
+else
+  # We cannot hardcode anything, or else we can only hardcode existing
+  # directories.
+  hardcode_action=unsupported
+fi
+AC_MSG_RESULT([$hardcode_action])
+
+striplib=
+old_striplib=
+AC_MSG_CHECKING([whether stripping libraries is possible])
+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
+  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+  AC_MSG_RESULT([yes])
+else
+  AC_MSG_RESULT([no])
+fi
+
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+# PORTME Fill in your ld.so characteristics
+AC_MSG_CHECKING([dynamic linker characteristics])
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+
+case $host_os in
+aix3*)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix $libname.a'
+  shlibpath_var=LIBPATH
+
+  # AIX has no versioning support, so we append a major version to the name.
+  soname_spec='${libname}${release}.so$major'
+  ;;
+
+aix4* | aix5*)
+  version_type=linux
+  if test "$host_cpu" = ia64; then
+    # AIX 5 supports IA64
+    library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
+    shlibpath_var=LD_LIBRARY_PATH
+  else
+    # With GCC up to 2.95.x, collect2 would create an import file
+    # for dependence libraries.  The import file would start with
+    # the line `#! .'.  This would cause the generated library to
+    # depend on `.', always an invalid library.  This was fixed in
+    # development snapshots of GCC prior to 3.0.
+    case $host_os in
+      aix4 | aix4.[[01]] | aix4.[[01]].*)
+       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+            echo ' yes '
+            echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
+         :
+       else
+         can_build_shared=no
+       fi
+       ;;
+    esac
+    # AIX (on Power*) has no versioning support, so currently we can
+    # not hardcode correct soname into executable. Probably we can
+    # add versioning support to collect2, so additional links can
+    # be useful in future.
+    if test "$aix_use_runtimelinking" = yes; then
+      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+      # instead of lib<name>.a to let people know that these are not
+      # typical AIX shared libraries.
+      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+    else
+      # We preserve .a as extension for shared libraries through AIX4.2
+      # and later when we are not doing run time linking.
+      library_names_spec='${libname}${release}.a $libname.a'
+      soname_spec='${libname}${release}.so$major'
+    fi
+    shlibpath_var=LIBPATH
+  fi
+  ;;
+
+amigaos*)
+  library_names_spec='$libname.ixlibrary $libname.a'
+  # Create ${libname}_ixlibrary.a entries in /sys/libs.
+  finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
+  ;;
+
+beos*)
+  library_names_spec='${libname}.so'
+  dynamic_linker="$host_os ld.so"
+  shlibpath_var=LIBRARY_PATH
+  ;;
+
+bsdi4*)
+  version_type=linux
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
+  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+  export_dynamic_flag_spec=-rdynamic
+  # the default ld.so.conf also contains /usr/contrib/lib and
+  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+  # libtool to hard-code these into programs
+  ;;
+
+cygwin* | mingw* | pw32*)
+  version_type=windows
+  need_version=no
+  need_lib_prefix=no
+  case $GCC,$host_os in
+  yes,cygwin*)
+    library_names_spec='$libname.dll.a'
+    soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
+    postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
+      dldir=$destdir/`dirname \$dlpath`~
+      test -d \$dldir || mkdir -p \$dldir~
+      $install_prog .libs/$dlname \$dldir/$dlname'
+    postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
+      dlpath=$dir/\$dldll~
+       $rm \$dlpath'
+    ;;
+  yes,mingw*)
+    library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll'
+    sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
+    ;;
+  yes,pw32*)
+    library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
+    ;;
+  *)
+    library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib'
+    ;;
+  esac
+  dynamic_linker='Win32 ld.exe'
+  # FIXME: first we should search . and the directory the executable is in
+  shlibpath_var=PATH
+  ;;
+
+darwin* | rhapsody*)
+  dynamic_linker="$host_os dyld"
+  version_type=darwin
+  need_lib_prefix=no
+  need_version=no
+  # FIXME: Relying on posixy $() will cause problems for
+  #        cross-compilation, but unfortunately the echo tests do not
+  #        yet detect zsh echo's removal of \ escapes.
+  library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
+  soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
+  shlibpath_overrides_runpath=yes
+  shlibpath_var=DYLD_LIBRARY_PATH
+  ;;
+
+freebsd1*)
+  dynamic_linker=no
+  ;;
+
+freebsd*)
+  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+  version_type=freebsd-$objformat
+  case $version_type in
+    freebsd-elf*)
+      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
+      need_version=no
+      need_lib_prefix=no
+      ;;
+    freebsd-*)
+      library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
+      need_version=yes
+      ;;
+  esac
+  shlibpath_var=LD_LIBRARY_PATH
+  case $host_os in
+  freebsd2*)
+    shlibpath_overrides_runpath=yes
+    ;;
+  *)
+    shlibpath_overrides_runpath=no
+    hardcode_into_libs=yes
+    ;;
+  esac
+  ;;
+
+gnu*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  hardcode_into_libs=yes
+  ;;
+
+hpux9* | hpux10* | hpux11*)
+  # Give a soname corresponding to the major version so that dld.sl refuses to
+  # link against other versions.
+  dynamic_linker="$host_os dld.sl"
+  version_type=sunos
+  need_lib_prefix=no
+  need_version=no
+  shlibpath_var=SHLIB_PATH
+  shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+  library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
+  soname_spec='${libname}${release}.sl$major'
+  # HP-UX runs *really* slowly unless shared libraries are mode 555.
+  postinstall_cmds='chmod 555 $lib'
+  ;;
+
+irix5* | irix6*)
+  version_type=irix
+  need_lib_prefix=no
+  need_version=no
+  soname_spec='${libname}${release}.so$major'
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
+  case $host_os in
+  irix5*)
+    libsuff= shlibsuff=
+    ;;
+  *)
+    case $LD in # libtool.m4 will add one of these switches to LD
+    *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
+    *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
+    *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
+    *) libsuff= shlibsuff= libmagic=never-match;;
+    esac
+    ;;
+  esac
+  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+  shlibpath_overrides_runpath=no
+  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+  ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
+  dynamic_linker=no
+  ;;
+
+# This must be Linux ELF.
+linux-gnu*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  # This implies no fast_install, which is unacceptable.
+  # Some rework will be needed to allow for fast_install
+  # before this can be enabled.
+  hardcode_into_libs=yes
+
+  # We used to test for /lib/ld.so.1 and disable shared libraries on
+  # powerpc, because MkLinux only supported shared libraries with the
+  # GNU dynamic linker.  Since this was broken with cross compilers,
+  # most powerpc-linux boxes support dynamic linking these days and
+  # people can always --disable-shared, the test was removed, and we
+  # assume the GNU/Linux dynamic linker is in use.
+  dynamic_linker='GNU/Linux ld.so'
+  ;;
+
+netbsd*)
+  version_type=sunos
+  need_lib_prefix=no
+  need_version=no
+  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+    library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
+    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+    dynamic_linker='NetBSD (a.out) ld.so'
+  else
+    library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
+    soname_spec='${libname}${release}.so$major'
+    dynamic_linker='NetBSD ld.elf_so'
+  fi
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  hardcode_into_libs=yes
+  ;;
+
+newsos6)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  ;;
+
+openbsd*)
+  version_type=sunos
+  need_lib_prefix=no
+  need_version=no
+  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+    case "$host_os" in
+    openbsd2.[[89]] | openbsd2.[[89]].*)
+      shlibpath_overrides_runpath=no
+      ;;
+    *)
+      shlibpath_overrides_runpath=yes
+      ;;
+    esac
+  else
+    shlibpath_overrides_runpath=yes
+  fi
+  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+os2*)
+  libname_spec='$name'
+  need_lib_prefix=no
+  library_names_spec='$libname.dll $libname.a'
+  dynamic_linker='OS/2 ld.exe'
+  shlibpath_var=LIBPATH
+  ;;
+
+osf3* | osf4* | osf5*)
+  version_type=osf
+  need_version=no
+  soname_spec='${libname}${release}.so'
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
+  shlibpath_var=LD_LIBRARY_PATH
+  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
+  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+  ;;
+
+sco3.2v5*)
+  version_type=osf
+  soname_spec='${libname}${release}.so$major'
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+solaris*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  hardcode_into_libs=yes
+  # ldd complains unless libraries are executable
+  postinstall_cmds='chmod +x $lib'
+  ;;
+
+sunos4*)
+  version_type=sunos
+  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
+  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  if test "$with_gnu_ld" = yes; then
+    need_lib_prefix=no
+  fi
+  need_version=yes
+  ;;
+
+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  case $host_vendor in
+    sni)
+      shlibpath_overrides_runpath=no
+      ;;
+    motorola)
+      need_lib_prefix=no
+      need_version=no
+      shlibpath_overrides_runpath=no
+      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+      ;;
+  esac
+  ;;
+
+uts4*)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+dgux*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+sysv4*MP*)
+  if test -d /usr/nec ;then
+    version_type=linux
+    library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
+    soname_spec='$libname.so.$major'
+    shlibpath_var=LD_LIBRARY_PATH
+  fi
+  ;;
+
+*)
+  dynamic_linker=no
+  ;;
+esac
+AC_MSG_RESULT([$dynamic_linker])
+test "$dynamic_linker" = no && can_build_shared=no
+
+# Report the final consequences.
+AC_MSG_CHECKING([if libtool supports shared libraries])
+AC_MSG_RESULT([$can_build_shared])
+
+AC_MSG_CHECKING([whether to build shared libraries])
+test "$can_build_shared" = "no" && enable_shared=no
+
+# On AIX, shared libraries and static libraries use the same namespace, and
+# are all built from PIC.
+case "$host_os" in
+aix3*)
+  test "$enable_shared" = yes && enable_static=no
+  if test -n "$RANLIB"; then
+    archive_cmds="$archive_cmds~\$RANLIB \$lib"
+    postinstall_cmds='$RANLIB $lib'
+  fi
+  ;;
+
+aix4*)
+  if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+    test "$enable_shared" = yes && enable_static=no
+  fi
+  ;;
+esac
+AC_MSG_RESULT([$enable_shared])
+
+AC_MSG_CHECKING([whether to build static libraries])
+# Make sure either enable_shared or enable_static is yes.
+test "$enable_shared" = yes || enable_static=yes
+AC_MSG_RESULT([$enable_static])
+
+if test "$hardcode_action" = relink; then
+  # Fast installation is not supported
+  enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+     test "$enable_shared" = no; then
+  # Fast installation is not necessary
+  enable_fast_install=needless
+fi
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+AC_LIBTOOL_DLOPEN_SELF
+
+if test "$enable_shared" = yes && test "$GCC" = yes; then
+  case $archive_cmds in
+  *'~'*)
+    # FIXME: we may have to deal with multi-command sequences.
+    ;;
+  '$CC '*)
+    # Test whether the compiler implicitly links with -lc since on some
+    # systems, -lgcc has to come before -lc. If gcc already passes -lc
+    # to ld, don't add -lc before -lgcc.
+    AC_MSG_CHECKING([whether -lc should be explicitly linked in])
+    AC_CACHE_VAL([lt_cv_archive_cmds_need_lc],
+    [$rm conftest*
+    echo 'static int dummy;' > conftest.$ac_ext
+
+    if AC_TRY_EVAL(ac_compile); then
+      soname=conftest
+      lib=conftest
+      libobjs=conftest.$ac_objext
+      deplibs=
+      wl=$lt_cv_prog_cc_wl
+      compiler_flags=-v
+      linker_flags=-v
+      verstring=
+      output_objdir=.
+      libname=conftest
+      save_allow_undefined_flag=$allow_undefined_flag
+      allow_undefined_flag=
+      if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1)
+      then
+       lt_cv_archive_cmds_need_lc=no
+      else
+       lt_cv_archive_cmds_need_lc=yes
+      fi
+      allow_undefined_flag=$save_allow_undefined_flag
+    else
+      cat conftest.err 1>&5
+    fi])
+    AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc])
+    ;;
+  esac
+fi
+need_lc=${lt_cv_archive_cmds_need_lc-yes}
+
+# The second clause should only fire when bootstrapping the
+# libtool distribution, otherwise you forgot to ship ltmain.sh
+# with your package, and you will get complaints that there are
+# no rules to generate ltmain.sh.
+if test -f "$ltmain"; then
+  :
+else
+  # If there is no Makefile yet, we rely on a make rule to execute
+  # `config.status --recheck' to rerun these tests and create the
+  # libtool script then.
+  test -f Makefile && make "$ltmain"
+fi
+
+if test -f "$ltmain"; then
+  trap "$rm \"${ofile}T\"; exit 1" 1 2 15
+  $rm -f "${ofile}T"
+
+  echo creating $ofile
+
+  # Now quote all the things that may contain metacharacters while being
+  # careful not to overquote the AC_SUBSTed values.  We take copies of the
+  # variables and quote the copies for generation of the libtool script.
+  for var in echo old_CC old_CFLAGS \
+    AR AR_FLAGS CC LD LN_S NM SHELL \
+    reload_flag reload_cmds wl \
+    pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
+    thread_safe_flag_spec whole_archive_flag_spec libname_spec \
+    library_names_spec soname_spec \
+    RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
+    old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
+    postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
+    old_striplib striplib file_magic_cmd export_symbols_cmds \
+    deplibs_check_method allow_undefined_flag no_undefined_flag \
+    finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
+    global_symbol_to_c_name_address \
+    hardcode_libdir_flag_spec hardcode_libdir_separator  \
+    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
+    compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
+
+    case $var in
+    reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
+    old_postinstall_cmds | old_postuninstall_cmds | \
+    export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
+    extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
+    postinstall_cmds | postuninstall_cmds | \
+    finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
+      # Double-quote double-evaled strings.
+      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
+      ;;
+    *)
+      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
+      ;;
+    esac
+  done
+
+  cat <<__EOF__ > "${ofile}T"
+#! $SHELL
+
+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+# Copyright (C) 1996-2000 Free Software Foundation, Inc.
+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#
+# 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.
+#
+# 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.
+
+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
+Xsed="sed -e s/^X//"
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+
+# ### BEGIN LIBTOOL CONFIG
+
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+
+# Shell to use when invoking shell scripts.
+SHELL=$lt_SHELL
+
+# Whether or not to build shared libraries.
+build_libtool_libs=$enable_shared
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
+# Whether or not to add -lc for building shared libraries.
+build_libtool_need_lc=$need_lc
+
+# Whether or not to optimize for fast installation.
+fast_install=$enable_fast_install
+
+# The host system.
+host_alias=$host_alias
+host=$host
+
+# An echo program that does not interpret backslashes.
+echo=$lt_echo
+
+# The archiver.
+AR=$lt_AR
+AR_FLAGS=$lt_AR_FLAGS
+
+# The default C compiler.
+CC=$lt_CC
+
+# Is the compiler the GNU C compiler?
+with_gcc=$GCC
+
+# The linker used to build libraries.
+LD=$lt_LD
+
+# Whether we need hard or soft links.
+LN_S=$lt_LN_S
+
+# A BSD-compatible nm program.
+NM=$lt_NM
+
+# A symbol stripping program
+STRIP=$STRIP
+
+# Used to examine libraries when file_magic_cmd begins "file"
+MAGIC_CMD=$MAGIC_CMD
+
+# Used on cygwin: DLL creation program.
+DLLTOOL="$DLLTOOL"
+
+# Used on cygwin: object dumper.
+OBJDUMP="$OBJDUMP"
+
+# Used on cygwin: assembler.
+AS="$AS"
+
+# The name of the directory that contains temporary libtool files.
+objdir=$objdir
+
+# How to create reloadable object files.
+reload_flag=$lt_reload_flag
+reload_cmds=$lt_reload_cmds
+
+# How to pass a linker flag through the compiler.
+wl=$lt_wl
+
+# Object file suffix (normally "o").
+objext="$ac_objext"
+
+# Old archive suffix (normally "a").
+libext="$libext"
+
+# Executable file suffix (normally "").
+exeext="$exeext"
+
+# Additional compiler flags for building library objects.
+pic_flag=$lt_pic_flag
+pic_mode=$pic_mode
+
+# Does compiler simultaneously support -c and -o options?
+compiler_c_o=$lt_compiler_c_o
+
+# Can we write directly to a .lo ?
+compiler_o_lo=$lt_compiler_o_lo
+
+# Must we lock files when doing compilation ?
+need_locks=$lt_need_locks
+
+# Do we need the lib prefix for modules?
+need_lib_prefix=$need_lib_prefix
+
+# Do we need a version for libraries?
+need_version=$need_version
+
+# Whether dlopen is supported.
+dlopen_support=$enable_dlopen
+
+# Whether dlopen of programs is supported.
+dlopen_self=$enable_dlopen_self
+
+# Whether dlopen of statically linked programs is supported.
+dlopen_self_static=$enable_dlopen_self_static
+
+# Compiler flag to prevent dynamic linking.
+link_static_flag=$lt_link_static_flag
+
+# Compiler flag to turn off builtin functions.
+no_builtin_flag=$lt_no_builtin_flag
+
+# Compiler flag to allow reflexive dlopens.
+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
+
+# Compiler flag to generate shared objects directly from archives.
+whole_archive_flag_spec=$lt_whole_archive_flag_spec
+
+# Compiler flag to generate thread-safe objects.
+thread_safe_flag_spec=$lt_thread_safe_flag_spec
+
+# Library versioning type.
+version_type=$version_type
+
+# Format of library name prefix.
+libname_spec=$lt_libname_spec
+
+# List of archive names.  First name is the real one, the rest are links.
+# The last name is the one that the linker finds with -lNAME.
+library_names_spec=$lt_library_names_spec
+
+# The coded name of the library, if different from the real name.
+soname_spec=$lt_soname_spec
+
+# Commands used to build and install an old-style archive.
+RANLIB=$lt_RANLIB
+old_archive_cmds=$lt_old_archive_cmds
+old_postinstall_cmds=$lt_old_postinstall_cmds
+old_postuninstall_cmds=$lt_old_postuninstall_cmds
+
+# Create an old-style archive from a shared archive.
+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
+
+# Create a temporary old-style archive to link instead of a shared archive.
+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
+
+# Commands used to build and install a shared archive.
+archive_cmds=$lt_archive_cmds
+archive_expsym_cmds=$lt_archive_expsym_cmds
+postinstall_cmds=$lt_postinstall_cmds
+postuninstall_cmds=$lt_postuninstall_cmds
+
+# Commands to strip libraries.
+old_striplib=$lt_old_striplib
+striplib=$lt_striplib
+
+# Method to check whether dependent libraries are shared objects.
+deplibs_check_method=$lt_deplibs_check_method
+
+# Command to use when deplibs_check_method == file_magic.
+file_magic_cmd=$lt_file_magic_cmd
+
+# Flag that allows shared libraries with undefined symbols to be built.
+allow_undefined_flag=$lt_allow_undefined_flag
+
+# Flag that forces no undefined symbols.
+no_undefined_flag=$lt_no_undefined_flag
+
+# Commands used to finish a libtool library installation in a directory.
+finish_cmds=$lt_finish_cmds
+
+# Same as above, but a single script fragment to be evaled but not shown.
+finish_eval=$lt_finish_eval
+
+# Take the output of nm and produce a listing of raw symbols and C names.
+global_symbol_pipe=$lt_global_symbol_pipe
+
+# Transform the output of nm in a proper C declaration
+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
+
+# Transform the output of nm in a C name address pair
+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
+
+# This is the shared library runtime path variable.
+runpath_var=$runpath_var
+
+# This is the shared library path variable.
+shlibpath_var=$shlibpath_var
+
+# Is shlibpath searched before the hard-coded library search path?
+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
+
+# How to hardcode a shared library path into an executable.
+hardcode_action=$hardcode_action
+
+# Whether we should hardcode library paths into libraries.
+hardcode_into_libs=$hardcode_into_libs
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
+
+# Whether we need a single -rpath flag with a separated argument.
+hardcode_libdir_separator=$lt_hardcode_libdir_separator
+
+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
+# resulting binary.
+hardcode_direct=$hardcode_direct
+
+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
+# resulting binary.
+hardcode_minus_L=$hardcode_minus_L
+
+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
+# the resulting binary.
+hardcode_shlibpath_var=$hardcode_shlibpath_var
+
+# Variables whose values should be saved in libtool wrapper scripts and
+# restored at relink time.
+variables_saved_for_relink="$variables_saved_for_relink"
+
+# Whether libtool must link a program against all its dependency libraries.
+link_all_deplibs=$link_all_deplibs
+
+# Compile-time system search path for libraries
+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+
+# Run-time system search path for libraries
+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+
+# Fix the shell variable \$srcfile for the compiler.
+fix_srcfile_path="$fix_srcfile_path"
+
+# Set to yes if exported symbols are required.
+always_export_symbols=$always_export_symbols
+
+# The commands to list exported symbols.
+export_symbols_cmds=$lt_export_symbols_cmds
+
+# The commands to extract the exported symbol list from a shared archive.
+extract_expsyms_cmds=$lt_extract_expsyms_cmds
+
+# Symbols that should not be listed in the preloaded symbols.
+exclude_expsyms=$lt_exclude_expsyms
+
+# Symbols that must always be exported.
+include_expsyms=$lt_include_expsyms
+
+# ### END LIBTOOL CONFIG
+
+__EOF__
+
+  case $host_os in
+  aix3*)
+    cat <<\EOF >> "${ofile}T"
+
+# AIX sometimes has problems with the GCC collect2 program.  For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+  COLLECT_NAMES=
+  export COLLECT_NAMES
+fi
+EOF
+    ;;
+  esac
+
+  case $host_os in
+  cygwin* | mingw* | pw32* | os2*)
+    cat <<'EOF' >> "${ofile}T"
+      # This is a source program that is used to create dlls on Windows
+      # Don't remove nor modify the starting and closing comments
+# /* ltdll.c starts here */
+# #define WIN32_LEAN_AND_MEAN
+# #include <windows.h>
+# #undef WIN32_LEAN_AND_MEAN
+# #include <stdio.h>
+#
+# #ifndef __CYGWIN__
+# #  ifdef __CYGWIN32__
+# #    define __CYGWIN__ __CYGWIN32__
+# #  endif
+# #endif
+#
+# #ifdef __cplusplus
+# extern "C" {
+# #endif
+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
+# #ifdef __cplusplus
+# }
+# #endif
+#
+# #ifdef __CYGWIN__
+# #include <cygwin/cygwin_dll.h>
+# DECLARE_CYGWIN_DLL( DllMain );
+# #endif
+# HINSTANCE __hDllInstance_base;
+#
+# BOOL APIENTRY
+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
+# {
+#   __hDllInstance_base = hInst;
+#   return TRUE;
+# }
+# /* ltdll.c ends here */
+       # This is a source program that is used to create import libraries
+       # on Windows for dlls which lack them. Don't remove nor modify the
+       # starting and closing comments
+# /* impgen.c starts here */
+# /*   Copyright (C) 1999-2000 Free Software Foundation, Inc.
+#
+#  This file is part of GNU libtool.
+#
+#  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.
+#  */
+#
+# #include <stdio.h>           /* for printf() */
+# #include <unistd.h>          /* for open(), lseek(), read() */
+# #include <fcntl.h>           /* for O_RDONLY, O_BINARY */
+# #include <string.h>          /* for strdup() */
+#
+# /* O_BINARY isn't required (or even defined sometimes) under Unix */
+# #ifndef O_BINARY
+# #define O_BINARY 0
+# #endif
+#
+# static unsigned int
+# pe_get16 (fd, offset)
+#      int fd;
+#      int offset;
+# {
+#   unsigned char b[2];
+#   lseek (fd, offset, SEEK_SET);
+#   read (fd, b, 2);
+#   return b[0] + (b[1]<<8);
+# }
+#
+# static unsigned int
+# pe_get32 (fd, offset)
+#     int fd;
+#     int offset;
+# {
+#   unsigned char b[4];
+#   lseek (fd, offset, SEEK_SET);
+#   read (fd, b, 4);
+#   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
+# }
+#
+# static unsigned int
+# pe_as32 (ptr)
+#      void *ptr;
+# {
+#   unsigned char *b = ptr;
+#   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
+# }
+#
+# int
+# main (argc, argv)
+#     int argc;
+#     char *argv[];
+# {
+#     int dll;
+#     unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
+#     unsigned long export_rva, export_size, nsections, secptr, expptr;
+#     unsigned long name_rvas, nexp;
+#     unsigned char *expdata, *erva;
+#     char *filename, *dll_name;
+#
+#     filename = argv[1];
+#
+#     dll = open(filename, O_RDONLY|O_BINARY);
+#     if (dll < 1)
+#      return 1;
+#
+#     dll_name = filename;
+#
+#     for (i=0; filename[i]; i++)
+#      if (filename[i] == '/' || filename[i] == '\\'  || filename[i] == ':')
+#          dll_name = filename + i +1;
+#
+#     pe_header_offset = pe_get32 (dll, 0x3c);
+#     opthdr_ofs = pe_header_offset + 4 + 20;
+#     num_entries = pe_get32 (dll, opthdr_ofs + 92);
+#
+#     if (num_entries < 1) /* no exports */
+#      return 1;
+#
+#     export_rva = pe_get32 (dll, opthdr_ofs + 96);
+#     export_size = pe_get32 (dll, opthdr_ofs + 100);
+#     nsections = pe_get16 (dll, pe_header_offset + 4 +2);
+#     secptr = (pe_header_offset + 4 + 20 +
+#            pe_get16 (dll, pe_header_offset + 4 + 16));
+#
+#     expptr = 0;
+#     for (i = 0; i < nsections; i++)
+#     {
+#      char sname[8];
+#      unsigned long secptr1 = secptr + 40 * i;
+#      unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
+#      unsigned long vsize = pe_get32 (dll, secptr1 + 16);
+#      unsigned long fptr = pe_get32 (dll, secptr1 + 20);
+#      lseek(dll, secptr1, SEEK_SET);
+#      read(dll, sname, 8);
+#      if (vaddr <= export_rva && vaddr+vsize > export_rva)
+#      {
+#          expptr = fptr + (export_rva - vaddr);
+#          if (export_rva + export_size > vaddr + vsize)
+#              export_size = vsize - (export_rva - vaddr);
+#          break;
+#      }
+#     }
+#
+#     expdata = (unsigned char*)malloc(export_size);
+#     lseek (dll, expptr, SEEK_SET);
+#     read (dll, expdata, export_size);
+#     erva = expdata - export_rva;
+#
+#     nexp = pe_as32 (expdata+24);
+#     name_rvas = pe_as32 (expdata+32);
+#
+#     printf ("EXPORTS\n");
+#     for (i = 0; i<nexp; i++)
+#     {
+#      unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
+#      printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
+#     }
+#
+#     return 0;
+# }
+# /* impgen.c ends here */
+
+EOF
+    ;;
+  esac
+
+  # We use sed instead of cat because bash on DJGPP gets confused if
+  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
+  # text mode, it properly converts lines to CR/LF.  This bash problem
+  # is reportedly fixed, but why not run on old versions too?
+  sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
+
+  mv -f "${ofile}T" "$ofile" || \
+    (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
+  chmod +x "$ofile"
+fi
+
+])# _LT_AC_LTCONFIG_HACK
+
+# AC_LIBTOOL_DLOPEN - enable checks for dlopen support
+AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])])
+
+# AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's
+AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])])
+
+# AC_ENABLE_SHARED - implement the --enable-shared flag
+# Usage: AC_ENABLE_SHARED[(DEFAULT)]
+#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
+#   `yes'.
+AC_DEFUN([AC_ENABLE_SHARED],
+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE(shared,
+changequote(<<, >>)dnl
+<<  --enable-shared[=PKGS]  build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT],
+changequote([, ])dnl
+[p=${PACKAGE-default}
+case $enableval in
+yes) enable_shared=yes ;;
+no) enable_shared=no ;;
+*)
+  enable_shared=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_shared=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac],
+enable_shared=AC_ENABLE_SHARED_DEFAULT)dnl
+])
+
+# AC_DISABLE_SHARED - set the default shared flag to --disable-shared
+AC_DEFUN([AC_DISABLE_SHARED],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_SHARED(no)])
+
+# AC_ENABLE_STATIC - implement the --enable-static flag
+# Usage: AC_ENABLE_STATIC[(DEFAULT)]
+#   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
+#   `yes'.
+AC_DEFUN([AC_ENABLE_STATIC],
+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_ARG_ENABLE(static,
+changequote(<<, >>)dnl
+<<  --enable-static[=PKGS]  build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT],
+changequote([, ])dnl
+[p=${PACKAGE-default}
+case $enableval in
+yes) enable_static=yes ;;
+no) enable_static=no ;;
+*)
+  enable_static=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_static=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac],
+enable_static=AC_ENABLE_STATIC_DEFAULT)dnl
+])
+
+# AC_DISABLE_STATIC - set the default static flag to --disable-static
+AC_DEFUN([AC_DISABLE_STATIC],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_STATIC(no)])
 
 
 # AC_ENABLE_FAST_INSTALL - implement the --enable-fast-install flag
 # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)]
 #   Where DEFAULT is either `yes' or `no'.  If omitted, it defaults to
 #   `yes'.
-AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl
-define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
+AC_DEFUN([AC_ENABLE_FAST_INSTALL],
+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl
 AC_ARG_ENABLE(fast-install,
 changequote(<<, >>)dnl
 <<  --enable-fast-install[=PKGS]  optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT],
 changequote([, ])dnl
 [p=${PACKAGE-default}
-case "$enableval" in
+case $enableval in
 yes) enable_fast_install=yes ;;
 no) enable_fast_install=no ;;
 *)
@@ -451,33 +3557,124 @@ no) enable_fast_install=no ;;
   done
   IFS="$ac_save_ifs"
   ;;
-esac],
-enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
+esac],
+enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl
+])
+
+# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install
+AC_DEFUN([AC_DISABLE_FAST_INSTALL],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_ENABLE_FAST_INSTALL(no)])
+
+# AC_LIBTOOL_PICMODE - implement the --with-pic flag
+# Usage: AC_LIBTOOL_PICMODE[(MODE)]
+#   Where MODE is either `yes' or `no'.  If omitted, it defaults to
+#   `both'.
+AC_DEFUN([AC_LIBTOOL_PICMODE],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+pic_mode=ifelse($#,1,$1,default)])
+
+
+# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library
+AC_DEFUN([AC_PATH_TOOL_PREFIX],
+[AC_MSG_CHECKING([for $1])
+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
+[case $MAGIC_CMD in
+  /*)
+  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  ;;
+  ?:/*)
+  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
+  ;;
+  *)
+  ac_save_MAGIC_CMD="$MAGIC_CMD"
+  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=":"
+dnl $ac_dummy forces splitting on constant user-supplied paths.
+dnl POSIX.2 word splitting is done only on the output of word expansions,
+dnl not every word.  This closes a longstanding sh security hole.
+  ac_dummy="ifelse([$2], , $PATH, [$2])"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$1; then
+      lt_cv_path_MAGIC_CMD="$ac_dir/$1"
+      if test -n "$file_magic_test_file"; then
+       case $deplibs_check_method in
+       "file_magic "*)
+         file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+         MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+         if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+           egrep "$file_magic_regex" > /dev/null; then
+           :
+         else
+           cat <<EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such.  This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem.  Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+EOF
+         fi ;;
+       esac
+      fi
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  MAGIC_CMD="$ac_save_MAGIC_CMD"
+  ;;
+esac])
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+  AC_MSG_RESULT($MAGIC_CMD)
+else
+  AC_MSG_RESULT(no)
+fi
+])
+
+
+# AC_PATH_MAGIC - find a file program which can recognise a shared library
+AC_DEFUN([AC_PATH_MAGIC],
+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl
+AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH)
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+  if test -n "$ac_tool_prefix"; then
+    AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH)
+  else
+    MAGIC_CMD=:
+  fi
+fi
 ])
 
-# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install
-AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-AC_ENABLE_FAST_INSTALL(no)])
 
 # AC_PROG_LD - find the path to the GNU or non-GNU linker
-AC_DEFUN(AC_PROG_LD,
+AC_DEFUN([AC_PROG_LD],
 [AC_ARG_WITH(gnu-ld,
 [  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]],
 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
 AC_REQUIRE([AC_PROG_CC])dnl
 AC_REQUIRE([AC_CANONICAL_HOST])dnl
 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
+AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
 ac_prog=ld
-if test "$ac_cv_prog_gcc" = yes; then
+if test "$GCC" = yes; then
   # Check if gcc -print-prog-name=ld gives a path.
   AC_MSG_CHECKING([for ld used by GCC])
-  ac_prog=`($CC -print-prog-name=ld) 2>&5`
-  case "$ac_prog" in
+  case $host in
+  *-*-mingw*)
+    # gcc leaves a trailing carriage return which upsets mingw
+    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+  *)
+    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+  esac
+  case $ac_prog in
     # Accept absolute paths.
-changequote(,)dnl
-    [\\/]* | [A-Za-z]:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-changequote([,])dnl
+    [[\\/]]* | [[A-Za-z]]:[[\\/]]*)
+      re_direlt='/[[^/]][[^/]]*/\.\./'
       # Canonicalize the path of ld
       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
@@ -499,17 +3696,17 @@ elif test "$with_gnu_ld" = yes; then
 else
   AC_MSG_CHECKING([for non-GNU ld])
 fi
-AC_CACHE_VAL(ac_cv_path_LD,
+AC_CACHE_VAL(lt_cv_path_LD,
 [if test -z "$LD"; then
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      ac_cv_path_LD="$ac_dir/$ac_prog"
+      lt_cv_path_LD="$ac_dir/$ac_prog"
       # Check to see if the program is GNU ld.  I'd rather use --version,
       # but apparently some GNU ld's only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
-      if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
+      if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
        test "$with_gnu_ld" != no && break
       else
        test "$with_gnu_ld" != yes && break
@@ -518,9 +3715,9 @@ AC_CACHE_VAL(ac_cv_path_LD,
   done
   IFS="$ac_save_ifs"
 else
-  ac_cv_path_LD="$LD" # Let the user override the test with a path.
+  lt_cv_path_LD="$LD" # Let the user override the test with a path.
 fi])
-LD="$ac_cv_path_LD"
+LD="$lt_cv_path_LD"
 if test -n "$LD"; then
   AC_MSG_RESULT($LD)
 else
@@ -530,56 +3727,252 @@ test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
 AC_PROG_LD_GNU
 ])
 
-AC_DEFUN(AC_PROG_LD_GNU,
-[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
+# AC_PROG_LD_GNU -
+AC_DEFUN([AC_PROG_LD_GNU],
+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  ac_cv_prog_gnu_ld=yes
+  lt_cv_prog_gnu_ld=yes
 else
-  ac_cv_prog_gnu_ld=no
+  lt_cv_prog_gnu_ld=no
 fi])
+with_gnu_ld=$lt_cv_prog_gnu_ld
+])
+
+# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker
+#   -- PORTME Some linkers may need a different reload flag.
+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG],
+[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag,
+[lt_cv_ld_reload_flag='-r'])
+reload_flag=$lt_cv_ld_reload_flag
+test -n "$reload_flag" && reload_flag=" $reload_flag"
+])
+
+# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies
+#  -- PORTME fill in with the dynamic library characteristics
+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
+[AC_CACHE_CHECK([how to recognise dependant libraries],
+lt_cv_deplibs_check_method,
+[lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given egrep regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix4* | aix5*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+beos*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+bsdi4*)
+  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
+  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  lt_cv_file_magic_test_file=/shlib/libc.so
+  ;;
+
+cygwin* | mingw* | pw32*)
+  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
+
+darwin* | rhapsody*)
+  lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
+  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  case "$host_os" in
+  rhapsody* | darwin1.[[012]])
+    lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
+    ;;
+  *) # Darwin 1.3 on
+    lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
+    ;;
+  esac
+  ;;
+
+freebsd*)
+  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+    case $host_cpu in
+    i*86 )
+      # Not sure whether the presence of OpenBSD here was a mistake.
+      # Let's accept both of them until this is cleared up.
+      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library'
+      lt_cv_file_magic_cmd=/usr/bin/file
+      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+      ;;
+    esac
+  else
+    lt_cv_deplibs_check_method=pass_all
+  fi
+  ;;
+
+gnu*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+hpux10.20*|hpux11*)
+  lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library'
+  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_test_file=/usr/lib/libc.sl
+  ;;
+
+irix5* | irix6*)
+  case $host_os in
+  irix5*)
+    # this will be overridden with pass_all, but let us keep it just in case
+    lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
+    ;;
+  *)
+    case $LD in
+    *-32|*"-32 ") libmagic=32-bit;;
+    *-n32|*"-n32 ") libmagic=N32;;
+    *-64|*"-64 ") libmagic=64-bit;;
+    *) libmagic=never-match;;
+    esac
+    # this will be overridden with pass_all, but let us keep it just in case
+    lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1"
+    ;;
+  esac
+  lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+# This must be Linux ELF.
+linux-gnu*)
+  case $host_cpu in
+  alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
+    lt_cv_deplibs_check_method=pass_all ;;
+  *)
+    # glibc up to 2.1.1 does not perform some relocations on ARM
+    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;;
+  esac
+  lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
+  ;;
+
+netbsd*)
+  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+    lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$'
+  else
+    lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$'
+  fi
+  ;;
+
+newos6*)
+  lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
+  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_test_file=/usr/lib/libnls.so
+  ;;
+
+openbsd*)
+  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object'
+  else
+    lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
+  fi
+  ;;
+
+osf3* | osf4* | osf5*)
+  # this will be overridden with pass_all, but let us keep it just in case
+  lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
+  lt_cv_file_magic_test_file=/shlib/libc.so
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+sco3.2v5*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+solaris*)
+  lt_cv_deplibs_check_method=pass_all
+  lt_cv_file_magic_test_file=/lib/libc.so
+  ;;
+
+sysv5uw[[78]]* | sysv4*uw2*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+  case $host_vendor in
+  motorola)
+    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
+    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+    ;;
+  ncr)
+    lt_cv_deplibs_check_method=pass_all
+    ;;
+  sequent)
+    lt_cv_file_magic_cmd='/bin/file'
+    lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
+    ;;
+  sni)
+    lt_cv_file_magic_cmd='/bin/file'
+    lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
+    lt_cv_file_magic_test_file=/lib/libc.so
+    ;;
+  esac
+  ;;
+esac
+])
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
 ])
 
+
 # AC_PROG_NM - find the path to a BSD-compatible name lister
-AC_DEFUN(AC_PROG_NM,
-[AC_MSG_CHECKING([for BSD-compatible nm])
-AC_CACHE_VAL(ac_cv_path_NM,
+AC_DEFUN([AC_PROG_NM],
+[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl
+AC_MSG_CHECKING([for BSD-compatible nm])
+AC_CACHE_VAL(lt_cv_path_NM,
 [if test -n "$NM"; then
   # Let the user override the test.
-  ac_cv_path_NM="$NM"
+  lt_cv_path_NM="$NM"
 else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
+    tmp_nm=$ac_dir/${ac_tool_prefix}nm
+    if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
       # Check to see if the nm accepts a BSD-compat flag.
       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
       #   nm: unknown option "B" ignored
-      if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-       ac_cv_path_NM="$ac_dir/nm -B"
+      # Tru64's nm complains that /dev/null is an invalid object file
+      if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
+       lt_cv_path_NM="$tmp_nm -B"
        break
-      elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-       ac_cv_path_NM="$ac_dir/nm -p"
+      elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
+       lt_cv_path_NM="$tmp_nm -p"
        break
       else
-       ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
+       lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
        continue # so that we can try to find one that supports BSD flags
       fi
     fi
   done
   IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
+  test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
 fi])
-NM="$ac_cv_path_NM"
+NM="$lt_cv_path_NM"
 AC_MSG_RESULT([$NM])
 ])
 
 # AC_CHECK_LIBM - check for math library
-AC_DEFUN(AC_CHECK_LIBM,
+AC_DEFUN([AC_CHECK_LIBM],
 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
 LIBM=
-case "$lt_target" in
-*-*-beos* | *-*-cygwin*)
+case $host in
+*-*-beos* | *-*-cygwin* | *-*-pw32*)
   # These system don't have libm
   ;;
 *-ncr-sysv4.3*)
@@ -602,8 +3995,9 @@ esac
 # '${top_srcdir}/' (note the single quotes!).  If your package is not
 # flat and you're not using automake, define top_builddir and
 # top_srcdir appropriately in the Makefiles.
-AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
-  case "$enable_ltdl_convenience" in
+AC_DEFUN([AC_LIBLTDL_CONVENIENCE],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+  case $enable_ltdl_convenience in
   no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
   "") enable_ltdl_convenience=yes
       ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
@@ -623,7 +4017,8 @@ AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
 # not flat and you're not using automake, define top_builddir and
 # top_srcdir appropriately in the Makefiles.
 # In the future, this macro may have to be called after AC_PROG_LIBTOOL.
-AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
+AC_DEFUN([AC_LIBLTDL_INSTALLABLE],
+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
   AC_CHECK_LIB(ltdl, main,
   [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no],
   [if test x"$enable_ltdl_install" = xno; then
@@ -643,17 +4038,146 @@ AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
   fi
 ])
 
-dnl old names
-AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl
-AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl
-AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl
-AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl
-AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl
-AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl
-AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl
+# old names
+AC_DEFUN([AM_PROG_LIBTOOL],   [AC_PROG_LIBTOOL])
+AC_DEFUN([AM_ENABLE_SHARED],  [AC_ENABLE_SHARED($@)])
+AC_DEFUN([AM_ENABLE_STATIC],  [AC_ENABLE_STATIC($@)])
+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
+AC_DEFUN([AM_PROG_LD],        [AC_PROG_LD])
+AC_DEFUN([AM_PROG_NM],        [AC_PROG_NM])
+
+# This is just to silence aclocal about the macro not being used
+ifelse([AC_DISABLE_FAST_INSTALL])
+
+#serial 1
+# This test replaces the one in autoconf.
+# Currently this macro should have the same name as the autoconf macro
+# because gettext's gettext.m4 (distributed in the automake package)
+# still uses it.  Otherwise, the use in gettext.m4 makes autoheader
+# give these diagnostics:
+#   configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
+#   configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
+
+undefine([AC_ISC_POSIX])
+
+AC_DEFUN([AC_ISC_POSIX],
+  [
+    dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
+    AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
+  ]
+)
+
+
+# serial 1
+
+AC_DEFUN([AM_C_PROTOTYPES],
+[AC_REQUIRE([AM_PROG_CC_STDC])
+AC_REQUIRE([AC_PROG_CPP])
+AC_MSG_CHECKING([for function prototypes])
+if test "$am_cv_prog_cc_stdc" != no; then
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(PROTOTYPES,1,[Define if compiler has function prototypes])
+  U= ANSI2KNR=
+else
+  AC_MSG_RESULT(no)
+  U=_ ANSI2KNR=./ansi2knr
+fi
+# Ensure some checks needed by ansi2knr itself.
+AC_HEADER_STDC
+AC_CHECK_HEADERS(string.h)
+AC_SUBST(U)dnl
+AC_SUBST(ANSI2KNR)dnl
+])
+
+
+# serial 1
+
+# @defmac AC_PROG_CC_STDC
+# @maindex PROG_CC_STDC
+# @ovindex CC
+# If the C compiler in not in ANSI C mode by default, try to add an option
+# to output variable @code{CC} to make it so.  This macro tries various
+# options that select ANSI C on some system or another.  It considers the
+# compiler to be in ANSI C mode if it handles function prototypes correctly.
+#
+# If you use this macro, you should check after calling it whether the C
+# compiler has been set to accept ANSI C; if not, the shell variable
+# @code{am_cv_prog_cc_stdc} is set to @samp{no}.  If you wrote your source
+# code in ANSI C, you can make an un-ANSIfied copy of it by using the
+# program @code{ansi2knr}, which comes with Ghostscript.
+# @end defmac
 
-dnl This is just to silence aclocal about the macro not being used
-ifelse([AC_DISABLE_FAST_INSTALL])dnl
+AC_DEFUN([AM_PROG_CC_STDC],
+[AC_REQUIRE([AC_PROG_CC])
+AC_BEFORE([$0], [AC_C_INLINE])
+AC_BEFORE([$0], [AC_C_CONST])
+dnl Force this before AC_PROG_CPP.  Some cpp's, eg on HPUX, require
+dnl a magic option to avoid problems with ANSI preprocessor commands
+dnl like #elif.
+dnl FIXME: can't do this because then AC_AIX won't work due to a
+dnl circular dependency.
+dnl AC_BEFORE([$0], [AC_PROG_CPP])
+AC_MSG_CHECKING([for ${CC-cc} option to accept ANSI C])
+AC_CACHE_VAL(am_cv_prog_cc_stdc,
+[am_cv_prog_cc_stdc=no
+ac_save_CC="$CC"
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX                  -qlanglvl=ansi
+# Ultrix and OSF/1     -std1
+# HP-UX 10.20 and later        -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4                 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  AC_TRY_COMPILE(
+[#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;
+}
+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;
+], [
+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
+],
+[am_cv_prog_cc_stdc="$ac_arg"; break])
+done
+CC="$ac_save_CC"
+])
+if test -z "$am_cv_prog_cc_stdc"; then
+  AC_MSG_RESULT([none needed])
+else
+  AC_MSG_RESULT([$am_cv_prog_cc_stdc])
+fi
+case "x$am_cv_prog_cc_stdc" in
+  x|xno) ;;
+  *) CC="$CC $am_cv_prog_cc_stdc" ;;
+esac
+])
 
 # Macro to add for using GNU gettext.
 # Ulrich Drepper <drepper@cygnus.com>, 1995.
@@ -663,9 +4187,37 @@ ifelse([AC_DISABLE_FAST_INSTALL])dnl
 # but which still want to provide support for the GNU gettext functionality.
 # Please note that the actual code is *not* freely available.
 
-# serial 5
+# serial 9
 
-AC_DEFUN(AM_WITH_NLS,
+dnl Usage: AM_WITH_NLS([TOOLSYMBOL], [NEEDSYMBOL], [LIBDIR]).
+dnl If TOOLSYMBOL is specified and is 'use-libtool', then a libtool library
+dnl    $(top_builddir)/intl/libintl.la will be created (shared and/or static,
+dnl    depending on --{enable,disable}-{shared,static} and on the presence of
+dnl    AM-DISABLE-SHARED). Otherwise, a static library
+dnl    $(top_builddir)/intl/libintl.a will be created.
+dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
+dnl    implementations (in libc or libintl) without the ngettext() function
+dnl    will be ignored.
+dnl LIBDIR is used to find the intl libraries.  If empty,
+dnl    the value `$(top_builddir)/intl/' is used.
+dnl
+dnl The result of the configuration is one of three cases:
+dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
+dnl    and used.
+dnl    Catalog format: GNU --> install in $(datadir)
+dnl    Catalog extension: .mo after installation, .gmo in source tree
+dnl 2) GNU gettext has been found in the system's C library.
+dnl    Catalog format: GNU --> install in $(datadir)
+dnl    Catalog extension: .mo after installation, .gmo in source tree
+dnl 3) No internationalization, always use English msgid.
+dnl    Catalog format: none
+dnl    Catalog extension: none
+dnl The use of .gmo is historical (it was needed to avoid overwriting the
+dnl GNU format catalogs when building on a platform with an X/Open gettext),
+dnl but we keep it in order not to force irrelevant filename changes on the
+dnl maintainers.
+dnl
+AC_DEFUN([AM_WITH_NLS],
   [AC_MSG_CHECKING([whether NLS is requested])
     dnl Default is enabled NLS
     AC_ARG_ENABLE(nls,
@@ -674,11 +4226,15 @@ AC_DEFUN(AM_WITH_NLS,
     AC_MSG_RESULT($USE_NLS)
     AC_SUBST(USE_NLS)
 
+    BUILD_INCLUDED_LIBINTL=no
     USE_INCLUDED_LIBINTL=no
+    INTLLIBS=
 
     dnl If we use NLS figure out what method
     if test "$USE_NLS" = "yes"; then
-      AC_DEFINE(ENABLE_NLS)
+      AC_DEFINE(ENABLE_NLS, 1,
+        [Define to 1 if translation of program messages to the user's native language
+   is requested.])
       AC_MSG_CHECKING([whether included gettext is requested])
       AC_ARG_WITH(included-gettext,
         [  --with-included-gettext use the GNU gettext library included here],
@@ -689,86 +4245,74 @@ AC_DEFUN(AM_WITH_NLS,
       nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
       if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
         dnl User does not insist on using GNU NLS library.  Figure out what
-        dnl to use.  If gettext or catgets are available (in this order) we
-        dnl use this.  Else we have to fall back to GNU NLS library.
-       dnl catgets is only used if permitted by option --with-catgets.
-       nls_cv_header_intl=
-       nls_cv_header_libgt=
+        dnl to use.  If GNU gettext is available we use this.  Else we have
+        dnl to fall back to GNU NLS library.
        CATOBJEXT=NONE
 
+        dnl Add a version number to the cache macros.
+        define(gt_cv_func_gnugettext_libc, [gt_cv_func_gnugettext]ifelse([$2], need-ngettext, 2, 1)[_libc])
+        define(gt_cv_func_gnugettext_libintl, [gt_cv_func_gnugettext]ifelse([$2], need-ngettext, 2, 1)[_libintl])
+
        AC_CHECK_HEADER(libintl.h,
-         [AC_CACHE_CHECK([for gettext in libc], gt_cv_func_gettext_libc,
-           [AC_TRY_LINK([#include <libintl.h>], [return (int) gettext ("")],
-              gt_cv_func_gettext_libc=yes, gt_cv_func_gettext_libc=no)])
-
-          if test "$gt_cv_func_gettext_libc" != "yes"; then
-            AC_CHECK_LIB(intl, bindtextdomain,
-              [AC_CACHE_CHECK([for gettext in libintl],
-                gt_cv_func_gettext_libintl,
-                [AC_CHECK_LIB(intl, gettext,
-                 gt_cv_func_gettext_libintl=yes,
-                 gt_cv_func_gettext_libintl=no)],
-                gt_cv_func_gettext_libintl=no)])
+         [AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc,
+           [AC_TRY_LINK([#include <libintl.h>
+extern int _nl_msg_cat_cntr;],
+              [bindtextdomain ("", "");
+return (int) gettext ("")]ifelse([$2], need-ngettext, [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr],
+              gt_cv_func_gnugettext_libc=yes,
+              gt_cv_func_gnugettext_libc=no)])
+
+          if test "$gt_cv_func_gnugettext_libc" != "yes"; then
+            AC_CACHE_CHECK([for GNU gettext in libintl],
+              gt_cv_func_gnugettext_libintl,
+              [gt_save_LIBS="$LIBS"
+               LIBS="$LIBS -lintl $LIBICONV"
+               AC_TRY_LINK([#include <libintl.h>
+extern int _nl_msg_cat_cntr;],
+                 [bindtextdomain ("", "");
+return (int) gettext ("")]ifelse([$2], need-ngettext, [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr],
+                 gt_cv_func_gnugettext_libintl=yes,
+                 gt_cv_func_gnugettext_libintl=no)
+               LIBS="$gt_save_LIBS"])
           fi
 
-          if test "$gt_cv_func_gettext_libc" = "yes" \
-             || test "$gt_cv_func_gettext_libintl" = "yes"; then
-             AC_DEFINE(HAVE_GETTEXT)
-             AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
-               [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
-             if test "$MSGFMT" != "no"; then
-               AC_CHECK_FUNCS(dcgettext)
-               AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
-               AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-                 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
-               AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
-                              return _nl_msg_cat_cntr],
-                 [CATOBJEXT=.gmo
-                  DATADIRNAME=share],
-                 [CATOBJEXT=.mo
-                  DATADIRNAME=lib])
-               INSTOBJEXT=.mo
-             fi
-           fi
-       ])
+          dnl If an already present or preinstalled GNU gettext() is found,
+          dnl use it.  But if this macro is used in GNU gettext, and GNU
+          dnl gettext is already preinstalled in libintl, we update this
+          dnl libintl.  (Cf. the install rule in intl/Makefile.in.)
+          if test "$gt_cv_func_gnugettext_libc" = "yes" \
+             || { test "$gt_cv_func_gnugettext_libintl" = "yes" \
+                  && test "$PACKAGE" != gettext; }; then
+            AC_DEFINE(HAVE_GETTEXT, 1,
+               [Define if the GNU gettext() function is already present or preinstalled.])
 
-        if test "$CATOBJEXT" = "NONE"; then
-         AC_MSG_CHECKING([whether catgets can be used])
-         AC_ARG_WITH(catgets,
-           [  --with-catgets          use catgets functions if available],
-           nls_cv_use_catgets=$withval, nls_cv_use_catgets=no)
-         AC_MSG_RESULT($nls_cv_use_catgets)
-
-         if test "$nls_cv_use_catgets" = "yes"; then
-           dnl No gettext in C library.  Try catgets next.
-           AC_CHECK_LIB(i, main)
-           AC_CHECK_FUNC(catgets,
-             [AC_DEFINE(HAVE_CATGETS)
-              INTLOBJS="\$(CATOBJS)"
-              AC_PATH_PROG(GENCAT, gencat, no)dnl
-              if test "$GENCAT" != "no"; then
-                AC_PATH_PROG(GMSGFMT, gmsgfmt, no)
-                if test "$GMSGFMT" = "no"; then
-                  AM_PATH_PROG_WITH_TEST(GMSGFMT, msgfmt,
-                   [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)
-                fi
-                AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-                  [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
-                USE_INCLUDED_LIBINTL=yes
-                CATOBJEXT=.cat
-                INSTOBJEXT=.cat
-                DATADIRNAME=lib
-                INTLDEPS='$(top_builddir)/intl/libintl.a'
-                INTLLIBS=$INTLDEPS
-                LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-                nls_cv_header_intl=intl/libintl.h
-                nls_cv_header_libgt=intl/libgettext.h
-              fi])
-         fi
-        fi
+            if test "$gt_cv_func_gnugettext_libintl" = "yes"; then
+              dnl If iconv() is in a separate libiconv library, then anyone
+              dnl linking with libintl{.a,.so} also needs to link with
+              dnl libiconv.
+              INTLLIBS="-lintl $LIBICONV"
+            fi
+
+            gt_save_LIBS="$LIBS"
+            LIBS="$LIBS $INTLLIBS"
+            AC_CHECK_FUNCS(dcgettext)
+            LIBS="$gt_save_LIBS"
+
+            AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+              [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
+            if test "$MSGFMT" != "no"; then
+              AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+            fi
+
+            AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+              [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
+
+            CATOBJEXT=.gmo
+          fi
+       ])
 
         if test "$CATOBJEXT" = "NONE"; then
-         dnl Neither gettext nor catgets in included in the C library.
+         dnl GNU gettext is not found in the C library.
          dnl Fall back on GNU gettext library.
          nls_cv_use_gnu_gettext=yes
         fi
@@ -783,15 +4327,11 @@ AC_DEFUN(AM_WITH_NLS,
         AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
          [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
         AC_SUBST(MSGFMT)
+       BUILD_INCLUDED_LIBINTL=yes
        USE_INCLUDED_LIBINTL=yes
         CATOBJEXT=.gmo
-        INSTOBJEXT=.mo
-        DATADIRNAME=share
-       INTLDEPS='$(top_builddir)/intl/libintl.a'
-       INTLLIBS=$INTLDEPS
-       LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-        nls_cv_header_intl=intl/libintl.h
-        nls_cv_header_libgt=intl/libgettext.h
+       INTLLIBS="ifelse([$3],[],\$(top_builddir)/intl,[$3])/libintl.ifelse([$1], use-libtool, [l], [])a $LIBICONV"
+       LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
       fi
 
       dnl Test whether we really found GNU xgettext.
@@ -807,25 +4347,73 @@ AC_DEFUN(AM_WITH_NLS,
        fi
       fi
 
-      # We need to process the po/ directory.
+      dnl We need to process the po/ directory.
       POSUB=po
-    else
-      DATADIRNAME=share
-      nls_cv_header_intl=intl/libintl.h
-      nls_cv_header_libgt=intl/libgettext.h
     fi
-    AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
     AC_OUTPUT_COMMANDS(
-     [case "$CONFIG_FILES" in *po/Makefile.in*)
-        sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
-      esac])
+     [for ac_file in $CONFIG_FILES; do
+        # Support "outfile[:infile[:infile...]]"
+        case "$ac_file" in
+          *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+        esac
+        # PO directories have a Makefile.in generated from Makefile.in.in.
+        case "$ac_file" in */Makefile.in)
+          # Adjust a relative srcdir.
+          ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
+          ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+          ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
+          case "$srcdir" in
+            .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
+            /*) top_srcdir="$srcdir" ;;
+            *)  top_srcdir="$ac_dots$srcdir" ;;
+          esac
+          if test -f "$srcdir/$ac_dir/POTFILES.in"; then
+            rm -f "$ac_dir/POTFILES"
+            echo creating "$ac_dir/POTFILES"
+            sed -e "/^#/d" -e "/^[     ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," -e "\$s/\(.*\) \\\\/\1/" < "$srcdir/$ac_dir/POTFILES.in" > "$ac_dir/POTFILES"
+            echo creating "$ac_dir/Makefile"
+            sed -e "/POTFILES =/r $ac_dir/POTFILES" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
+          fi
+          ;;
+        esac
+      done])
 
 
-    # If this is used in GNU gettext we have to set USE_NLS to `yes'
-    # because some of the sources are only built for this goal.
+    dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
+    dnl to 'yes' because some of the testsuite requires it.
     if test "$PACKAGE" = gettext; then
-      USE_NLS=yes
-      USE_INCLUDED_LIBINTL=yes
+      BUILD_INCLUDED_LIBINTL=yes
+    fi
+
+    dnl intl/plural.c is generated from intl/plural.y. It requires bison,
+    dnl because plural.y uses bison specific features. It requires at least
+    dnl bison-1.26 because earlier versions generate a plural.c that doesn't
+    dnl compile.
+    dnl bison is only needed for the maintainer (who touches plural.y). But in
+    dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
+    dnl the rule in general Makefile. Now, some people carelessly touch the
+    dnl files or have a broken "make" program, hence the plural.c rule will
+    dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
+    dnl present or too old.
+    AC_CHECK_PROGS([INTLBISON], [bison])
+    if test -z "$INTLBISON"; then
+      ac_verc_fail=yes
+    else
+      dnl Found it, now check the version.
+      AC_MSG_CHECKING([version of bison])
+changequote(<<,>>)dnl
+      ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison .* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+      case $ac_prog_version in
+        '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+        1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
+changequote([,])dnl
+           ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+        *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+      esac
+      AC_MSG_RESULT([$ac_prog_version])
+    fi
+    if test $ac_verc_fail = yes; then
+      INTLBISON=:
     fi
 
     dnl These rules are solely for the distribution goal.  While doing this
@@ -837,22 +4425,38 @@ AC_DEFUN(AM_WITH_NLS,
     done
 
     dnl Make all variables we use known to autoconf.
+    AC_SUBST(BUILD_INCLUDED_LIBINTL)
     AC_SUBST(USE_INCLUDED_LIBINTL)
     AC_SUBST(CATALOGS)
     AC_SUBST(CATOBJEXT)
-    AC_SUBST(DATADIRNAME)
     AC_SUBST(GMOFILES)
-    AC_SUBST(INSTOBJEXT)
-    AC_SUBST(INTLDEPS)
     AC_SUBST(INTLLIBS)
     AC_SUBST(INTLOBJS)
     AC_SUBST(POFILES)
     AC_SUBST(POSUB)
+
+    dnl For backward compatibility. Some configure.ins may be using this.
+    nls_cv_header_intl=
+    nls_cv_header_libgt=
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    DATADIRNAME=share
+    AC_SUBST(DATADIRNAME)
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    INSTOBJEXT=.mo
+    AC_SUBST(INSTOBJEXT)
+
+    dnl For backward compatibility. Some Makefiles may be using this.
+    GENCAT=gencat
+    AC_SUBST(GENCAT)
   ])
 
-AC_DEFUN(AM_GNU_GETTEXT,
+dnl Usage: Just like AM_WITH_NLS, which see.
+AC_DEFUN([AM_GNU_GETTEXT],
   [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
    AC_REQUIRE([AC_PROG_CC])dnl
+   AC_REQUIRE([AC_CANONICAL_HOST])dnl
    AC_REQUIRE([AC_PROG_RANLIB])dnl
    AC_REQUIRE([AC_ISC_POSIX])dnl
    AC_REQUIRE([AC_HEADER_STDC])dnl
@@ -862,21 +4466,18 @@ AC_DEFUN(AM_GNU_GETTEXT,
    AC_REQUIRE([AC_TYPE_SIZE_T])dnl
    AC_REQUIRE([AC_FUNC_ALLOCA])dnl
    AC_REQUIRE([AC_FUNC_MMAP])dnl
+   AC_REQUIRE([jm_GLIBC21])dnl
 
-   AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h string.h \
-unistd.h sys/param.h])
-   AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp \
-strdup __argz_count __argz_stringify __argz_next])
-
-   if test "${ac_cv_func_stpcpy+set}" != "set"; then
-     AC_CHECK_FUNCS(stpcpy)
-   fi
-   if test "${ac_cv_func_stpcpy}" = "yes"; then
-     AC_DEFINE(HAVE_STPCPY)
-   fi
+   AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
+stdlib.h string.h unistd.h sys/param.h])
+   AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getcwd getegid geteuid \
+getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \
+strdup strtoul tsearch __argz_count __argz_stringify __argz_next])
 
+   AM_ICONV
+   AM_LANGINFO_CODESET
    AM_LC_MESSAGES
-   AM_WITH_NLS
+   AM_WITH_NLS([$1],[$2],[$3])
 
    if test "x$CATOBJEXT" != "x"; then
      if test "x$ALL_LINGUAS" = "x"; then
@@ -884,10 +4485,21 @@ strdup __argz_count __argz_stringify __argz_next])
      else
        AC_MSG_CHECKING(for catalogs to be installed)
        NEW_LINGUAS=
-       for lang in ${LINGUAS=$ALL_LINGUAS}; do
-         case "$ALL_LINGUAS" in
-          *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
-         esac
+       for presentlang in $ALL_LINGUAS; do
+         useit=no
+         for desiredlang in ${LINGUAS-$ALL_LINGUAS}; do
+           # Use the presentlang catalog if desiredlang is
+           #   a. equal to presentlang, or
+           #   b. a variant of presentlang (because in this case,
+           #      presentlang can be used as a fallback for messages
+           #      which are not translated in the desiredlang catalog).
+           case "$desiredlang" in
+             "$presentlang"*) useit=yes;;
+           esac
+         done
+         if test $useit = yes; then
+           NEW_LINGUAS="$NEW_LINGUAS $presentlang"
+         fi
        done
        LINGUAS=$NEW_LINGUAS
        AC_MSG_RESULT($LINGUAS)
@@ -899,47 +4511,8 @@ strdup __argz_count __argz_stringify __argz_next])
      fi
    fi
 
-   dnl The reference to <locale.h> in the installed <libintl.h> file
-   dnl must be resolved because we cannot expect the users of this
-   dnl to define HAVE_LOCALE_H.
-   if test $ac_cv_header_locale_h = yes; then
-     INCLUDE_LOCALE_H="#include <locale.h>"
-   else
-     INCLUDE_LOCALE_H="\
-/* The system does not provide the header <locale.h>.  Take care yourself.  */"
-   fi
-   AC_SUBST(INCLUDE_LOCALE_H)
-
-   dnl Determine which catalog format we have (if any is needed)
-   dnl For now we know about two different formats:
-   dnl   Linux libc-5 and the normal X/Open format
-   test -d intl || mkdir intl
-   if test "$CATOBJEXT" = ".cat"; then
-     AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
-
-     dnl Transform the SED scripts while copying because some dumb SEDs
-     dnl cannot handle comments.
-     sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
-   fi
-   dnl po2tbl.sed is always needed.
-   sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
-     $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
-
-   dnl In the intl/Makefile.in we have a special dependency which makes
-   dnl only sense for gettext.  We comment this out for non-gettext
-   dnl packages.
-   if test "$PACKAGE" = "gettext"; then
-     GT_NO="#NO#"
-     GT_YES=
-   else
-     GT_NO=
-     GT_YES="#YES#"
-   fi
-   AC_SUBST(GT_NO)
-   AC_SUBST(GT_YES)
-
    dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
-   dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
+   dnl find the mkinstalldirs script in another subdir but $(top_srcdir).
    dnl Try to locate is.
    MKINSTALLDIRS=
    if test -n "$ac_aux_dir"; then
@@ -950,25 +4523,9 @@ strdup __argz_count __argz_stringify __argz_next])
    fi
    AC_SUBST(MKINSTALLDIRS)
 
-   dnl *** For now the libtool support in intl/Makefile is not for real.
-   l=
-   AC_SUBST(l)
-
-   dnl Generate list of files to be processed by xgettext which will
-   dnl be included in po/Makefile.
-   test -d po || mkdir po
-   if test "x$srcdir" != "x."; then
-     if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
-       posrcprefix="$srcdir/"
-     else
-       posrcprefix="../$srcdir/"
-     fi
-   else
-     posrcprefix="../"
-   fi
-   rm -f po/POTFILES
-   sed -e "/^#/d" -e "/^\$/d" -e "s,.*,        $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
-       < $srcdir/po/POTFILES.in > po/POTFILES
+   dnl Enable libtool support if the surrounding package wishes it.
+   INTL_LIBTOOL_SUFFIX_PREFIX=ifelse([$1], use-libtool, [l], [])
+   AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
   ])
 
 # Search path for a program which passes the given test.
@@ -983,7 +4540,7 @@ strdup __argz_count __argz_stringify __argz_next])
 
 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
 dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
-AC_DEFUN(AM_PATH_PROG_WITH_TEST,
+AC_DEFUN([AM_PATH_PROG_WITH_TEST],
 [# Extract the first word of "$2", so it can be a program name with args.
 set dummy $2; ac_word=[$]2
 AC_MSG_CHECKING([for $ac_word])
@@ -1019,6 +4576,121 @@ fi
 AC_SUBST($1)dnl
 ])
 
+#serial 2
+
+# Test for the GNU C Library, version 2.1 or newer.
+# From Bruno Haible.
+
+AC_DEFUN([jm_GLIBC21],
+  [
+    AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
+      ac_cv_gnu_library_2_1,
+      [AC_EGREP_CPP([Lucky GNU user],
+       [
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
+  Lucky GNU user
+ #endif
+#endif
+       ],
+       ac_cv_gnu_library_2_1=yes,
+       ac_cv_gnu_library_2_1=no)
+      ]
+    )
+    AC_SUBST(GLIBC21)
+    GLIBC21="$ac_cv_gnu_library_2_1"
+  ]
+)
+
+#serial AM2
+
+dnl From Bruno Haible.
+
+AC_DEFUN([AM_ICONV],
+[
+  dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
+  dnl those with the standalone portable GNU libiconv installed).
+
+  AC_ARG_WITH([libiconv-prefix],
+[  --with-libiconv-prefix=DIR  search for libiconv in DIR/include and DIR/lib], [
+    for dir in `echo "$withval" | tr : ' '`; do
+      if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi
+      if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi
+    done
+   ])
+
+  AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
+    am_cv_func_iconv="no, consider installing GNU libiconv"
+    am_cv_lib_iconv=no
+    AC_TRY_LINK([#include <stdlib.h>
+#include <iconv.h>],
+      [iconv_t cd = iconv_open("","");
+       iconv(cd,NULL,NULL,NULL,NULL);
+       iconv_close(cd);],
+      am_cv_func_iconv=yes)
+    if test "$am_cv_func_iconv" != yes; then
+      am_save_LIBS="$LIBS"
+      LIBS="$LIBS -liconv"
+      AC_TRY_LINK([#include <stdlib.h>
+#include <iconv.h>],
+        [iconv_t cd = iconv_open("","");
+         iconv(cd,NULL,NULL,NULL,NULL);
+         iconv_close(cd);],
+        am_cv_lib_iconv=yes
+        am_cv_func_iconv=yes)
+      LIBS="$am_save_LIBS"
+    fi
+  ])
+  if test "$am_cv_func_iconv" = yes; then
+    AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
+    AC_MSG_CHECKING([for iconv declaration])
+    AC_CACHE_VAL(am_cv_proto_iconv, [
+      AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <iconv.h>
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
+      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
+    am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
+    AC_MSG_RESULT([$]{ac_t:-
+         }[$]am_cv_proto_iconv)
+    AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
+      [Define as const if the declaration of iconv() needs const.])
+  fi
+  LIBICONV=
+  if test "$am_cv_lib_iconv" = yes; then
+    LIBICONV="-liconv"
+  fi
+  AC_SUBST(LIBICONV)
+])
+
+#serial AM1
+
+dnl From Bruno Haible.
+
+AC_DEFUN([AM_LANGINFO_CODESET],
+[
+  AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
+    [AC_TRY_LINK([#include <langinfo.h>],
+      [char* cs = nl_langinfo(CODESET);],
+      am_cv_langinfo_codeset=yes,
+      am_cv_langinfo_codeset=no)
+    ])
+  if test $am_cv_langinfo_codeset = yes; then
+    AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
+      [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
+  fi
+])
+
 # Check whether LC_MESSAGES is available in <locale.h>.
 # Ulrich Drepper <drepper@cygnus.com>, 1995.
 #
@@ -1027,15 +4699,16 @@ AC_SUBST($1)dnl
 # but which still want to provide support for the GNU gettext functionality.
 # Please note that the actual code is *not* freely available.
 
-# serial 1
+# serial 2
 
-AC_DEFUN(AM_LC_MESSAGES,
+AC_DEFUN([AM_LC_MESSAGES],
   [if test $ac_cv_header_locale_h = yes; then
     AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
       [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
        am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
     if test $am_cv_val_LC_MESSAGES = yes; then
-      AC_DEFINE(HAVE_LC_MESSAGES)
+      AC_DEFINE(HAVE_LC_MESSAGES, 1,
+        [Define if your <locale.h> file defines LC_MESSAGES.])
     fi
   fi])
 
index 0ce538bb85cc7ee026a4f024e6572cb1ce99b522..dff9e481b70f9505b49ce999629a168a19976f4f 100755 (executable)
@@ -1,8 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
 #   Free Software Foundation, Inc.
-#
+
+timestamp='2001-09-04'
+
 # 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
 # the Free Software Foundation; either version 2 of the License, or
 # 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 system type (host/target name).
-#
-# Only a few systems have been added to this list; please add others
-# (but try to keep the structure clean).
-#
+# don't specify an explicit build system type.
 
-# Use $HOST_CC if defined. $CC may point to a cross-compiler
-if test x"$CC_FOR_BUILD" = x; then
-  if test x"$HOST_CC" != x; then
-    CC_FOR_BUILD="$HOST_CC"
-  else
-    if test x"$CC" != x; then
-      CC_FOR_BUILD="$CC"
-    else
-      CC_FOR_BUILD=cc
-    fi
-  fi
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )        # Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help" >&2
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
 fi
 
 
+dummy=dummy-$$
+trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script.
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,)    echo "int dummy(){}" > $dummy.c ;
+       for c in cc gcc c89 ; do
+         ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
+         if test $? = 0 ; then
+            CC_FOR_BUILD="$c"; break ;
+         fi ;
+       done ;
+       rm -f $dummy.c $dummy.o $dummy.rel ;
+       if test x"$CC_FOR_BUILD" = x ; then
+         CC_FOR_BUILD=no_compiler_found ;
+       fi
+       ;;
+ ,,*)   CC_FOR_BUILD=$CC ;;
+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+esac'
+
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi@noc.rutgers.edu 8/24/94.)
+# (ghazi@noc.rutgers.edu 1994-08-24)
 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
        PATH=$PATH:/.attbin ; export PATH
 fi
 
 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-dummy=dummy-$$
-trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
-
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
@@ -77,7 +136,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        # object file format.
        # Determine the machine/vendor (is the vendor relevant).
        case "${UNAME_MACHINE}" in
-           amiga) machine=m68k-cbm ;;
+           amiga) machine=m68k-unknown ;;
            arm32) machine=arm-unknown ;;
            atari*) machine=m68k-atari ;;
            sun3*) machine=m68k-sun ;;
@@ -87,16 +146,25 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
            ibmrt|romp-ibm) machine=romp-ibm ;;
            *) machine=${UNAME_MACHINE}-unknown ;;
        esac
-       # The Operating System including object format.
-       if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-               | grep __ELF__ >/dev/null
-       then
-           # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-           # Return netbsd for either.  FIX?
-           os=netbsd
-       else
-           os=netbsdelf
-       fi
+       # The Operating System including object format, if it has switched
+       # to ELF recently, or will in the future.
+       case "${UNAME_MACHINE}" in
+           i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
+               eval $set_cc_for_build
+               if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+                       | grep __ELF__ >/dev/null
+               then
+                   # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+                   # Return netbsd for either.  FIX?
+                   os=netbsd
+               else
+                   os=netbsdelf
+               fi
+               ;;
+           *)
+               os=netbsd
+               ;;
+       esac
        # The OS release
        release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
        # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
@@ -137,6 +205,7 @@ main:
        jsr \$26,exit
        .end main
 EOF
+       eval $set_cc_for_build
        $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
        if test "$?" = 0 ; then
                case `./$dummy` in
@@ -158,6 +227,9 @@ EOF
                        2-307)
                                UNAME_MACHINE="alphaev67"
                                ;;
+                       2-1307)
+                               UNAME_MACHINE="alphaev68"
+                               ;;
                esac
        fi
        rm -f $dummy.s $dummy
@@ -173,7 +245,7 @@ EOF
        echo alpha-dec-winnt3.5
        exit 0 ;;
     Amiga*:UNIX_System_V:4.0:*)
-       echo m68k-cbm-sysv4
+       echo m68k-unknown-sysv4
        exit 0;;
     amiga:OpenBSD:*:*)
        echo m68k-unknown-openbsd${UNAME_RELEASE}
@@ -205,7 +277,7 @@ EOF
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
        echo arm-acorn-riscix${UNAME_RELEASE}
        exit 0;;
-    SR2?01:HI-UX/MPP:*:*)
+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
        echo hppa1.1-hitachi-hiuxmpp
        exit 0;;
     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
@@ -261,6 +333,9 @@ EOF
     aushp:SunOS:*:*)
        echo sparc-auspex-sunos${UNAME_RELEASE}
        exit 0 ;;
+    sparc*:NetBSD:*)
+       echo `uname -p`-unknown-netbsd${UNAME_RELEASE}
+       exit 0 ;;
     atari*:OpenBSD:*:*)
        echo m68k-unknown-openbsd${UNAME_RELEASE}
        exit 0 ;;
@@ -318,6 +393,7 @@ EOF
        echo clipper-intergraph-clix${UNAME_RELEASE}
        exit 0 ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
+       eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
 #ifdef __cplusplus
 #include <stdio.h>  /* for printf() prototype */
@@ -341,10 +417,13 @@ EOF
 EOF
        $CC_FOR_BUILD $dummy.c -o $dummy \
          && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-         && rm $dummy.c $dummy && exit 0
+         && rm -f $dummy.c $dummy && exit 0
        rm -f $dummy.c $dummy
        echo mips-mips-riscos${UNAME_RELEASE}
        exit 0 ;;
+    Motorola:PowerMAX_OS:*:*)
+       echo powerpc-motorola-powermax
+       exit 0 ;;
     Night_Hawk:Power_UNIX:*:*)
        echo powerpc-harris-powerunix
        exit 0 ;;
@@ -392,11 +471,20 @@ EOF
     ????????: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 '
-    i?86:AIX:*:*)
+    i*86:AIX:*:*)
        echo i386-ibm-aix
        exit 0 ;;
+    ia64:AIX:*:*)
+       if [ -x /usr/bin/oslevel ] ; then
+               IBM_REV=`/usr/bin/oslevel`
+       else
+               IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+       fi
+       echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+       exit 0 ;;
     *:AIX:2:3)
        if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+               eval $set_cc_for_build
                sed 's/^                //' << EOF >$dummy.c
                #include <sys/systemcfg.h>
 
@@ -408,7 +496,7 @@ EOF
                        exit(0);
                        }
 EOF
-               $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
+               $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
                rm -f $dummy.c $dummy
                echo rs6000-ibm-aix3.2.5
        elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
@@ -417,9 +505,9 @@ EOF
                echo rs6000-ibm-aix3.2
        fi
        exit 0 ;;
-    *:AIX:*:4)
+    *:AIX:*:[45])
        IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
-       if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
+       if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
                IBM_ARCH=rs6000
        else
                IBM_ARCH=powerpc
@@ -427,7 +515,7 @@ EOF
        if [ -x /usr/bin/oslevel ] ; then
                IBM_REV=`/usr/bin/oslevel`
        else
-               IBM_REV=4.${UNAME_RELEASE}
+               IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
        fi
        echo ${IBM_ARCH}-ibm-aix${IBM_REV}
        exit 0 ;;
@@ -453,10 +541,29 @@ EOF
        echo m68k-hp-bsd4.4
        exit 0 ;;
     9000/[34678]??:HP-UX:*:*)
+       HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
        case "${UNAME_MACHINE}" in
            9000/31? )            HP_ARCH=m68000 ;;
            9000/[34]?? )         HP_ARCH=m68k ;;
            9000/[678][0-9][0-9])
+              case "${HPUX_REV}" in
+                11.[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" ;;
+                        esac ;;
+                    esac
+                  fi ;;
+              esac
+              if [ "${HP_ARCH}" = "" ]; then
+             eval $set_cc_for_build
               sed 's/^              //' << EOF >$dummy.c
 
               #define _HPUX_SOURCE
@@ -490,13 +597,19 @@ EOF
                   exit (0);
               }
 EOF
-       (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
-       rm -f $dummy.c $dummy
+           (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
+           if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
+           rm -f $dummy.c $dummy
+       fi ;;
        esac
-       HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
        echo ${HP_ARCH}-hp-hpux${HPUX_REV}
        exit 0 ;;
+    ia64:HP-UX:*:*)
+       HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+       echo ia64-hp-hpux${HPUX_REV}
+       exit 0 ;;
     3050*:HI-UX:*:*)
+       eval $set_cc_for_build
        sed 's/^        //' << EOF >$dummy.c
        #include <unistd.h>
        int
@@ -522,7 +635,7 @@ EOF
          exit (0);
        }
 EOF
-       $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
+       $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
        rm -f $dummy.c $dummy
        echo unknown-hitachi-hiuxwe2
        exit 0 ;;
@@ -532,7 +645,7 @@ EOF
     9000/8??:4.3bsd:*:*)
        echo hppa1.0-hp-bsd
        exit 0 ;;
-    *9??*:MPE/iX:*:*)
+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
        echo hppa1.0-hp-mpeix
        exit 0 ;;
     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
@@ -541,7 +654,7 @@ EOF
     hp8??:OSF1:*:*)
        echo hppa1.0-hp-osf
        exit 0 ;;
-    i?86:OSF1:*:*)
+    i*86:OSF1:*:*)
        if [ -x /usr/sbin/sysversion ] ; then
            echo ${UNAME_MACHINE}-unknown-osf1mk
        else
@@ -576,37 +689,39 @@ EOF
        echo xmp-cray-unicos
         exit 0 ;;
     CRAY*Y-MP:*:*:*)
-       echo ymp-cray-unicos${UNAME_RELEASE}
+       echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
     CRAY*[A-Z]90:*:*:*)
        echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
        | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-             -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
+             -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+             -e 's/\.[^.]*$/.X/'
        exit 0 ;;
     CRAY*TS:*:*:*)
        echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
-    CRAY*T3E:*:*:*)
+    CRAY*T3D:*:*:*)
        echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
+    CRAY*T3E:*:*:*)
+       echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+       exit 0 ;;
     CRAY*SV1:*:*:*)
        echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
        exit 0 ;;
     CRAY-2:*:*:*)
        echo cray2-cray-unicos
         exit 0 ;;
-    F300:UNIX_System_V:*:*)
+    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 "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
         exit 0 ;;
-    F301:UNIX_System_V:*:*)
-       echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
-       exit 0 ;;
     hp300:OpenBSD:*:*)
        echo m68k-unknown-openbsd${UNAME_RELEASE}
        exit 0 ;;
-    i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
        echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
        exit 0 ;;
     sparc*:BSD/OS:*:*)
@@ -627,6 +742,9 @@ EOF
     i*:MINGW*:*)
        echo ${UNAME_MACHINE}-pc-mingw32
        exit 0 ;;
+    i*:PW*:*)
+       echo ${UNAME_MACHINE}-pc-pw32
+       exit 0 ;;
     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
@@ -645,187 +763,96 @@ EOF
     *:GNU:*:*)
        echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
        exit 0 ;;
-    *:Linux:*:*)
-
+    i*86:Minix:*:*)
+       echo ${UNAME_MACHINE}-pc-minix
+       exit 0 ;;
+    arm*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit 0 ;;
+    ia64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux
+       exit 0 ;;
+    m68*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit 0 ;;
+    mips:Linux:*:*)
+       case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
+         big)    echo mips-unknown-linux-gnu && exit 0 ;;
+         little) echo mipsel-unknown-linux-gnu && exit 0 ;;
+       esac
+       ;;
+    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 ;;
+    parisc:Linux:*:* | hppa:Linux:*:*)
+       # Look for CPU level
+       case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+         PA7*) echo hppa1.1-unknown-linux-gnu ;;
+         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 ;;
+    s390:Linux:*:* | s390x:Linux:*:*)
+       echo ${UNAME_MACHINE}-ibm-linux
+       exit 0 ;;
+    sh*:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit 0 ;;
+    sparc:Linux:*:* | sparc64:Linux:*:*)
+       echo ${UNAME_MACHINE}-unknown-linux-gnu
+       exit 0 ;;
+    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.
-       ld_help_string=`cd /; ld --help 2>&1`
-       ld_supported_emulations=`echo $ld_help_string \
-                        | sed -ne '/supported emulations:/!d
+       ld_supported_targets=`cd /; ld --help 2>&1 \
+                        | sed -ne '/supported targets:/!d
                                    s/[         ][      ]*/ /g
-                                   s/.*supported emulations: *//
+                                   s/.*supported targets: *//
                                    s/ .*//
                                    p'`
-        case "$ld_supported_emulations" in
-         *ia64)
-               echo "${UNAME_MACHINE}-unknown-linux"
-               exit 0
+        case "$ld_supported_targets" in
+         elf32-i386)
+               TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
                ;;
-         i?86linux)
+         a.out-i386-linux)
                echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-               exit 0
-               ;;
-         elf_i?86)
-               echo "${UNAME_MACHINE}-pc-linux"
-               exit 0
-               ;;
-         i?86coff)
+               exit 0 ;;               
+         coff-i386)
                echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-               exit 0
-               ;;
-         sparclinux)
-               echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-               exit 0
-               ;;
-         armlinux)
-               echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-               exit 0
-               ;;
-         elf32arm*)
-               echo "${UNAME_MACHINE}-unknown-linux-gnuoldld"
-               exit 0
-               ;;
-         armelf_linux*)
-               echo "${UNAME_MACHINE}-unknown-linux-gnu"
-               exit 0
-               ;;
-         m68klinux)
-               echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
-               exit 0
-               ;;
-         elf32ppc | elf32ppclinux)
-               # Determine Lib Version
-               cat >$dummy.c <<EOF
-#include <features.h>
-#if defined(__GLIBC__)
-extern char __libc_version[];
-extern char __libc_release[];
-#endif
-main(argc, argv)
-     int argc;
-     char *argv[];
-{
-#if defined(__GLIBC__)
-  printf("%s %s\n", __libc_version, __libc_release);
-#else
-  printf("unkown\n");
-#endif
-  return 0;
-}
-EOF
-               LIBC=""
-               $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
-               if test "$?" = 0 ; then
-                       ./$dummy | grep 1\.99 > /dev/null
-                       if test "$?" = 0 ; then
-                               LIBC="libc1"
-                       fi
-               fi
-               rm -f $dummy.c $dummy
-               echo powerpc-unknown-linux-gnu${LIBC}
-               exit 0
-               ;;
+               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
-
-       if test "${UNAME_MACHINE}" = "alpha" ; then
-               cat <<EOF >$dummy.s
-                       .data
-               \$Lformat:
-                       .byte 37,100,45,37,120,10,0     # "%d-%x\n"
-
-                       .text
-                       .globl main
-                       .align 4
-                       .ent main
-               main:
-                       .frame \$30,16,\$26,0
-                       ldgp \$29,0(\$27)
-                       .prologue 1
-                       .long 0x47e03d80 # implver \$0
-                       lda \$2,-1
-                       .long 0x47e20c21 # amask \$2,\$1
-                       lda \$16,\$Lformat
-                       mov \$0,\$17
-                       not \$1,\$18
-                       jsr \$26,printf
-                       ldgp \$29,0(\$26)
-                       mov 0,\$16
-                       jsr \$26,exit
-                       .end main
-EOF
-               LIBC=""
-               $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
-               if test "$?" = 0 ; then
-                       case `./$dummy` in
-                       0-0)
-                               UNAME_MACHINE="alpha"
-                               ;;
-                       1-0)
-                               UNAME_MACHINE="alphaev5"
-                               ;;
-                       1-1)
-                               UNAME_MACHINE="alphaev56"
-                               ;;
-                       1-101)
-                               UNAME_MACHINE="alphapca56"
-                               ;;
-                       2-303)
-                               UNAME_MACHINE="alphaev6"
-                               ;;
-                       2-307)
-                               UNAME_MACHINE="alphaev67"
-                               ;;
-                       esac
-
-                       objdump --private-headers $dummy | \
-                         grep ld.so.1 > /dev/null
-                       if test "$?" = 0 ; then
-                               LIBC="libc1"
-                       fi
-               fi
-               rm -f $dummy.s $dummy
-               echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
-       elif test "${UNAME_MACHINE}" = "mips" ; then
-         cat >$dummy.c <<EOF
-#ifdef __cplusplus
-#include <stdio.h>  /* for printf() prototype */
-       int main (int argc, char *argv[]) {
-#else
-       int main (argc, argv) int argc; char *argv[]; {
-#endif
-#ifdef __MIPSEB__
-  printf ("%s-unknown-linux-gnu\n", argv[1]);
-#endif
-#ifdef __MIPSEL__
-  printf ("%sel-unknown-linux-gnu\n", argv[1]);
-#endif
-  return 0;
-}
-EOF
-         $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-         rm -f $dummy.c $dummy
-       elif test "${UNAME_MACHINE}" = "s390"; then
-         echo s390-ibm-linux && exit 0
-       else
-         # Either a pre-BFD a.out linker (linux-gnuoldld)
-         # or one that does not give us useful --help.
-         # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
-         # If ld does not provide *any* "supported emulations:"
-         # that means it is gnuoldld.
-         echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
-         test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
-
-         case "${UNAME_MACHINE}" in
-         i?86)
-           VENDOR=pc;
-           ;;
-         *)
-           VENDOR=unknown;
-           ;;
-         esac
-         # Determine whether the default compiler is a.out or elf
-         cat >$dummy.c <<EOF
+       # Determine whether the default compiler is a.out or elf
+       eval $set_cc_for_build
+       cat >$dummy.c <<EOF
 #include <features.h>
 #ifdef __cplusplus
 #include <stdio.h>  /* for printf() prototype */
@@ -836,28 +863,30 @@ EOF
 #ifdef __ELF__
 # ifdef __GLIBC__
 #  if __GLIBC__ >= 2
-    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
+    printf ("%s-pc-linux-gnu\n", argv[1]);
 #  else
-    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+    printf ("%s-pc-linux-gnulibc1\n", argv[1]);
 #  endif
 # else
-   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+   printf ("%s-pc-linux-gnulibc1\n", argv[1]);
 # endif
 #else
-  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
+  printf ("%s-pc-linux-gnuaout\n", argv[1]);
 #endif
   return 0;
 }
 EOF
-         $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-         rm -f $dummy.c $dummy
-       fi ;;
-# 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.
-    i?86:DYNIX/ptx:4*:*)
+       $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
+       rm -f $dummy.c $dummy
+       test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+       ;;
+    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 0 ;;
-    i?86:UNIX_SV:4.2MP:2.*)
+    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,
@@ -865,7 +894,7 @@ EOF
         # Use sysv4.2uw... so that sysv4* matches it.
        echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
        exit 0 ;;
-    i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
+    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
                echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
@@ -873,16 +902,15 @@ EOF
                echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
        fi
        exit 0 ;;
-    i?86:*:5:7*)
-        # Fixed at (any) Pentium or better
-        UNAME_MACHINE=i586
-        if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
-           echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
-       else
-           echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
-       fi
+    i*86:*:5:[78]*)
+       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 0 ;;
-    i?86:*:3.2:*)
+    i*86:*:3.2:*)
        if test -f /usr/options/cb.name; then
                UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
                echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
@@ -900,7 +928,7 @@ EOF
                echo ${UNAME_MACHINE}-pc-sysv32
        fi
        exit 0 ;;
-    i?86:*DOS:*:*)
+    i*86:*DOS:*:*)
        echo ${UNAME_MACHINE}-pc-msdosdjgpp
        exit 0 ;;
     pc:*:*:*)
@@ -928,7 +956,7 @@ EOF
        exit 0 ;;
     M68*:*:R3V[567]*:*)
        test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-    3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
+    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
        OS_REL=''
        test -r /etc/.relid \
        && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -939,21 +967,24 @@ EOF
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
           && echo i486-ncr-sysv4 && exit 0 ;;
-    m68*:LynxOS:2.*:*)
+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
        echo m68k-unknown-lynxos${UNAME_RELEASE}
        exit 0 ;;
     mc68030:UNIX_System_V:4.*:*)
        echo m68k-atari-sysv4
        exit 0 ;;
-    i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
        echo i386-unknown-lynxos${UNAME_RELEASE}
        exit 0 ;;
     TSUNAMI:LynxOS:2.*:*)
        echo sparc-unknown-lynxos${UNAME_RELEASE}
        exit 0 ;;
-    rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
+    rs6000:LynxOS:2.*:*)
        echo rs6000-unknown-lynxos${UNAME_RELEASE}
        exit 0 ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+       echo powerpc-unknown-lynxos${UNAME_RELEASE}
+       exit 0 ;;
     SM[BE]S:UNIX_SV:*:*)
        echo mips-dde-sysv${UNAME_RELEASE}
        exit 0 ;;
@@ -971,8 +1002,8 @@ EOF
                echo ns32k-sni-sysv
        fi
        exit 0 ;;
-    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                           # says <Richard.M.Bartel@ccMail.Census.GOV>
+    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                      # says <Richard.M.Bartel@ccMail.Census.GOV>
         echo i586-unisys-sysv4
         exit 0 ;;
     *:UNIX_System_V:4*:FTX*)
@@ -984,10 +1015,14 @@ EOF
        # From seanf@swdc.stratus.com.
        echo i860-stratus-sysv4
        exit 0 ;;
+    *:VOS:*:*)
+       # From Paul.Green@stratus.com.
+       echo hppa1.1-stratus-vos
+       exit 0 ;;
     mc68*:A/UX:*:*)
        echo m68k-apple-aux${UNAME_RELEASE}
        exit 0 ;;
-    news*:NEWS-OS:*:6*)
+    news*:NEWS-OS:6*:*)
        echo mips-sony-newsos6
        exit 0 ;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
@@ -1030,20 +1065,64 @@ EOF
     *:QNX:*:4*)
        echo i386-pc-qnx
        exit 0 ;;
-    NSR-W:NONSTOP_KERNEL:*:*)
+    NSR-[KW]:NONSTOP_KERNEL:*:*)
        echo nsr-tandem-nsk${UNAME_RELEASE}
        exit 0 ;;
+    *:NonStop-UX:*:*)
+       echo mips-compaq-nonstopux
+       exit 0 ;;
     BS2000:POSIX*:*:*)
        echo bs2000-siemens-sysv
        exit 0 ;;
     DS/*:UNIX_System_V:*:*)
        echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
        exit 0 ;;
+    *:Plan9:*:*)
+       # "uname -m" is not consistent, so use $cputype instead. 386
+       # is converted to i386 for consistency with other x86
+       # operating systems.
+       if test "$cputype" = "386"; then
+           UNAME_MACHINE=i386
+       else
+           UNAME_MACHINE="$cputype"
+       fi
+       echo ${UNAME_MACHINE}-unknown-plan9
+       exit 0 ;;
+    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 0 ;;
+    *:TOPS-10:*:*)
+       echo pdp10-unknown-tops10
+       exit 0 ;;
+    *:TENEX:*:*)
+       echo pdp10-unknown-tenex
+       exit 0 ;;
+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+       echo pdp10-dec-tops20
+       exit 0 ;;
+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+       echo pdp10-xkl-tops20
+       exit 0 ;;
+    *:TOPS-20:*:*)
+       echo pdp10-unknown-tops20
+       exit 0 ;;
+    *:ITS:*:*)
+       echo pdp10-unknown-its
+       exit 0 ;;
+    i*86:XTS-300:*:STOP)
+       echo ${UNAME_MACHINE}-unknown-stop
+       exit 0 ;;
+    i*86:atheos:*:*)
+       echo ${UNAME_MACHINE}-unknown-atheos
+       exit 0 ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
 
+eval $set_cc_for_build
 cat >$dummy.c <<EOF
 #ifdef _SEQUENT_
 # include <sys/types.h>
@@ -1130,11 +1209,24 @@ main ()
 #endif
 
 #if defined (vax)
-#if !defined (ultrix)
-  printf ("vax-dec-bsd\n"); exit (0);
-#else
-  printf ("vax-dec-ultrix\n"); exit (0);
-#endif
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
 #endif
 
 #if defined (alliant) && defined (i860)
@@ -1145,7 +1237,7 @@ main ()
 }
 EOF
 
-$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
+$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
 rm -f $dummy.c $dummy
 
 # Apollos put the system type in the environment.
@@ -1178,6 +1270,48 @@ then
     esac
 fi
 
-#echo '(Unable to guess system type)' 1>&2
+cat >&2 <<EOF
+$0: unable to guess system type
+
+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
+
+    ftp://ftp.gnu.org/pub/gnu/config/
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches@gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+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`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo               = `(hostinfo) 2>/dev/null`
+/bin/universe          = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch              = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM  = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
 
 exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
index 716b758377d749ffe154fd9c578d84887b8ca063..feccf639731a69eeaa2bd403a3f817b9e9b35b77 100644 (file)
@@ -1,93 +1,7 @@
 /* config.h.in.  Generated automatically from configure.in by autoheader.  */
+/* $Id: acconfig.h,v 1.15 2001/07/27 13:26:04 kloczek Exp $ */
 
-/* Define if using alloca.c.  */
-#undef C_ALLOCA
-
-/* Define to empty if the keyword does not work.  */
-#undef const
-
-/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
-   This function is required for alloca.c support on those systems.  */
-#undef CRAY_STACKSEG_END
-
-/* Define to the type of elements in the array set by `getgroups'.
-   Usually this is either `int' or `gid_t'.  */
-#undef GETGROUPS_T
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef gid_t
-
-/* Define if you have alloca, as a function or macro.  */
-#undef HAVE_ALLOCA
-
-/* Define if you have <alloca.h> and it should be used (not on Ultrix).  */
-#undef HAVE_ALLOCA_H
-
-/* Define if you have a working `mmap' system call.  */
-#undef HAVE_MMAP
-
-/* Define if your struct stat has st_rdev.  */
-#undef HAVE_ST_RDEV
-
-/* Define if you have the strftime function.  */
-#undef HAVE_STRFTIME
-
-/* Define if you have <sys/wait.h> that is POSIX.1 compatible.  */
-#undef HAVE_SYS_WAIT_H
-
-/* Define if utime(file, NULL) sets file's timestamp to the present.  */
-#undef HAVE_UTIME_NULL
-
-/* Define as __inline if that's what the C compiler calls it.  */
-#undef inline
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef mode_t
-
-/* Define to `long' if <sys/types.h> doesn't define.  */
-#undef off_t
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef pid_t
-
-/* Define if you need to in order for stat and other things to work.  */
-#undef _POSIX_SOURCE
-
-/* Define as the return type of signal handlers (int or void).  */
-#undef RETSIGTYPE
-
-/* Define if the `setpgrp' function takes no argument.  */
-#undef SETPGRP_VOID
-
-/* Define to `unsigned' if <sys/types.h> doesn't define.  */
-#undef size_t
-
-/* If using the C implementation of alloca, define if you know the
-   direction of stack growth for your system; otherwise it will be
-   automatically deduced at run-time.
- STACK_DIRECTION > 0 => grows toward higher addresses
- STACK_DIRECTION < 0 => grows toward lower addresses
- STACK_DIRECTION = 0 => direction of growth unknown
- */
-#undef STACK_DIRECTION
-
-/* Define if the `S_IS*' macros in <sys/stat.h> do not work properly.  */
-#undef STAT_MACROS_BROKEN
-
-/* Define if you have the ANSI C header files.  */
-#undef STDC_HEADERS
-
-/* Define if you can safely include both <sys/time.h> and <time.h>.  */
-#undef TIME_WITH_SYS_TIME
-
-/* Define if your <sys/time.h> declares struct tm.  */
-#undef TM_IN_SYS_TIME
-
-/* Define to `int' if <sys/types.h> doesn't define.  */
-#undef uid_t
-
-/* Define if you do not have <strings.h>, index, bzero, etc..  */
-#undef USG
+\f
 
 /* Define to enable password aging.  */
 #undef AGING
 /* Define if struct passwd has pw_comment.  */
 #undef ATT_COMMENT
 
+/* Define to support JFH's auth. methods.  UNTESTED.  */
+#undef AUTH_METHODS
+
 /* Define if struct passwd has pw_quota.  */
 #undef BSD_QUOTA
 
 /* Define if you have secure RPC.  */
 #undef DES_RPC
 
+/* Define to support 16-character passwords.  */
+#undef DOUBLESIZE
+
 /* Define to 1 if NLS is requested.  */
 #undef ENABLE_NLS
 
 /* Path for faillog file.  */
 #undef FAILLOG_FILE
 
+/* Define if you want my getgrent routines.  */
+#undef GETGRENT
+
 /* Define to libshadow_getpass to use our own version of getpass().  */
 #undef getpass
 
+/* Define if you want my getpwent routines.  */
+#undef GETPWENT
+
 /* Define as 1 if you have catgets and don't want to use GNU gettext.  */
 #undef HAVE_CATGETS
 
 /* Define to support the MD5-based password hashing algorithm.  */
 #undef MD5_CRYPT
 
+/* Define to use ndbm.  */
+#undef NDBM
+
 /* Define to support OPIE one-time password logins.  */
 #undef OPIE
 
-/* Define if pam_strerror() needs two arguments (Linux-PAM 0.59+).  */
-#undef PAM_STRERROR_NEEDS_TWO_ARGS
+/* Package name.  */
+#undef PACKAGE
 
 /* Path to passwd program.  */
 #undef PASSWD_PROGRAM
 
+/* Define if the compiler understands function prototypes.  */
+#undef PROTOTYPES
+
 /* Define if login should support the -r flag for rlogind.  */
 #undef RLOGIN
 
 /* Define to support /etc/suauth su access control.  */
 #undef SU_ACCESS
 
+/* Define to support SecureWare(tm) long passwords.  */
+#undef SW_CRYPT
+
 /* Define if you want gdbm for TCFS. */
 #undef TCFS_GDBM_SUPPORT
 
 /* Define to ut_name if struct utmp has ut_name (not ut_user).  */
 #undef ut_user
 
+/* Version.  */
+#undef VERSION
+
 /* Path for wtmp file.  */
 #undef _WTMP_FILE
 
-/* Define if you have the __argz_count function.  */
-#undef HAVE___ARGZ_COUNT
+/* */
+#undef USG
 
-/* Define if you have the __argz_next function.  */
-#undef HAVE___ARGZ_NEXT
+/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
+   systems. This function is required for `alloca.c' support on those systems.
+   */
+#undef CRAY_STACKSEG_END
 
-/* Define if you have the __argz_stringify function.  */
-#undef HAVE___ARGZ_STRINGIFY
+/* Define if using `alloca.c'. */
+#undef C_ALLOCA
+
+/* Define to 1 if translation of program messages to the user's native
+   language is requested. */
+#undef ENABLE_NLS
 
-/* Define if you have the a64l function.  */
+/* Define to the type of elements in the array set by `getgroups'. Usually
+   this is either `int' or `gid_t'. */
+#undef GETGROUPS_T
+
+/* Define if you have the `a64l' function. */
 #undef HAVE_A64L
 
-/* Define if you have the dcgettext function.  */
+/* Define if you have `alloca', as a function or macro. */
+#undef HAVE_ALLOCA
+
+/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
+#undef HAVE_ALLOCA_H
+
+/* Define if you have the <argz.h> header file. */
+#undef HAVE_ARGZ_H
+
+/* Define if you have the `dcgettext' function. */
 #undef HAVE_DCGETTEXT
 
-/* Define if you have the fchmod function.  */
+/* Define if you have the <dirent.h> header file, and it defines `DIR'. */
+#undef HAVE_DIRENT_H
+
+/* Define if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
+/* Define if you have the `fchmod' function. */
 #undef HAVE_FCHMOD
 
-/* Define if you have the fchown function.  */
+/* Define if you have the `fchown' function. */
 #undef HAVE_FCHOWN
 
-/* Define if you have the fsync function.  */
+/* Define if you have the <fcntl.h> header file. */
+#undef HAVE_FCNTL_H
+
+/* Define if you have the `feof_unlocked' function. */
+#undef HAVE_FEOF_UNLOCKED
+
+/* Define if you have the `fgets_unlocked' function. */
+#undef HAVE_FGETS_UNLOCKED
+
+/* Define if you have the `fsync' function. */
 #undef HAVE_FSYNC
 
-/* Define if you have the getcwd function.  */
+/* Define if you have the `getcwd' function. */
 #undef HAVE_GETCWD
 
-/* Define if you have the getgroups function.  */
+/* Define if you have the `getegid' function. */
+#undef HAVE_GETEGID
+
+/* Define if you have the `geteuid' function. */
+#undef HAVE_GETEUID
+
+/* Define if you have the `getgid' function. */
+#undef HAVE_GETGID
+
+/* Define if you have the `getgroups' function. */
 #undef HAVE_GETGROUPS
 
-/* Define if you have the gethostname function.  */
+/* Define if you have the `gethostname' function. */
 #undef HAVE_GETHOSTNAME
 
-/* Define if you have the getpagesize function.  */
+/* Define if you have the `getpagesize' function. */
 #undef HAVE_GETPAGESIZE
 
-/* Define if you have the getspnam function.  */
+/* Define if you have the `getspnam' function. */
 #undef HAVE_GETSPNAM
 
-/* Define if you have the gettimeofday function.  */
+/* Define if the GNU gettext() function is already present or preinstalled. */
+#undef HAVE_GETTEXT
+
+/* Define if you have the `gettimeofday' function. */
 #undef HAVE_GETTIMEOFDAY
 
-/* Define if you have the getusershell function.  */
+/* Define if you have the `getuid' function. */
+#undef HAVE_GETUID
+
+/* Define if you have the `getusershell' function. */
 #undef HAVE_GETUSERSHELL
 
-/* Define if you have the getutent function.  */
+/* Define if you have the `getutent' function. */
 #undef HAVE_GETUTENT
 
-/* Define if you have the initgroups function.  */
+/* Define if you have the <gshadow.h> header file. */
+#undef HAVE_GSHADOW_H
+
+/* Define if you have the iconv() function. */
+#undef HAVE_ICONV
+
+/* Define if you have the `initgroups' function. */
 #undef HAVE_INITGROUPS
 
-/* Define if you have the lchown function.  */
+/* Define if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define if you have <langinfo.h> and nl_langinfo(CODESET). */
+#undef HAVE_LANGINFO_CODESET
+
+/* Define if you have the <lastlog.h> header file. */
+#undef HAVE_LASTLOG_H
+
+/* Define if you have the `lchown' function. */
 #undef HAVE_LCHOWN
 
-/* Define if you have the lckpwdf function.  */
+/* Define if you have the `lckpwdf' function. */
 #undef HAVE_LCKPWDF
 
-/* Define if you have the lstat function.  */
+/* Define if your <locale.h> file defines LC_MESSAGES. */
+#undef HAVE_LC_MESSAGES
+
+/* Define if you have the `inet' library (-linet). */
+#undef HAVE_LIBINET
+
+/* Define if you have the `nsl' library (-lnsl). */
+#undef HAVE_LIBNSL
+
+/* Define if you have the `socket' library (-lsocket). */
+#undef HAVE_LIBSOCKET
+
+/* Define if you have the <limits.h> header file. */
+#undef HAVE_LIMITS_H
+
+/* Define if you have the <locale.h> header file. */
+#undef HAVE_LOCALE_H
+
+/* Define if you have the `lstat' function. */
 #undef HAVE_LSTAT
 
-/* Define if you have the memcpy function.  */
+/* Define if you have the <malloc.h> header file. */
+#undef HAVE_MALLOC_H
+
+/* Define if you have the `memcpy' function. */
 #undef HAVE_MEMCPY
 
-/* Define if you have the memset function.  */
+/* Define if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define if you have the `mempcpy' function. */
+#undef HAVE_MEMPCPY
+
+/* Define if you have the `memset' function. */
 #undef HAVE_MEMSET
 
-/* Define if you have the mkdir function.  */
+/* Define if you have the `mkdir' function. */
 #undef HAVE_MKDIR
 
-/* Define if you have the munmap function.  */
+/* Define if you have the `mkstemp' function. */
+#undef HAVE_MKSTEMP
+
+/* Define if you have a working `mmap' system call. */
+#undef HAVE_MMAP
+
+/* Define if you have the `munmap' function. */
 #undef HAVE_MUNMAP
 
-/* Define if you have the putenv function.  */
+/* Define if you have the <ndir.h> header file, and it defines `DIR'. */
+#undef HAVE_NDIR_H
+
+/* Define if you have the <nl_types.h> header file. */
+#undef HAVE_NL_TYPES_H
+
+/* Define if you have the <paths.h> header file. */
+#undef HAVE_PATHS_H
+
+/* Define if you have the `putenv' function. */
 #undef HAVE_PUTENV
 
-/* Define if you have the putgrent function.  */
+/* Define if you have the `putgrent' function. */
 #undef HAVE_PUTGRENT
 
-/* Define if you have the putpwent function.  */
+/* Define if you have the `putpwent' function. */
 #undef HAVE_PUTPWENT
 
-/* Define if you have the putspent function.  */
+/* Define if you have the `putspent' function. */
 #undef HAVE_PUTSPENT
 
-/* Define if you have the rename function.  */
+/* Define if you have the `rename' function. */
 #undef HAVE_RENAME
 
-/* Define if you have the rmdir function.  */
+/* Define if you have the `rmdir' function. */
 #undef HAVE_RMDIR
 
-/* Define if you have the setenv function.  */
+/* Define if you have the <rpc/key_prot.h> header file. */
+#undef HAVE_RPC_KEY_PROT_H
+
+/* Define if you have the `setenv' function. */
 #undef HAVE_SETENV
 
-/* Define if you have the setgroups function.  */
+/* Define if you have the `setgroups' function. */
 #undef HAVE_SETGROUPS
 
-/* Define if you have the setlocale function.  */
+/* Define if you have the `setlocale' function. */
 #undef HAVE_SETLOCALE
 
-/* Define if you have the sgetgrent function.  */
+/* Define if you have the `sgetgrent' function. */
 #undef HAVE_SGETGRENT
 
-/* Define if you have the sgetpwent function.  */
+/* Define if you have the `sgetpwent' function. */
 #undef HAVE_SGETPWENT
 
-/* Define if you have the sgetspent function.  */
+/* Define if you have the `sgetspent' function. */
 #undef HAVE_SGETSPENT
 
-/* Define if you have the sigaction function.  */
+/* Define if you have the <sgtty.h> header file. */
+#undef HAVE_SGTTY_H
+
+/* Define if you have the <shadow.h> header file. */
+#undef HAVE_SHADOW_H
+
+/* Define if you have the `sigaction' function. */
 #undef HAVE_SIGACTION
 
-/* Define if you have the snprintf function.  */
+/* Define if you have the `snprintf' function. */
 #undef HAVE_SNPRINTF
 
-/* Define if you have the stpcpy function.  */
+/* Define if you have the <stddef.h> header file. */
+#undef HAVE_STDDEF_H
+
+/* Define if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define if you have the `stpcpy' function. */
 #undef HAVE_STPCPY
 
-/* Define if you have the strcasecmp function.  */
+/* Define if you have the `strcasecmp' function. */
 #undef HAVE_STRCASECMP
 
-/* Define if you have the strchr function.  */
+/* Define if you have the `strchr' function. */
 #undef HAVE_STRCHR
 
-/* Define if you have the strdup function.  */
+/* Define if you have the `strdup' function. */
 #undef HAVE_STRDUP
 
-/* Define if you have the strerror function.  */
+/* Define if you have the `strerror' function. */
 #undef HAVE_STRERROR
 
-/* Define if you have the strstr function.  */
-#undef HAVE_STRSTR
-
-/* Define if you have the updwtmp function.  */
-#undef HAVE_UPDWTMP
-
-/* Define if you have the updwtmpx function.  */
-#undef HAVE_UPDWTMPX
-
-/* Define if you have the <argz.h> header file.  */
-#undef HAVE_ARGZ_H
-
-/* Define if you have the <dirent.h> header file.  */
-#undef HAVE_DIRENT_H
-
-/* Define if you have the <fcntl.h> header file.  */
-#undef HAVE_FCNTL_H
-
-/* Define if you have the <gshadow.h> header file.  */
-#undef HAVE_GSHADOW_H
-
-/* Define if you have the <lastlog.h> header file.  */
-#undef HAVE_LASTLOG_H
-
-/* Define if you have the <limits.h> header file.  */
-#undef HAVE_LIMITS_H
-
-/* Define if you have the <locale.h> header file.  */
-#undef HAVE_LOCALE_H
-
-/* Define if you have the <malloc.h> header file.  */
-#undef HAVE_MALLOC_H
+/* Define if you have the `strftime' function. */
+#undef HAVE_STRFTIME
 
-/* Define if you have the <ndir.h> header file.  */
-#undef HAVE_NDIR_H
+/* Define if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
 
-/* Define if you have the <nl_types.h> header file.  */
-#undef HAVE_NL_TYPES_H
+/* Define if you have the <string.h> header file. */
+#undef HAVE_STRING_H
 
-/* Define if you have the <paths.h> header file.  */
-#undef HAVE_PATHS_H
+/* Define if you have the `strstr' function. */
+#undef HAVE_STRSTR
 
-/* Define if you have the <rpc/key_prot.h> header file.  */
-#undef HAVE_RPC_KEY_PROT_H
+/* Define if you have the `strtoul' function. */
+#undef HAVE_STRTOUL
 
-/* Define if you have the <sgtty.h> header file.  */
-#undef HAVE_SGTTY_H
+/* Define if `st_rdev' is member of `struct stat'. */
+#undef HAVE_STRUCT_STAT_ST_RDEV
 
-/* Define if you have the <shadow.h> header file.  */
-#undef HAVE_SHADOW_H
+/* Define if your `struct stat' has `st_rdev'. Deprecated, use
+   `HAVE_STRUCT_STAT_ST_RDEV' instead. */
+#undef HAVE_ST_RDEV
 
-/* Define if you have the <string.h> header file.  */
-#undef HAVE_STRING_H
+/* Define if you have the <syslog.h> header file. */
+#undef HAVE_SYSLOG_H
 
-/* Define if you have the <sys/dir.h> header file */
+/* Define if you have the <sys/dir.h> header file, and it defines `DIR'. */
 #undef HAVE_SYS_DIR_H
 
-/* Define if you have the <sys/ioctl.h> header file.  */
+/* Define if you have the <sys/ioctl.h> header file. */
 #undef HAVE_SYS_IOCTL_H
 
-/* Define if you have the <sys/ndir.h> header file */
+/* Define if you have the <sys/ndir.h> header file, and it defines `DIR'. */
 #undef HAVE_SYS_NDIR_H
 
-/* Define if you have the <sys/param.h> header file.  */
+/* Define if you have the <sys/param.h> header file. */
 #undef HAVE_SYS_PARAM_H
 
-/* Define if you have the <sys/resource.h> header file.  */
+/* Define if you have the <sys/resource.h> header file. */
 #undef HAVE_SYS_RESOURCE_H
 
-/* Define if you have the <sys/time.h> header file.  */
+/* Define if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define if you have the <sys/time.h> header file. */
 #undef HAVE_SYS_TIME_H
 
-/* Define if you have the <syslog.h> header file.  */
-#undef HAVE_SYSLOG_H
+/* Define if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
 
-/* Define if you have the <termio.h> header file.  */
-#undef HAVE_TERMIO_H
+/* Define if you have <sys/wait.h> that is POSIX.1 compatible. */
+#undef HAVE_SYS_WAIT_H
 
-/* Define if you have the <termios.h> header file.  */
+/* Define if you have the <termios.h> header file. */
 #undef HAVE_TERMIOS_H
 
-/* Define if you have the <ulimit.h> header file.  */
+/* Define if you have the <termio.h> header file. */
+#undef HAVE_TERMIO_H
+
+/* Define if you have the `tsearch' function. */
+#undef HAVE_TSEARCH
+
+/* Define if you have the <ulimit.h> header file. */
 #undef HAVE_ULIMIT_H
 
-/* Define if you have the <unistd.h> header file.  */
+/* Define if you have the <unistd.h> header file. */
 #undef HAVE_UNISTD_H
 
-/* Define if you have the <usersec.h> header file.  */
+/* Define if you have the `updwtmp' function. */
+#undef HAVE_UPDWTMP
+
+/* Define if you have the `updwtmpx' function. */
+#undef HAVE_UPDWTMPX
+
+/* Define if you have the <usersec.h> header file. */
 #undef HAVE_USERSEC_H
 
-/* Define if you have the <utime.h> header file.  */
+/* Define if you have the <utime.h> header file. */
 #undef HAVE_UTIME_H
 
-/* Define if you have the <utmp.h> header file.  */
-#undef HAVE_UTMP_H
+/* Define if `utime(file, NULL)' sets file's timestamp to the present. */
+#undef HAVE_UTIME_NULL
 
-/* Define if you have the <utmpx.h> header file.  */
+/* Define if you have the <utmpx.h> header file. */
 #undef HAVE_UTMPX_H
 
-/* Define if you have the i library (-li).  */
-#undef HAVE_LIBI
+/* Define if you have the <utmp.h> header file. */
+#undef HAVE_UTMP_H
 
-/* Define if you have the inet library (-linet).  */
-#undef HAVE_LIBINET
+/* Define if you have the `__argz_count' function. */
+#undef HAVE___ARGZ_COUNT
 
-/* Define if you have the nsl library (-lnsl).  */
-#undef HAVE_LIBNSL
+/* Define if you have the `__argz_next' function. */
+#undef HAVE___ARGZ_NEXT
 
-/* Define if you have the socket library (-lsocket).  */
-#undef HAVE_LIBSOCKET
+/* Define if you have the `__argz_stringify' function. */
+#undef HAVE___ARGZ_STRINGIFY
+
+/* Define as const if the declaration of iconv() needs const. */
+#undef ICONV_CONST
 
 /* Name of package */
 #undef PACKAGE
 
+/* Define if compiler has function prototypes */
+#undef PROTOTYPES
+
+/* Define as the return type of signal handlers (`int' or `void'). */
+#undef RETSIGTYPE
+
+/* Define if the `setpgrp' function takes no argument. */
+#undef SETPGRP_VOID
+
+/* If using the C implementation of alloca, define if you know the
+   direction of stack growth for your system; otherwise it will be
+   automatically deduced at run-time.
+        STACK_DIRECTION > 0 => grows toward higher addresses
+        STACK_DIRECTION < 0 => grows toward lower addresses
+        STACK_DIRECTION = 0 => direction of growth unknown */
+#undef STACK_DIRECTION
+
+/* Define if the `S_IS*' macros in <sys/stat.h> do not work properly. */
+#undef STAT_MACROS_BROKEN
+
+/* Define if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Define if you can safely include both <sys/time.h> and <time.h>. */
+#undef TIME_WITH_SYS_TIME
+
+/* Define if your <sys/time.h> declares `struct tm'. */
+#undef TM_IN_SYS_TIME
+
 /* Version number of package */
 #undef VERSION
 
-/* Define if compiler has function prototypes */
-#undef PROTOTYPES
+/* Define to empty if `const' does not conform to ANSI C. */
+#undef const
+
+/* Define to `int' if <sys/types.h> doesn't define. */
+#undef gid_t
+
+/* Define as `__inline' if that's what the C compiler calls it, or to nothing
+   if it is not supported. */
+#undef inline
+
+/* Define to `int' if <sys/types.h> does not define. */
+#undef mode_t
 
+/* Define to `long' if <sys/types.h> does not define. */
+#undef off_t
+
+/* Define to `int' if <sys/types.h> does not define. */
+#undef pid_t
+
+/* Define to `unsigned' if <sys/types.h> does not define. */
+#undef size_t
+
+/* Define to `int' if <sys/types.h> doesn't define. */
+#undef uid_t
index c8e77851e69dd619632d512ff3cf4468f39b6d91..393f13d373dc87d2dbdd58b8243d27974bb5079d 100755 (executable)
@@ -1,8 +1,10 @@
 #! /bin/sh
-# Configuration validation subroutine script, version 1.1.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+# Configuration validation subroutine script.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
 #   Free Software Foundation, Inc.
-#
+
+timestamp='2001-09-07'
+
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
 # can handle that machine.  It does not imply ALL GNU software can.
@@ -27,7 +29,6 @@
 # configuration script generated by Autoconf, you may include it under
 # the same distribution terms that you use for the rest of that program.
 
-# Written by Per Bothner <bothner@cygnus.com>.
 # Please send patches to <config-patches@gnu.org>.
 #
 # Configuration subroutine to validate and canonicalize a configuration type.
 #      CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
 # It is wrong to echo any other type of specification.
 
-if [ x$1 = x ]
-then
-       echo Configuration name missing. 1>&2
-       echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
-       echo "or     $0 ALIAS" 1>&2
-       echo where ALIAS is a recognized configuration type. 1>&2
-       exit 1
-fi
+me=`echo "$0" | sed -e 's,.*/,,'`
 
-# First pass through any local machine types.
-case $1 in
-       *local*)
-               echo $1
-               exit 0
-               ;;
-       *)
-       ;;
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+       $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+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
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )        # Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help"
+       exit 1 ;;
+
+    *local*)
+       # First pass through any local machine types.
+       echo $1
+       exit 0;;
+
+    * )
+       break ;;
+  esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+    exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+    exit 1;;
 esac
 
 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
 # 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*)
+  nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
@@ -99,7 +143,7 @@ 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)
+       -apple | -axis)
                os=
                basic_machine=$1
                ;;
@@ -113,6 +157,14 @@ case $os in
                os=-vxworks
                basic_machine=$1
                ;;
+       -chorusos*)
+               os=-chorusos
+               basic_machine=$1
+               ;;
+       -chorusrdb)
+               os=-chorusrdb
+               basic_machine=$1
+               ;;
        -hiux*)
                os=-hiuxwe2
                ;;
@@ -171,30 +223,50 @@ esac
 case $basic_machine in
        # Recognize the basic CPU types without company name.
        # Some are omitted here because they have special meanings below.
-       tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
-               | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
-               | 580 | i960 | h8300 \
-               | x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \
-               | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
-               | hppa64 \
-               | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \
-               | alphaev6[78] \
-               | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
-               | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
-               | mips64orion | mips64orionel | mipstx39 | mipstx39el \
-               | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
-               | mips64vr5000 | miprs64vr5000el | mcore \
-               | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
-               | thumb | d10v | fr30 | avr)
+       1750a | 580 \
+       | a29k \
+       | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+       | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+       | c4x | clipper \
+       | d10v | d30v | dsp16xx \
+       | fr30 \
+       | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+       | i370 | i860 | i960 | ia64 \
+       | m32r | m68000 | m68k | m88k | mcore \
+       | mips16 | mips64 | mips64el | mips64orion | mips64orionel \
+       | mips64vr4100 | mips64vr4100el | mips64vr4300 \
+       | mips64vr4300el | mips64vr5000 | mips64vr5000el \
+       | mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
+       | mipsisa32 \
+       | mn10200 | mn10300 \
+       | ns16k | ns32k \
+       | openrisc \
+       | pdp10 | pdp11 | pj | pjl \
+       | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+       | pyramid \
+       | s390 | s390x \
+       | sh | sh[34] | sh[34]eb | shbe | shle \
+       | sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
+       | stormy16 | strongarm \
+       | tahoe | thumb | tic80 | tron \
+       | v850 \
+       | we32k \
+       | x86 | xscale \
+       | z8k)
                basic_machine=$basic_machine-unknown
                ;;
-       m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
+       m6811 | m68hc11 | m6812 | m68hc12)
+               # Motorola 68HC11/12.
+               basic_machine=$basic_machine-unknown
+               os=-none
+               ;;
+       m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
                ;;
 
        # We use `pc' rather than `unknown'
        # because (1) that's what they normally are, and
        # (2) the word "unknown" tends to confuse beginning users.
-       i[34567]86)
+       i*86 | x86_64)
          basic_machine=$basic_machine-pc
          ;;
        # Object if more than one company name word.
@@ -203,28 +275,43 @@ case $basic_machine in
                exit 1
                ;;
        # Recognize the basic CPU types with company name.
-       # FIXME: clean up the formatting here.
-       vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
-             | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
-             | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
-             | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
-             | xmp-* | ymp-* \
-             | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \
-             | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \
-             | hppa2.0n-* | hppa64-* \
-             | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \
-             | alphaev6[78]-* \
-             | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
-             | clipper-* | orion-* \
-             | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
-             | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
-             | mips64el-* | mips64orion-* | mips64orionel-* \
-             | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
-             | mipstx39-* | mipstx39el-* | mcore-* \
-             | f301-* | armv*-* | s390-* | sv1-* | t3e-* \
-             | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
-             | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \
-             | bs2000-*)
+       580-* \
+       | a29k-* \
+       | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+       | alphapca5[67]-* | arc-* \
+       | arm-*  | armbe-* | armle-* | armv*-* \
+       | bs2000-* \
+       | c[123]* | c30-* | [cjt]90-* | c54x-* \
+       | clipper-* | cray2-* | cydra-* \
+       | d10v-* | d30v-* \
+       | elxsi-* \
+       | f30[01]-* | f700-* | fr30-* | fx80-* \
+       | h8300-* | h8500-* \
+       | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+       | i*86-* | i860-* | i960-* | ia64-* \
+       | m32r-* \
+       | m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
+       | m88110-* | m88k-* | mcore-* \
+       | mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
+       | mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
+       | mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
+       | mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
+       | none-* | np1-* | ns16k-* | ns32k-* \
+       | orion-* \
+       | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+       | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+       | pyramid-* \
+       | romp-* | rs6000-* \
+       | s390-* | s390x-* \
+       | sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
+       | sparc-* | sparc64-* | sparc86x-* | sparclite-* \
+       | sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
+       | t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
+       | v850-* | vax-* \
+       | we32k-* \
+       | x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \
+       | ymp-* \
+       | z8k-*)
                ;;
        # Recognize the various machine names and aliases which stand
        # for a CPU type and a company and sometimes even an OS.
@@ -261,14 +348,14 @@ case $basic_machine in
                os=-sysv
                ;;
        amiga | amiga-*)
-               basic_machine=m68k-cbm
+               basic_machine=m68k-unknown
                ;;
        amigaos | amigados)
-               basic_machine=m68k-cbm
+               basic_machine=m68k-unknown
                os=-amigaos
                ;;
        amigaunix | amix)
-               basic_machine=m68k-cbm
+               basic_machine=m68k-unknown
                os=-sysv4
                ;;
        apollo68)
@@ -315,13 +402,16 @@ case $basic_machine in
                basic_machine=cray2-cray
                os=-unicos
                ;;
-       [ctj]90-cray)
-               basic_machine=c90-cray
+       [cjt]90)
+               basic_machine=${basic_machine}-cray
                os=-unicos
                ;;
        crds | unos)
                basic_machine=m68k-crds
                ;;
+       cris | cris-* | etrax*)
+               basic_machine=cris-axis
+               ;;
        da30 | da30-*)
                basic_machine=m68k-da30
                ;;
@@ -369,6 +459,10 @@ case $basic_machine in
                basic_machine=tron-gmicro
                os=-sysv
                ;;
+       go32)
+               basic_machine=i386-pc
+               os=-go32
+               ;;
        h3050r* | hiux*)
                basic_machine=hppa1.1-hitachi
                os=-hiuxwe2
@@ -444,19 +538,19 @@ case $basic_machine in
                basic_machine=i370-ibm
                ;;
 # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-       i[34567]86v32)
+       i*86v32)
                basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
                os=-sysv32
                ;;
-       i[34567]86v4*)
+       i*86v4*)
                basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
                os=-sysv4
                ;;
-       i[34567]86v)
+       i*86v)
                basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
                os=-sysv
                ;;
-       i[34567]86sol2)
+       i*86sol2)
                basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
                os=-solaris2
                ;;
@@ -468,14 +562,6 @@ case $basic_machine in
                basic_machine=i386-unknown
                os=-vsta
                ;;
-       i386-go32 | go32)
-               basic_machine=i386-unknown
-               os=-go32
-               ;;
-       i386-mingw32 | mingw32)
-               basic_machine=i386-unknown
-               os=-mingw32
-               ;;
        iris | iris4d)
                basic_machine=mips-sgi
                case $os in
@@ -501,6 +587,10 @@ case $basic_machine in
                basic_machine=ns32k-utek
                os=-sysv
                ;;
+       mingw32)
+               basic_machine=i386-pc
+               os=-mingw32
+               ;;
        miniframe)
                basic_machine=m68000-convergent
                ;;
@@ -531,7 +621,7 @@ case $basic_machine in
                os=-coff
                ;;
        msdos)
-               basic_machine=i386-unknown
+               basic_machine=i386-pc
                os=-msdos
                ;;
        mvs)
@@ -595,6 +685,10 @@ case $basic_machine in
                basic_machine=i960-intel
                os=-mon960
                ;;
+       nonstopux)
+               basic_machine=mips-compaq
+               os=-nonstopux
+               ;;
        np1)
                basic_machine=np1-gould
                ;;
@@ -630,28 +724,28 @@ case $basic_machine in
         pc532 | pc532-*)
                basic_machine=ns32k-pc532
                ;;
-       pentium | p5 | k5 | k6 | nexen)
+       pentium | p5 | k5 | k6 | nexgen)
                basic_machine=i586-pc
                ;;
-       pentiumpro | p6 | 6x86)
+       pentiumpro | p6 | 6x86 | athlon)
                basic_machine=i686-pc
                ;;
        pentiumii | pentium2)
-               basic_machine=i786-pc
+               basic_machine=i686-pc
                ;;
-       pentium-* | p5-* | k5-* | k6-* | nexen-*)
+       pentium-* | p5-* | k5-* | k6-* | nexgen-*)
                basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
-       pentiumpro-* | p6-* | 6x86-*)
+       pentiumpro-* | p6-* | 6x86-* | athlon-*)
                basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
        pentiumii-* | pentium2-*)
-               basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+               basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
        pn)
                basic_machine=pn-gould
                ;;
-       power)  basic_machine=rs6000-ibm
+       power)  basic_machine=power-ibm
                ;;
        ppc)    basic_machine=powerpc-unknown
                ;;
@@ -663,9 +757,23 @@ case $basic_machine in
        ppcle-* | powerpclittle-*)
                basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
                ;;
+       ppc64)  basic_machine=powerpc64-unknown
+               ;;
+       ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
+       ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+               basic_machine=powerpc64le-unknown
+               ;;
+       ppc64le-* | powerpc64little-*)
+               basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+               ;;
        ps2)
                basic_machine=i386-ibm
                ;;
+       pw32)
+               basic_machine=i586-unknown
+               os=-pw32
+               ;;
        rom68k)
                basic_machine=m68k-rom68k
                os=-coff
@@ -757,6 +865,10 @@ case $basic_machine in
                basic_machine=t3e-cray
                os=-unicos
                ;;
+       tic54x | c54x*)
+               basic_machine=tic54x-unknown
+               os=-coff
+               ;;
        tx39)
                basic_machine=mipstx39-unknown
                ;;
@@ -809,6 +921,10 @@ case $basic_machine in
                basic_machine=hppa1.1-winbond
                os=-proelf
                ;;
+       windows32)
+               basic_machine=i386-pc
+               os=-windows32-msvcrt
+               ;;
        xmp)
                basic_machine=xmp-cray
                os=-unicos
@@ -852,13 +968,20 @@ case $basic_machine in
        vax)
                basic_machine=vax-dec
                ;;
+       pdp10)
+               # there are many clones, so DEC is not a safe bet
+               basic_machine=pdp10-unknown
+               ;;
        pdp11)
                basic_machine=pdp11-dec
                ;;
        we32k)
                basic_machine=we32k-att
                ;;
-       sparc | sparcv9)
+       sh3 | sh4 | sh3eb | sh4eb)
+               basic_machine=sh-unknown
+               ;;
+       sparc | sparcv9 | sparcv9b)
                basic_machine=sparc-sun
                ;;
         cydra)
@@ -880,6 +1003,9 @@ case $basic_machine in
                basic_machine=c4x-none
                os=-coff
                ;;
+       *-unknown)
+               # Make sure to match an already-canonicalized machine name.
+               ;;
        *)
                echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
                exit 1
@@ -936,15 +1062,18 @@ case $os in
              | -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* | -uxpv* | -beos* | -mpeix* | -udk* \
              | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
-             | -openstep* | -oskit*)
+             | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+             | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+             | -os2* | -vos*)
        # Remember, each alternative MUST END IN *, to match a version number.
                ;;
        -qnx*)
                case $basic_machine in
-                   x86-* | i[34567]86-*)
+                   x86-* | i*86-*)
                        ;;
                    *)
                        os=-nto$os
@@ -1000,7 +1129,7 @@ case $os in
        -ns2 )
                os=-nextstep2
                ;;
-       -nsk)
+       -nsk*)
                os=-nsk
                ;;
        # Preserve the version number of sinix5.
@@ -1037,7 +1166,7 @@ case $os in
        -xenix)
                os=-xenix
                ;;
-        -*mint | -*MiNT)
+        -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
                os=-mint
                ;;
        -none)
@@ -1071,6 +1200,9 @@ case $basic_machine in
        arm*-semi)
                os=-aout
                ;;
+       pdp10-*)
+               os=-tops20
+               ;;
         pdp11-*)
                os=-none
                ;;
@@ -1179,7 +1311,7 @@ case $basic_machine in
        *-masscomp)
                os=-rtu
                ;;
-       f301-fujitsu)
+       f30[01]-fujitsu | f700-fujitsu)
                os=-uxpv
                ;;
        *-rom68k)
@@ -1257,12 +1389,23 @@ case $basic_machine in
                        -mpw* | -macos*)
                                vendor=apple
                                ;;
-                       -*mint | -*MiNT)
+                       -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
                                vendor=atari
                                ;;
+                       -vos*)
+                               vendor=stratus
+                               ;;
                esac
                basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
                ;;
 esac
 
 echo $basic_machine$os
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
index c739560df816d8911f3640c09ec9c14916f7ee96..204389ca3a861932617968b9a55f4354ac5affed 100755 (executable)
--- a/configure
+++ b/configure
 #! /bin/sh
-
 # Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13 
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
+# Generated by Autoconf 2.52.
 #
+# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+# Free Software Foundation, Inc.
 # This configure script is free software; the Free Software Foundation
 # gives unlimited permission to copy, distribute and modify it.
 
-# Defaults:
-ac_help=
+# Find the correct PATH separator.  Usually this is `:', but
+# DJGPP uses `;' like DOS.
+if test "X${PATH_SEPARATOR+set}" != Xset; then
+  UNAME=${UNAME-`uname 2>/dev/null`}
+  case X$UNAME in
+    *-DOS) lt_cv_sys_path_separator=';' ;;
+    *)     lt_cv_sys_path_separator=':' ;;
+  esac
+  PATH_SEPARATOR=$lt_cv_sys_path_separator
+fi
+
+# Check that we are running under the correct shell.
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+case X$ECHO in
+X*--fallback-echo)
+  # Remove one level of quotation (which was required for Make).
+  ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','`
+  ;;
+esac
+
+echo=${ECHO-echo}
+if test "X$1" = X--no-reexec; then
+  # Discard the --no-reexec flag, and continue.
+  shift
+elif test "X$1" = X--fallback-echo; then
+  # Avoid inline document here, it may be left over
+  :
+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
+  # Yippee, $echo works!
+  :
+else
+  # Restart under the correct shell.
+  exec $SHELL "$0" --no-reexec ${1+"$@"}
+fi
+
+if test "X$1" = X--fallback-echo; then
+  # used as fallback echo
+  shift
+  cat <<EOF
+
+EOF
+  exit 0
+fi
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+
+if test -z "$ECHO"; then
+if test "X${echo_test_string+set}" != Xset; then
+# find a string as large as possible, as long as the shell can cope with it
+  for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
+    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
+    if (echo_test_string="`eval $cmd`") 2>/dev/null &&
+       echo_test_string="`eval $cmd`" &&
+       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null
+    then
+      break
+    fi
+  done
+fi
+
+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
+   echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
+   test "X$echo_testing_string" = "X$echo_test_string"; then
+  :
+else
+  # The Solaris, AIX, and Digital Unix default echo programs unquote
+  # backslashes.  This makes it impossible to quote backslashes using
+  #   echo "$something" | sed 's/\\/\\\\/g'
+  #
+  # So, first we look for a working echo in the user's PATH.
+
+  IFS="${IFS=  }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR
+  for dir in $PATH /usr/ucb; do
+    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
+       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
+       echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
+       test "X$echo_testing_string" = "X$echo_test_string"; then
+      echo="$dir/echo"
+      break
+    fi
+  done
+  IFS="$save_ifs"
+
+  if test "X$echo" = Xecho; then
+    # We didn't find a better echo, so look for alternatives.
+    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
+       echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
+       test "X$echo_testing_string" = "X$echo_test_string"; then
+      # This shell has a builtin print -r that does the trick.
+      echo='print -r'
+    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
+        test "X$CONFIG_SHELL" != X/bin/ksh; then
+      # If we have ksh, try running configure again with it.
+      ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
+      export ORIGINAL_CONFIG_SHELL
+      CONFIG_SHELL=/bin/ksh
+      export CONFIG_SHELL
+      exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"}
+    else
+      # Try using printf.
+      echo='printf %s\n'
+      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
+        echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
+        test "X$echo_testing_string" = "X$echo_test_string"; then
+       # Cool, printf works
+       :
+      elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
+          test "X$echo_testing_string" = 'X\t' &&
+          echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+          test "X$echo_testing_string" = "X$echo_test_string"; then
+       CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL
+       export CONFIG_SHELL
+       SHELL="$CONFIG_SHELL"
+       export SHELL
+       echo="$CONFIG_SHELL $0 --fallback-echo"
+      elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` &&
+          test "X$echo_testing_string" = 'X\t' &&
+          echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
+          test "X$echo_testing_string" = "X$echo_test_string"; then
+       echo="$CONFIG_SHELL $0 --fallback-echo"
+      else
+       # maybe with a smaller string...
+       prev=:
+
+       for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
+         if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null
+         then
+           break
+         fi
+         prev="$cmd"
+       done
+
+       if test "$prev" != 'sed 50q "$0"'; then
+         echo_test_string=`eval $prev`
+         export echo_test_string
+         exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"}
+       else
+         # Oops.  We lost completely, so just stick with echo.
+         echo=echo
+       fi
+      fi
+    fi
+  fi
+fi
+fi
+
+# Copy echo and quote the copy suitably for passing to libtool from
+# the Makefile, instead of quoting the original, which is used later.
+ECHO=$echo
+if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then
+   ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo"
+fi
+
+# 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
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+
+# Name of the executable.
+as_me=`echo "$0" |sed 's,.*[\\/],,'`
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+as_executable_p="test -f"
+
+# Support unset when possible.
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+# NLS nuisances.
+$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; }
+$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; }
+$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; }
+$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; }
+$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; }
+$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; }
+$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; }
+$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; }
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
 ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
-  --enable-shared[=PKGS]  build shared libraries [default=yes]"
-ac_help="$ac_help
-  --enable-static[=PKGS]  build static libraries [default=yes]"
-ac_help="$ac_help
-  --enable-fast-install[=PKGS]  optimize for fast installation [default=yes]"
-ac_help="$ac_help
-  --with-gnu-ld           assume the C compiler uses GNU ld [default=no]"
-ac_help="$ac_help
-  --disable-libtool-lock  avoid locking (might break parallel builds)"
-ac_help="$ac_help
-  --enable-desrpc         try to use secure RPC in login (default if found)"
-ac_help="$ac_help
-  --enable-shadowgrp      enable shadow group support [default=yes]"
-ac_help="$ac_help
-  --with-libcrack         try to use libcrack (default if found)"
-ac_help="$ac_help
-  --with-libcrypt         try to use libcrypt (default if found)"
-ac_help="$ac_help
-  --with-libopie          use libopie for OPIE support"
-ac_help="$ac_help
-  --with-libpam           use libpam for PAM support"
-ac_help="$ac_help
-  --with-libskey          use libskey for S/Key support"
-ac_help="$ac_help
-  --with-libtcfs          use libtcfs for TCFS support"
-ac_help="$ac_help
-  --disable-nls           do not use Native Language Support"
-ac_help="$ac_help
-  --with-included-gettext use the GNU gettext library included here"
-ac_help="$ac_help
-  --with-catgets          use catgets functions if available"
+cross_compiling=no
+subdirs=
+MFLAGS= MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete.  It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+ac_unique_file="lib/dialchk.c"
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#if HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#if STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# if HAVE_STDLIB_H
+#  include <stdlib.h>
+# endif
+#endif
+#if HAVE_STRING_H
+# if !STDC_HEADERS && HAVE_MEMORY_H
+#  include <memory.h>
+# endif
+# include <string.h>
+#endif
+#if HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#else
+# if HAVE_STDINT_H
+#  include <stdint.h>
+# endif
+#endif
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
 
 # Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
 # The variables have the same names as the options, with
 # dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
+cache_file=/dev/null
 exec_prefix=NONE
-host=NONE
 no_create=
-nonopt=NONE
 no_recursion=
 prefix=NONE
 program_prefix=NONE
@@ -61,13 +314,18 @@ program_transform_name=s,x,x,
 silent=
 site=
 srcdir=
-target=NONE
 verbose=
 x_includes=NONE
 x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
 bindir='${exec_prefix}/bin'
 sbindir='${exec_prefix}/sbin'
-libexecdir='${exec_prefix}/libexec'
+libexecdir='${exec_prefix}/lib'
 datadir='${prefix}/share'
 sysconfdir='${prefix}/etc'
 sharedstatedir='${prefix}/com'
@@ -78,17 +336,16 @@ oldincludedir='/usr/include'
 infodir='${prefix}/share/info'
 mandir='${prefix}/share/man'
 
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
+# Identity of this package.
+PACKAGE_NAME=
+PACKAGE_TARNAME=
+PACKAGE_VERSION=
+PACKAGE_STRING=
+PACKAGE_BUGREPORT=
 
 ac_prev=
 for ac_option
 do
-
   # If the previous option needs an argument, assign it.
   if test -n "$ac_prev"; then
     eval "$ac_prev=\$ac_option"
@@ -96,59 +353,59 @@ do
     continue
   fi
 
-  case "$ac_option" in
-  -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-  *) ac_optarg= ;;
-  esac
+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
 
   # Accept the important Cygnus configure options, so we can diagnose typos.
 
-  case "$ac_option" in
+  case $ac_option in
 
   -bindir | --bindir | --bindi | --bind | --bin | --bi)
     ac_prev=bindir ;;
   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir="$ac_optarg" ;;
+    bindir=$ac_optarg ;;
 
   -build | --build | --buil | --bui | --bu)
-    ac_prev=build ;;
+    ac_prev=build_alias ;;
   -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build="$ac_optarg" ;;
+    build_alias=$ac_optarg ;;
 
   -cache-file | --cache-file | --cache-fil | --cache-fi \
   | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
     ac_prev=cache_file ;;
   -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
   | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file="$ac_optarg" ;;
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
 
   -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
     ac_prev=datadir ;;
   -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
   | --da=*)
-    datadir="$ac_optarg" ;;
+    datadir=$ac_optarg ;;
 
   -disable-* | --disable-*)
-    ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
-    fi
-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
-    eval "enable_${ac_feature}=no" ;;
+    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" ;;
 
   -enable-* | --enable-*)
-    ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
-    fi
-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
-    case "$ac_option" in
-      *=*) ;;
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
       *) ac_optarg=yes ;;
     esac
-    eval "enable_${ac_feature}='$ac_optarg'" ;;
+    eval "enable_$ac_feature='$ac_optarg'" ;;
 
   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
@@ -157,95 +414,47 @@ do
   -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
   | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
   | --exec=* | --exe=* | --ex=*)
-    exec_prefix="$ac_optarg" ;;
+    exec_prefix=$ac_optarg ;;
 
   -gas | --gas | --ga | --g)
     # Obsolete; use --with-gas.
     with_gas=yes ;;
 
-  -help | --help | --hel | --he)
-    # 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 << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
-  --cache-file=FILE       cache test results in FILE
-  --help                  print this message
-  --no-create             do not create output files
-  --quiet, --silent       do not print \`checking...' messages
-  --version               print the version of autoconf that created configure
-Directory and file names:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          [same as prefix]
-  --bindir=DIR            user executables in DIR [EPREFIX/bin]
-  --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin]
-  --libexecdir=DIR        program executables in DIR [EPREFIX/libexec]
-  --datadir=DIR           read-only architecture-independent data in DIR
-                          [PREFIX/share]
-  --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data in DIR
-                          [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var]
-  --libdir=DIR            object code libraries in DIR [EPREFIX/lib]
-  --includedir=DIR        C header files in DIR [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include]
-  --infodir=DIR           info documentation in DIR [PREFIX/info]
-  --mandir=DIR            man documentation in DIR [PREFIX/man]
-  --srcdir=DIR            find the sources in DIR [configure dir or ..]
-  --program-prefix=PREFIX prepend PREFIX to installed program names
-  --program-suffix=SUFFIX append SUFFIX to installed program names
-  --program-transform-name=PROGRAM
-                          run sed PROGRAM on installed program names
-EOF
-    cat << EOF
-Host type:
-  --build=BUILD           configure for building on BUILD [BUILD=HOST]
-  --host=HOST             configure for HOST [guessed]
-  --target=TARGET         configure for TARGET [TARGET=HOST]
-Features and packages:
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --x-includes=DIR        X include files are in DIR
-  --x-libraries=DIR       X library files are in DIR
-EOF
-    if test -n "$ac_help"; then
-      echo "--enable and --with options recognized:$ac_help"
-    fi
-    exit 0 ;;
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
 
   -host | --host | --hos | --ho)
-    ac_prev=host ;;
+    ac_prev=host_alias ;;
   -host=* | --host=* | --hos=* | --ho=*)
-    host="$ac_optarg" ;;
+    host_alias=$ac_optarg ;;
 
   -includedir | --includedir | --includedi | --included | --include \
   | --includ | --inclu | --incl | --inc)
     ac_prev=includedir ;;
   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
   | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir="$ac_optarg" ;;
+    includedir=$ac_optarg ;;
 
   -infodir | --infodir | --infodi | --infod | --info | --inf)
     ac_prev=infodir ;;
   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir="$ac_optarg" ;;
+    infodir=$ac_optarg ;;
 
   -libdir | --libdir | --libdi | --libd)
     ac_prev=libdir ;;
   -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir="$ac_optarg" ;;
+    libdir=$ac_optarg ;;
 
   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
   | --libexe | --libex | --libe)
     ac_prev=libexecdir ;;
   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
   | --libexe=* | --libex=* | --libe=*)
-    libexecdir="$ac_optarg" ;;
+    libexecdir=$ac_optarg ;;
 
   -localstatedir | --localstatedir | --localstatedi | --localstated \
   | --localstate | --localstat | --localsta | --localst \
@@ -254,12 +463,12 @@ EOF
   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
   | --localstate=* | --localstat=* | --localsta=* | --localst=* \
   | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
-    localstatedir="$ac_optarg" ;;
+    localstatedir=$ac_optarg ;;
 
   -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
     ac_prev=mandir ;;
   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir="$ac_optarg" ;;
+    mandir=$ac_optarg ;;
 
   -nfp | --nfp | --nf)
     # Obsolete; use --without-fp.
@@ -280,26 +489,26 @@ EOF
   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir="$ac_optarg" ;;
+    oldincludedir=$ac_optarg ;;
 
   -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
     ac_prev=prefix ;;
   -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix="$ac_optarg" ;;
+    prefix=$ac_optarg ;;
 
   -program-prefix | --program-prefix | --program-prefi | --program-pref \
   | --program-pre | --program-pr | --program-p)
     ac_prev=program_prefix ;;
   -program-prefix=* | --program-prefix=* | --program-prefi=* \
   | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix="$ac_optarg" ;;
+    program_prefix=$ac_optarg ;;
 
   -program-suffix | --program-suffix | --program-suffi | --program-suff \
   | --program-suf | --program-su | --program-s)
     ac_prev=program_suffix ;;
   -program-suffix=* | --program-suffix=* | --program-suffi=* \
   | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix="$ac_optarg" ;;
+    program_suffix=$ac_optarg ;;
 
   -program-transform-name | --program-transform-name \
   | --program-transform-nam | --program-transform-na \
@@ -316,7 +525,7 @@ EOF
   | --program-transfo=* | --program-transf=* \
   | --program-trans=* | --program-tran=* \
   | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name="$ac_optarg" ;;
+    program_transform_name=$ac_optarg ;;
 
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
   | -silent | --silent | --silen | --sile | --sil)
@@ -326,7 +535,7 @@ EOF
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
   | --sbi=* | --sb=*)
-    sbindir="$ac_optarg" ;;
+    sbindir=$ac_optarg ;;
 
   -sharedstatedir | --sharedstatedir | --sharedstatedi \
   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
@@ -337,58 +546,57 @@ EOF
   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
   | --sha=* | --sh=*)
-    sharedstatedir="$ac_optarg" ;;
+    sharedstatedir=$ac_optarg ;;
 
   -site | --site | --sit)
     ac_prev=site ;;
   -site=* | --site=* | --sit=*)
-    site="$ac_optarg" ;;
+    site=$ac_optarg ;;
 
   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
     ac_prev=srcdir ;;
   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir="$ac_optarg" ;;
+    srcdir=$ac_optarg ;;
 
   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
   | --syscon | --sysco | --sysc | --sys | --sy)
     ac_prev=sysconfdir ;;
   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir="$ac_optarg" ;;
+    sysconfdir=$ac_optarg ;;
 
   -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target ;;
+    ac_prev=target_alias ;;
   -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target="$ac_optarg" ;;
+    target_alias=$ac_optarg ;;
 
   -v | -verbose | --verbose | --verbos | --verbo | --verb)
     verbose=yes ;;
 
-  -version | --version | --versio | --versi | --vers)
-    echo "configure generated by autoconf version 2.13"
-    exit 0 ;;
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
 
   -with-* | --with-*)
-    ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
-    fi
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
     ac_package=`echo $ac_package| sed 's/-/_/g'`
-    case "$ac_option" in
-      *=*) ;;
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
       *) ac_optarg=yes ;;
     esac
-    eval "with_${ac_package}='$ac_optarg'" ;;
+    eval "with_$ac_package='$ac_optarg'" ;;
 
   -without-* | --without-*)
-    ac_package=`echo $ac_option|sed -e 's/-*without-//'`
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
-    fi
-    ac_package=`echo $ac_package| sed 's/-/_/g'`
-    eval "with_${ac_package}=no" ;;
+    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" ;;
 
   --x)
     # Obsolete; use --with-x.
@@ -399,101 +607,98 @@ EOF
     ac_prev=x_includes ;;
   -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
   | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes="$ac_optarg" ;;
+    x_includes=$ac_optarg ;;
 
   -x-libraries | --x-libraries | --x-librarie | --x-librari \
   | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
     ac_prev=x_libraries ;;
   -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries="$ac_optarg" ;;
+    x_libraries=$ac_optarg ;;
 
-  -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
     ;;
 
+  *=*)
+    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; }; }
+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+    eval "$ac_envvar='$ac_optarg'"
+    export $ac_envvar ;;
+
   *)
-    if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
-      echo "configure: WARNING: $ac_option: invalid host type" 1>&2
-    fi
-    if test "x$nonopt" != xNONE; then
-      { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
-    fi
-    nonopt="$ac_option"
+    # FIXME: should be removed in autoconf 3.0.
+    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}
     ;;
 
   esac
 done
 
 if test -n "$ac_prev"; then
-  { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
-  exec 6>/dev/null
-else
-  exec 6>&1
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
 fi
-exec 5>./config.log
-
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
 
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
 do
-  case "$ac_arg" in
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c) ;;
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
-  *" "*|*"     "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
-  ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-  *) ac_configure_args="$ac_configure_args $ac_arg" ;;
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+    *)  { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
   esac
 done
 
-# Support of DJGPP port of bash.
-if test -n "$COMSPEC$ComSpec"; then ac_x=-x; else ac_x=-f; fi
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+              localstatedir libdir includedir oldincludedir infodir mandir
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* ) ;;
+    *)  { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
 
-# NLS nuisances.
-# Only set these to C if already set.  These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: should be removed in autoconf 3.0.
+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
+fi
 
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
 
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=lib/dialchk.c
+test "$silent" = yes && exec 6>/dev/null
 
 # Find the source files, if location was not specified.
 if test -z "$srcdir"; then
   ac_srcdir_defaulted=yes
   # Try the directory containing this script, then its parent.
   ac_prog=$0
-  ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
+  ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'`
   test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
   srcdir=$ac_confdir
   if test ! -r $srcdir/$ac_unique_file; then
@@ -504,13 +709,333 @@ else
 fi
 if test ! -r $srcdir/$ac_unique_file; then
   if test "$ac_srcdir_defaulted" = yes; then
-    { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
+    { echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2
+   { (exit 1); exit 1; }; }
   else
-    { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
+    { echo "$as_me: error: cannot find sources in $srcdir" >&2
+   { (exit 1); exit 1; }; }
   fi
 fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CPP_set=${CPP+set}
+ac_env_CPP_value=$CPP
+ac_cv_env_CPP_set=${CPP+set}
+ac_cv_env_CPP_value=$CPP
+
+#
+# Report the --help message.
+#
+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 <<EOF
+\`configure' configures this package to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --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
+      --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
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+EOF
+
+  cat <<EOF
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+                          [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+                          [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+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]
+  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
+  --libdir=DIR           object code libraries [EPREFIX/lib]
+  --includedir=DIR       C header files [PREFIX/include]
+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
+  --infodir=DIR          info documentation [PREFIX/info]
+  --mandir=DIR           man documentation [PREFIX/man]
+EOF
+
+  cat <<\EOF
+
+Program names:
+  --program-prefix=PREFIX            prepend PREFIX to installed program names
+  --program-suffix=SUFFIX            append SUFFIX to installed program names
+  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
+
+System types:
+  --build=BUILD     configure for building on BUILD [guessed]
+  --host=HOST       build programs to run on HOST [BUILD]
+EOF
+fi
+
+if test -n "$ac_init_help"; then
+
+  cat <<\EOF
+
+Optional Features:
+  --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 builds
+  --enable-dependency-tracking  Do not reject slow dependency extractors
+  --enable-shared=PKGS  build shared libraries default=no
+  --enable-static=PKGS  build static libraries default=yes
+  --enable-fast-install=PKGS  optimize for fast installation default=yes
+  --disable-libtool-lock  avoid locking (might break parallel builds)
+  --enable-desrpc         try to use secure RPC in login (default if found)
+  --enable-shadowgrp      enable shadow group support default=yes
+  --disable-nls           do not use Native Language Support
+
+Optional Packages:
+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+  --with-gnu-ld           assume the C compiler uses GNU ld default=no
+  --with-pic              try to use only PIC/non-PIC objects default=use both
+  --with-libcrack         try to use libcrack (default if found)
+  --with-libcrypt         try to use libcrypt (default if found)
+  --with-libopie          use libopie for OPIE support
+  --with-libpam           use libpam for PAM support
+  --with-libskey          use libskey for S/Key support
+  --with-libtcfs          use libtcfs for TCFS support
+  --with-libiconv-prefix=DIR  search for libiconv in DIR/include and DIR/lib
+  --with-included-gettext use the GNU gettext library included here
+
+Some influential environment variables:
+  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>
+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
+              headers in a nonstandard directory <include dir>
+  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.
+
+EOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  ac_popdir=`pwd`
+  for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue
+    cd $ac_subdir
+    # A "../" for each directory in /$ac_subdir.
+    ac_dots=`echo $ac_subdir |
+             sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
+
+    case $srcdir in
+    .) # No --srcdir option.  We are building in place.
+      ac_sub_srcdir=$srcdir ;;
+    [\\/]* | ?:[\\/]* ) # Absolute path.
+      ac_sub_srcdir=$srcdir/$ac_subdir ;;
+    *) # Relative path.
+      ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;;
+    esac
+
+    # Check for guested configure; otherwise get Cygnus style configure.
+    if test -f $ac_sub_srcdir/configure.gnu; then
+      echo
+      $SHELL $ac_sub_srcdir/configure.gnu  --help=recursive
+    elif test -f $ac_sub_srcdir/configure; then
+      echo
+      $SHELL $ac_sub_srcdir/configure  --help=recursive
+    elif test -f $ac_sub_srcdir/configure.ac ||
+           test -f $ac_sub_srcdir/configure.in; then
+      echo
+      $ac_configure --help
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2
+    fi
+    cd $ac_popdir
+  done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+  cat <<\EOF
+configure
+generated by GNU Autoconf 2.52
+
+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+EOF
+  exit 0
+fi
+exec 5>config.log
+cat >&5 <<EOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by $as_me, which was
+generated by GNU Autoconf 2.52.  Invocation command line was
+
+  $ $0 $@
+
+EOF
+{
+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`
+hostinfo               = `(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`
+
+PATH = $PATH
+
+_ASUNAME
+} >&5
+
+cat >&5 <<EOF
+## ------------ ##
+## Core tests.  ##
+## ------------ ##
+
+EOF
 
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Also quote any args containing shell meta-characters.
+ac_configure_args=
+ac_sep=
+for ac_arg
+do
+  case $ac_arg in
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c) ;;
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+  *" "*|*"     "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+    ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"`
+    ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+    ac_sep=" " ;;
+  *) ac_configure_args="$ac_configure_args$ac_sep$ac_arg"
+     ac_sep=" " ;;
+  esac
+  # Get rid of the leading space.
+done
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  echo >&5
+  echo "## ----------------- ##" >&5
+  echo "## Cache variables.  ##" >&5
+  echo "## ----------------- ##" >&5
+  echo >&5
+  # The following way of writing the cache mishandles newlines in values,
+{
+  (set) 2>&1 |
+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      sed -n \
+        "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+      ;;
+    *)
+      sed -n \
+        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} >&5
+  sed "/^$/d" confdefs.h >conftest.log
+  if test -s conftest.log; then
+    echo >&5
+    echo "## ------------ ##" >&5
+    echo "## confdefs.h.  ##" >&5
+    echo "## ------------ ##" >&5
+    echo >&5
+    cat conftest.log >&5
+  fi
+  (echo; echo) >&5
+  test "$ac_signal" != 0 &&
+    echo "$as_me: caught signal $ac_signal" >&5
+  echo "$as_me: exit $exit_status" >&5
+  rm -rf conftest* confdefs* core core.* *.core 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
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Let the site file select an alternate cache file if it wants to.
 # Prefer explicitly selected file to automatically selected ones.
 if test -z "$CONFIG_SITE"; then
   if test "x$prefix" != xNONE; then
@@ -521,40 +1046,107 @@ if test -z "$CONFIG_SITE"; then
 fi
 for ac_site_file in $CONFIG_SITE; do
   if test -r "$ac_site_file"; then
-    echo "loading site script $ac_site_file"
+    { echo "$as_me:1049: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    cat "$ac_site_file" >&5
     . "$ac_site_file"
   fi
 done
 
 if test -r "$cache_file"; then
-  echo "loading cache $cache_file"
-  . $cache_file
+  # 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:1060: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . $cache_file;;
+      *)                      . ./$cache_file;;
+    esac
+  fi
 else
-  echo "creating cache $cache_file"
-  > $cache_file
+  { echo "$as_me:1068: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+               sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+  eval ac_new_val="\$ac_env_${ac_var}_value"
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:1084: 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;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:1088: 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;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+        { echo "$as_me:1094: 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:1096:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+        { echo "$as_me:1098:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+        ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.  It doesn't matter if
+  # we pass some twice (in addition to the command line arguments).
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *" "*|*"   "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"`
+      ac_configure_args="$ac_configure_args '$ac_arg'"
+      ;;
+    *) ac_configure_args="$ac_configure_args $ac_var=$ac_new_val"
+       ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:1117: 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:1119: 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; }; }
 fi
 
 ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
 ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
-  # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
-  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
-    ac_n= ac_c='
-' ac_t='       '
-  else
-    ac_n=-n ac_c= ac_t=
-  fi
+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
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='     ' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)      ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+echo "#! $SHELL" >conftest.sh
+echo  "exit 0"   >>conftest.sh
+chmod +x conftest.sh
+if { (echo "$as_me:1139: PATH=\".;.\"; conftest.sh") >&5
+  (PATH=".;."; conftest.sh) 2>&5
+  ac_status=$?
+  echo "$as_me:1142: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  ac_path_separator=';'
 else
-  ac_n= ac_c='\c' ac_t=
+  ac_path_separator=:
 fi
-
+PATH_SEPARATOR="$ac_path_separator"
+rm -f conftest.sh
 
 ac_aux_dir=
 for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
@@ -566,14 +1158,20 @@ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
     ac_aux_dir=$ac_dir
     ac_install_sh="$ac_aux_dir/install.sh -c"
     break
+  elif test -f $ac_dir/shtool; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
   fi
 done
 if test -z "$ac_aux_dir"; then
-  { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
+  { { echo "$as_me:1168: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
+   { (exit 1); exit 1; }; }
 fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
 
 # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
@@ -582,31 +1180,39 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
 # 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"
 # ./install, which can be erroneously created by make from ./install.sh.
-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:591: checking for a BSD compatible install" >&5
+echo "$as_me:1188: 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 eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+if test "${ac_cv_path_install+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-    IFS="${IFS=        }"; ac_save_IFS="$IFS"; IFS=":"
+    ac_save_IFS=$IFS; IFS=$ac_path_separator
   for ac_dir in $PATH; do
+    IFS=$ac_save_IFS
     # Account for people who put trailing slashes in PATH elements.
-    case "$ac_dir/" in
-    /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
+    case $ac_dir/ in
+    / | ./ | .// | /cC/* \
+    | /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* \
+    | /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
-        if test $ac_x $ac_dir/$ac_prog; then
+        if $as_executable_p "$ac_dir/$ac_prog"; then
          if test $ac_prog = install &&
-            grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
+            grep dspmsg "$ac_dir/$ac_prog" >/dev/null 2>&1; then
            # AIX install.  It has an incompatible calling convention.
            :
+         elif test $ac_prog = install &&
+           grep pwplus "$ac_dir/$ac_prog" >/dev/null 2>&1; then
+           # program-specific install script used by HP pwplus--don't use.
+           :
          else
            ac_cv_path_install="$ac_dir/$ac_prog -c"
            break 2
@@ -616,416 +1222,871 @@ else
       ;;
     esac
   done
-  IFS="$ac_save_IFS"
 
 fi
   if test "${ac_cv_path_install+set}" = set; then
-    INSTALL="$ac_cv_path_install"
+    INSTALL=$ac_cv_path_install
   else
     # As a last resort, use the slow shell script.  We don't cache a
     # path for INSTALL within a source directory, because that will
     # break other packages using the cache if that directory is
     # removed, or if the path is relative.
-    INSTALL="$ac_install_sh"
+    INSTALL=$ac_install_sh
   fi
 fi
-echo "$ac_t""$INSTALL" 1>&6
+echo "$as_me:1237: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 # It thinks the first close brace ends the variable substitution.
 test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
 
-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
-echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:644: checking whether build environment is sane" >&5
+echo "$as_me:1248: checking whether build environment is sane" >&5
+echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
 # Just in case
 sleep 1
-echo timestamp > conftestfile
+echo timestamp > conftest.file
 # 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 conftestfile 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 conftestfile`
+      set X `ls -t $srcdir/configure conftest.file`
    fi
-   if test "$*" != "X $srcdir/configure conftestfile" \
-      && test "$*" != "X conftestfile $srcdir/configure"; then
+   rm -f conftest.file
+   if test "$*" != "X $srcdir/configure conftest.file" \
+      && test "$*" != "X conftest.file $srcdir/configure"; then
 
       # If neither matched, then we have a broken ls.  This can happen
       # 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 "configure: error: ls -t appears to fail.  Make sure there is not a broken
-alias in your environment" 1>&2; exit 1; }
+      { { echo "$as_me:1272: 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; }; }
    fi
 
-   test "$2" = conftestfile
+   test "$2" = conftest.file
    )
 then
    # Ok.
    :
 else
-   { echo "configure: error: newly created file is older than distributed files!
-Check your system clock" 1>&2; exit 1; }
-fi
-rm -f conftest*
-echo "$ac_t""yes" 1>&6
-if test "$program_transform_name" = s,x,x,; then
-  program_transform_name=
-else
-  # Double any \ or $.  echo might interpret backslashes.
-  cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
-  program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
-  rm -f conftestsed
+   { { echo "$as_me:1285: 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; }; }
 fi
+echo "$as_me:1291: result: yes" >&5
+echo "${ECHO_T}yes" >&6
 test "$program_prefix" != NONE &&
-  program_transform_name="s,^,${program_prefix},; $program_transform_name"
+  program_transform_name="s,^,$program_prefix,;$program_transform_name"
 # Use a double $ so make ignores it.
 test "$program_suffix" != NONE &&
-  program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
+  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $.  echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`CDPATH=:; cd $ac_aux_dir && pwd`
+
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  am_backtick='`'
+  { echo "$as_me:1316: WARNING: ${am_backtick}missing' script is too old or missing" >&5
+echo "$as_me: WARNING: ${am_backtick}missing' script is too old or missing" >&2;}
+fi
+
+for ac_prog in awk mawk gawk nawk
+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:1324: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AWK+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$AWK"; then
+  ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_AWK="$ac_prog"
+echo "$as_me:1339: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+  echo "$as_me:1347: result: $AWK" >&5
+echo "${ECHO_T}$AWK" >&6
+else
+  echo "$as_me:1350: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
 
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
+  test -n "$AWK" && break
+done
 
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:701: checking whether ${MAKE-make} sets \${MAKE}" >&5
-set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:1357: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftestmake <<\EOF
+  cat >conftest.make <<\EOF
 all:
        @echo 'ac_maketemp="${MAKE}"'
 EOF
 # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
 if test -n "$ac_maketemp"; then
   eval ac_cv_prog_make_${ac_make}_set=yes
 else
   eval ac_cv_prog_make_${ac_make}_set=no
 fi
-rm -f conftestmake
+rm -f conftest.make
 fi
 if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+  echo "$as_me:1377: result: yes" >&5
+echo "${ECHO_T}yes" >&6
   SET_MAKE=
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:1381: result: no" >&5
+echo "${ECHO_T}no" >&6
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
+# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given.
+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='\'
+fi
 
-PACKAGE=shadow
+if test "x$enable_dependency_tracking" != xno; then
+  AMDEP_TRUE=
+  AMDEP_FALSE='#'
+else
+  AMDEP_TRUE='#'
+  AMDEP_FALSE=
+fi
 
-VERSION=20001016
+rm -f .deps 2>/dev/null
+mkdir .deps 2>/dev/null
+if test -d .deps; then
+  DEPDIR=.deps
+else
+  # MS-DOS does not allow filenames that begin with a dot.
+  DEPDIR=_deps
+fi
+rmdir .deps 2>/dev/null
 
-if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
-  { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; }
+# test to see if srcdir already configured
+if test "`CDPATH=:; cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  { { echo "$as_me:1417: error: source directory already configured; run \"make distclean\" there first" >&5
+echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
+   { (exit 1); exit 1; }; }
 fi
-cat >> confdefs.h <<EOF
+
+# Define the identity of the package.
+PACKAGE=shadow
+VERSION=4.0.0
+
+cat >>confdefs.h <<EOF
 #define PACKAGE "$PACKAGE"
 EOF
 
-cat >> confdefs.h <<EOF
+cat >>confdefs.h <<EOF
 #define VERSION "$VERSION"
 EOF
 
+# Autoconf 2.50 wants to disallow AM_ names.  We explicitly allow
+# the ones we care about.
 
+# Autoconf 2.50 always computes EXEEXT.  However we need to be
+# compatible with 2.13, for now.  So we always define EXEEXT, but we
+# don't compute it.
 
-missing_dir=`cd $ac_aux_dir && pwd`
-echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
-echo "configure:748: checking for working aclocal" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf.  Sigh.
-if (aclocal --version) < /dev/null > /dev/null 2>&1; then
-   ACLOCAL=aclocal
-   echo "$ac_t""found" 1>&6
-else
-   ACLOCAL="$missing_dir/missing aclocal"
-   echo "$ac_t""missing" 1>&6
-fi
+# Similar for OBJEXT -- only we only use OBJEXT if the user actually
+# requests that it be used.  This is a bit dumb.
+: ${OBJEXT=o}
 
-echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:761: checking for working autoconf" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf.  Sigh.
-if (autoconf --version) < /dev/null > /dev/null 2>&1; then
-   AUTOCONF=autoconf
-   echo "$ac_t""found" 1>&6
-else
-   AUTOCONF="$missing_dir/missing autoconf"
-   echo "$ac_t""missing" 1>&6
-fi
+# Some tools Automake needs.
 
-echo $ac_n "checking for working automake""... $ac_c" 1>&6
-echo "configure:774: checking for working automake" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf.  Sigh.
-if (automake --version) < /dev/null > /dev/null 2>&1; then
-   AUTOMAKE=automake
-   echo "$ac_t""found" 1>&6
-else
-   AUTOMAKE="$missing_dir/missing automake"
-   echo "$ac_t""missing" 1>&6
-fi
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal"}
 
-echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:787: checking for working autoheader" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf.  Sigh.
-if (autoheader --version) < /dev/null > /dev/null 2>&1; then
-   AUTOHEADER=autoheader
-   echo "$ac_t""found" 1>&6
-else
-   AUTOHEADER="$missing_dir/missing autoheader"
-   echo "$ac_t""missing" 1>&6
-fi
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
 
-echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:800: checking for working makeinfo" >&5
-# Run test in a subshell; some versions of sh will print an error if
-# an executable is not found, even if stderr is redirected.
-# Redirect stdin to placate older versions of autoconf.  Sigh.
-if (makeinfo --version) < /dev/null > /dev/null 2>&1; then
-   MAKEINFO=makeinfo
-   echo "$ac_t""found" 1>&6
-else
-   MAKEINFO="$missing_dir/missing makeinfo"
-   echo "$ac_t""missing" 1>&6
-fi
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake"}
 
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
+AMTAR=${AMTAR-"${am_missing_run}tar"}
 
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
 
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+
+# We need awk for the "check" target.  The system "awk" is bad on
+# some platforms.
+
+                                                   ac_config_headers="$ac_config_headers config.h"
 
 test "$prefix" = "NONE" && prefix="/usr"
 test "$prefix" = "/usr" && exec_prefix=""
 test "$CFLAGS" = "" && CFLAGS="-O2 -Wall"
 test "$LDFLAGS" = "" && LDFLAGS="-s"
 
-# Extract the first word of "gcc", so it can be a program name with args.
+# Check whether --enable-shared or --disable-shared was given.
+if test "${enable_shared+set}" = set; then
+  enableval="$enable_shared"
+  p=${PACKAGE-default}
+case $enableval in
+yes) enable_shared=yes ;;
+no) enable_shared=no ;;
+*)
+  enable_shared=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_shared=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac
+else
+  enable_shared=no
+fi;
+# Check whether --enable-static or --disable-static was given.
+if test "${enable_static+set}" = set; then
+  enableval="$enable_static"
+  p=${PACKAGE-default}
+case $enableval in
+yes) enable_static=yes ;;
+no) enable_static=no ;;
+*)
+  enable_static=no
+  # Look at the argument we got.  We use all the common list separators.
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
+  for pkg in $enableval; do
+    if test "X$pkg" = "X$p"; then
+      enable_static=yes
+    fi
+  done
+  IFS="$ac_save_ifs"
+  ;;
+esac
+else
+  enable_static=yes
+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:1526: 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.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="${ac_tool_prefix}gcc"
+echo "$as_me:1541: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1549: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1552: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:825: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:1561: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="gcc"
+echo "$as_me:1576: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1584: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1587: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
+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:1600: 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.
 else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_prog_CC="gcc"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="${ac_tool_prefix}cc"
+echo "$as_me:1615: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
+  echo "$as_me:1623: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1626: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:1635: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="cc"
+echo "$as_me:1650: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1658: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1661: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
 else
-  echo "$ac_t""no" 1>&6
+  CC="$ac_cv_prog_CC"
 fi
 
+fi
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:855: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:1674: 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.
 else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
   ac_prog_rejected=no
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
-        ac_prog_rejected=yes
-       continue
-      fi
-      ac_cv_prog_CC="cc"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
+  ac_prog_rejected=yes
+  continue
+fi
+ac_cv_prog_CC="cc"
+echo "$as_me:1694: found $ac_dir/$ac_word" >&5
+break
+done
+
 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 $# -gt 0; then
+  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
-    set dummy "$ac_dir/$ac_word" "$@"
+    set dummy "$ac_dir/$ac_word" ${1+"$@"}
     shift
     ac_cv_prog_CC="$@"
   fi
 fi
 fi
 fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
+  echo "$as_me:1716: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:1719: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-  if test -z "$CC"; then
-    case "`uname -s`" in
-    *win32* | *WIN32*)
-      # Extract the first word of "cl", so it can be a program name with args.
-set dummy cl; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:906: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl
+  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:1730: 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.
 else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_prog_CC="cl"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+echo "$as_me:1745: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
+  echo "$as_me:1753: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
 else
-  echo "$ac_t""no" 1>&6
-fi
- ;;
-    esac
-  fi
-  test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
+  echo "$as_me:1756: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:938: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl
+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:1769: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="$ac_prog"
+echo "$as_me:1784: found $ac_dir/$ac_word" >&5
+break
+done
 
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1792: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1795: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
 
-cat > conftest.$ac_ext << EOF
+  test -n "$ac_ct_CC" && break
+done
 
-#line 949 "configure"
+  CC=$ac_ct_CC
+fi
+
+fi
+
+test -z "$CC" && { { echo "$as_me:1807: error: no acceptable cc found in \$PATH" >&5
+echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:1812:" \
+     "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:1815: \"$ac_compiler --version </dev/null >&5\"") >&5
+  (eval $ac_compiler --version </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1818: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:1820: \"$ac_compiler -v </dev/null >&5\"") >&5
+  (eval $ac_compiler -v </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1823: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:1825: \"$ac_compiler -V </dev/null >&5\"") >&5
+  (eval $ac_compiler -V </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1828: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 1832 "configure"
 #include "confdefs.h"
 
-main(){return(0);}
-EOF
-if { (eval echo configure:954: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  ac_cv_prog_cc_works=yes
-  # If we can't run a trivial program, we are probably using a cross compiler.
-  if (./conftest; exit) 2>/dev/null; then
-    ac_cv_prog_cc_cross=no
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe"
+# 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:1848: checking for C compiler default output" >&5
+echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:1851: \"$ac_link_default\"") >&5
+  (eval $ac_link_default) 2>&5
+  ac_status=$?
+  echo "$as_me:1854: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Find the output, starting from the most likely.  This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+for ac_file in `ls a.exe conftest.exe 2>/dev/null;
+                ls a.out conftest 2>/dev/null;
+                ls a.* conftest.* 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb ) ;;
+    a.out ) # We found the default executable, but exeext='' is most
+            # certainly right.
+            break;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+          # FIXME: I believe we export ac_cv_exeext for Libtool --akim.
+          export ac_cv_exeext
+          break;;
+    * ) break;;
+  esac
+done
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:1877: error: C compiler cannot create executables" >&5
+echo "$as_me: error: C compiler cannot create executables" >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:1883: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:1888: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (eval echo "$as_me:1894: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1897: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
   else
-    ac_cv_prog_cc_cross=yes
+    if test "$cross_compiling" = maybe; then
+       cross_compiling=yes
+    else
+       { { echo "$as_me:1904: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
   fi
+fi
+echo "$as_me:1912: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:1919: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:1921: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:1924: checking for executable suffix" >&5
+echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
+if { (eval echo "$as_me:1926: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:1929: \$? = $ac_status" >&5
+  (exit $ac_status); }; 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
+# `rm'.
+for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+          export ac_cv_exeext
+          break;;
+    * ) break;;
+  esac
+done
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  ac_cv_prog_cc_works=no
+  { { echo "$as_me:1945: error: cannot compute EXEEXT: cannot compile and link" >&5
+echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
+   { (exit 1); exit 1; }; }
 fi
-rm -fr conftest*
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
 
-echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
-if test $ac_cv_prog_cc_works = no; then
-  { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
-fi
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:980: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
-echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
-cross_compiling=$ac_cv_prog_cc_cross
+rm -f conftest$ac_cv_exeext
+echo "$as_me:1951: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
 
-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:985: checking whether we are using GNU C" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.c <<EOF
-#ifdef __GNUC__
-  yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:994: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-  ac_cv_prog_gcc=yes
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:1957: checking for object suffix" >&5
+echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_cv_prog_gcc=no
-fi
-fi
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1963 "configure"
+#include "confdefs.h"
 
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
+int
+main ()
+{
 
-if test $ac_cv_prog_gcc = yes; then
-  GCC=yes
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:1975: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1978: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
 else
-  GCC=
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:1990: error: cannot compute OBJEXT: cannot compile" >&5
+echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
+   { (exit 1); exit 1; }; }
 fi
 
-ac_test_CFLAGS="${CFLAGS+set}"
-ac_save_CFLAGS="$CFLAGS"
-CFLAGS=
-echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1013: checking whether ${CC-cc} accepts -g" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:1997: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:2001: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2007 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:2022: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2025: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:2028: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2031: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_compiler_gnu=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:2043: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:2049: 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
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2055 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:2067: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2070: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:2073: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2076: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_prog_cc_g=yes
 else
-  ac_cv_prog_cc_g=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_prog_cc_g=no
 fi
-rm -f conftest*
-
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
+echo "$as_me:2086: 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"
+  CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
     CFLAGS="-g -O2"
@@ -1039,91 +2100,330 @@ else
     CFLAGS=
   fi
 fi
-
-echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
-echo "configure:1045: checking for POSIXized ISC" >&5
-if test -d /etc/conf/kconfig.d &&
-  grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
-then
-  echo "$ac_t""yes" 1>&6
-  ISC=yes # If later tests want to check for ISC.
-  cat >> confdefs.h <<\EOF
-#define _POSIX_SOURCE 1
-EOF
-
-  if test "$GCC" = yes; then
-    CC="$CC -posix"
-  else
-    CC="$CC -Xp"
-  fi
+# Some people use a C++ compiler to compile C.  Since we use `exit',
+# in C++ we need to declare it.  In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+  choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:2113: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2116: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:2119: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2122: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  for ac_declaration in \
+   ''\
+   '#include <stdlib.h>' \
+   'extern "C" void std::exit (int) throw (); using std::exit;' \
+   'extern "C" void std::exit (int); using std::exit;' \
+   'extern "C" void exit (int) throw ();' \
+   'extern "C" void exit (int);' \
+   'void exit (int);'
+do
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2134 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:2147: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2150: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:2153: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2156: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+continue
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2166 "configure"
+#include "confdefs.h"
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:2178: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2181: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:2184: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2187: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
 else
-  echo "$ac_t""no" 1>&6
-  ISC=
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+  echo '#ifdef __cplusplus' >>confdefs.h
+  echo $ac_declaration      >>confdefs.h
+  echo '#endif'             >>confdefs.h
 fi
 
-echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:1066: checking whether ln -s works" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
 else
-  rm -f conftestdata
-if ln -s X conftestdata 2>/dev/null
-then
-  rm -f conftestdata
-  ac_cv_prog_LN_S="ln -s"
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+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_config_commands="$ac_config_commands default-1"
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+doit:
+       @echo done
+END
+# If we don't find an include directive, just comment out the code.
+echo "$as_me:2222: checking for style of include used by $am_make" >&5
+echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
+am__include='#'
+am__quote=
+_am_result=none
+# 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 | fgrep -v 'ing directory'`" = "done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
+fi
+# 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
+fi
+
+echo "$as_me:2249: result: $_am_result" >&5
+echo "${ECHO_T}$_am_result" >&6
+rm -f confinc confmf
+
+depcc="$CC"   am_compiler_list=
+
+echo "$as_me:2255: checking dependency style of $depcc" >&5
+echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  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
+
+  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
+    # 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.
+    echo '#include "conftest.h"' > conftest.c
+    echo 'int i;' > conftest.h
+    echo "${am__include} ${am__quote}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=conftest.c object=conftest.o \
+       depfile=conftest.Po tmpdepfile=conftest.TPo \
+       $SHELL ./depcomp $depcc -c conftest.c -o conftest.o >/dev/null 2>&1 &&
+       grep conftest.h conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      am_cv_CC_dependencies_compiler_type=$depmode
+      break
+    fi
+  done
+
+  cd ..
+  rm -rf conftest.dir
 else
-  ac_cv_prog_LN_S=ln
+  am_cv_CC_dependencies_compiler_type=none
 fi
+
 fi
-LN_S="$ac_cv_prog_LN_S"
-if test "$ac_cv_prog_LN_S" = "ln -s"; then
-  echo "$ac_t""yes" 1>&6
+echo "$as_me:2317: 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"
+
+        echo "$as_me:2321: checking for strerror in -lcposix" >&5
+echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6
+if test "${ac_cv_lib_cposix_strerror+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  echo "$ac_t""no" 1>&6
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcposix  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 2329 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char strerror ();
+int
+main ()
+{
+strerror ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:2348: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:2351: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:2354: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2357: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_cposix_strerror=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_cposix_strerror=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:2368: result: $ac_cv_lib_cposix_strerror" >&5
+echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6
+if test $ac_cv_lib_cposix_strerror = yes; then
+  LIBS="$LIBS -lcposix"
+fi
+
+echo "$as_me:2374: 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:2378: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+  echo "$as_me:2381: result: no, using $LN_S" >&5
+echo "${ECHO_T}no, using $LN_S" >&6
 fi
 
 for ac_prog in 'bison -y' byacc
 do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
+  # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1091: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2389: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_YACC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test -n "$YACC"; then
   ac_cv_prog_YACC="$YACC" # Let the user override the test.
 else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_prog_YACC="$ac_prog"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_YACC="$ac_prog"
+echo "$as_me:2404: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
-YACC="$ac_cv_prog_YACC"
+YACC=$ac_cv_prog_YACC
 if test -n "$YACC"; then
-  echo "$ac_t""$YACC" 1>&6
+  echo "$as_me:2412: result: $YACC" >&5
+echo "${ECHO_T}$YACC" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2415: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-test -n "$YACC" && break
+  test -n "$YACC" && break
 done
 test -n "$YACC" || YACC="yacc"
 
-
-
-
-echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:1125: checking for ${CC-cc} option to accept ANSI C" >&5
-if eval "test \"`echo '$''{'am_cv_prog_cc_stdc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2423: checking for ${CC-cc} option to accept ANSI C" >&5
+echo $ECHO_N "checking for ${CC-cc} option to accept ANSI C... $ECHO_C" >&6
+if test "${am_cv_prog_cc_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   am_cv_prog_cc_stdc=no
 ac_save_CC="$CC"
@@ -1131,13 +2431,14 @@ ac_save_CC="$CC"
 # breaks some systems' header files.
 # AIX                  -qlanglvl=ansi
 # Ultrix and OSF/1     -std1
-# HP-UX                        -Aa -D_HPUX_SOURCE
+# HP-UX 10.20 and later        -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
 # SVR4                 -Xc -D__EXTENSIONS__
-for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  cat > conftest.$ac_ext <<EOF
-#line 1141 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2441 "configure"
 #include "confdefs.h"
 #include <stdarg.h>
 #include <stdio.h>
@@ -1168,170 +2469,319 @@ int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, i
 int argc;
 char **argv;
 
-int main() {
+int
+main ()
+{
 
 return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
 
-; return 0; }
-EOF
-if { (eval echo configure:1178: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:2483: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:2486: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:2489: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2492: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   am_cv_prog_cc_stdc="$ac_arg"; break
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 done
 CC="$ac_save_CC"
 
 fi
 
 if test -z "$am_cv_prog_cc_stdc"; then
-  echo "$ac_t""none needed" 1>&6
+  echo "$as_me:2506: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6
 else
-  echo "$ac_t""$am_cv_prog_cc_stdc" 1>&6
+  echo "$as_me:2509: result: $am_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$am_cv_prog_cc_stdc" >&6
 fi
 case "x$am_cv_prog_cc_stdc" in
   x|xno) ;;
   *) CC="$CC $am_cv_prog_cc_stdc" ;;
 esac
 
-echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1202: checking how to run the C preprocessor" >&5
+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:2522: 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 eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-    # This must be in double quotes, not single quotes, because CPP may get
-  # substituted into the Makefile and "${CC-cc}" will confuse make.
-  CPP="${CC-cc} -E"
+  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.
   # On the NeXT, cc -E runs the code through the compiler's parser,
-  # not just through cpp.
-  cat > conftest.$ac_ext <<EOF
-#line 1217 "configure"
+  # not just through cpp. "Syntax error" is here to catch this case.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2543 "configure"
 #include "confdefs.h"
 #include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1223: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
+                     Syntax error
+_ACEOF
+if { (eval echo "$as_me:2548: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2554: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
   :
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CPP="${CC-cc} -E -traditional-cpp"
-  cat > conftest.$ac_ext <<EOF
-#line 1234 "configure"
+  # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether non-existent headers
+  # can be detected and how.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2577 "configure"
 #include "confdefs.h"
-#include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1240: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  :
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:2581: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2587: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  # Broken: success on invalid input.
+continue
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CPP="${CC-cc} -nologo -E"
-  cat > conftest.$ac_ext <<EOF
-#line 1251 "configure"
+  # 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:2624: 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.
+  # 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
+#line 2634 "configure"
 #include "confdefs.h"
 #include <assert.h>
-Syntax Error
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1257: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
+                     Syntax error
+_ACEOF
+if { (eval echo "$as_me:2639: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2645: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
   :
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CPP=/lib/cpp
-fi
-rm -f conftest*
+  # Broken: fails on valid input.
+continue
 fi
-rm -f conftest*
-fi
-rm -f conftest*
-  ac_cv_prog_CPP="$CPP"
+rm -f conftest.err conftest.$ac_ext
+
+  # OK, works on sane cases.  Now check whether non-existent headers
+  # can be detected and how.
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2668 "configure"
+#include "confdefs.h"
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:2672: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2678: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
 fi
-  CPP="$ac_cv_prog_CPP"
+if test -z "$ac_cpp_err"; then
+  # Broken: success on invalid input.
+continue
 else
-  ac_cv_prog_CPP="$CPP"
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  # Passes both tests.
+ac_preproc_ok=:
+break
 fi
-echo "$ac_t""$CPP" 1>&6
+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:2706: error: C preprocessor \"$CPP\" fails sanity check" >&5
+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check" >&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 $ac_n "checking for function prototypes""... $ac_c" 1>&6
-echo "configure:1284: checking for function prototypes" >&5
+echo "$as_me:2717: checking for function prototypes" >&5
+echo $ECHO_N "checking for function prototypes... $ECHO_C" >&6
 if test "$am_cv_prog_cc_stdc" != no; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+  echo "$as_me:2720: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+cat >>confdefs.h <<\EOF
 #define PROTOTYPES 1
 EOF
 
   U= ANSI2KNR=
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2729: result: no" >&5
+echo "${ECHO_T}no" >&6
   U=_ ANSI2KNR=./ansi2knr
-  # Ensure some checks needed by ansi2knr itself.
-  echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1297: checking for ANSI C header files" >&5
-if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+fi
+# Ensure some checks needed by ansi2knr itself.
+echo "$as_me:2734: 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 <<EOF
-#line 1302 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2740 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
 #include <string.h>
 #include <float.h>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1310: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
+
+_ACEOF
+if { (eval echo "$as_me:2748: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2754: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
   ac_cv_header_stdc=yes
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
   ac_cv_header_stdc=no
 fi
-rm -f conftest*
+rm -f conftest.err 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 <<EOF
-#line 1327 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2776 "configure"
 #include "confdefs.h"
 #include <string.h>
-EOF
+
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "memchr" >/dev/null 2>&1; then
   :
 else
-  rm -rf conftest*
   ac_cv_header_stdc=no
 fi
 rm -f conftest*
@@ -1340,16 +2790,16 @@ 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 <<EOF
-#line 1345 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2794 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
-EOF
+
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "free" >/dev/null 2>&1; then
   :
 else
-  rm -rf conftest*
   ac_cv_header_stdc=no
 fi
 rm -f conftest*
 
 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
+  if test "$cross_compiling" = yes; then
   :
 else
-  cat > conftest.$ac_ext <<EOF
-#line 1366 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2815 "configure"
 #include "confdefs.h"
 #include <ctype.h>
-#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#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)) exit(2);
-exit (0); }
+#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
 
-EOF
-if { (eval echo configure:1377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+#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))
+      exit(2);
+  exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:2841: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:2844: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:2846: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:2849: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   :
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_header_stdc=no
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_stdc=no
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 fi
 fi
-
-echo "$ac_t""$ac_cv_header_stdc" 1>&6
+echo "$as_me:2862: 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 <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define STDC_HEADERS 1
 EOF
 
 fi
 
-  for ac_hdr in string.h
+for ac_header in string.h
 do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1404: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 1409 "configure"
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:2875: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 2881 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1414: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:2885: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:2891: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
+  ac_cpp_err=yes
 fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
 else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
 fi
-
-# Check whether --enable-shared or --disable-shared was given.
-if test "${enable_shared+set}" = set; then
-  enableval="$enable_shared"
-  p=${PACKAGE-default}
-case "$enableval" in
-yes) enable_shared=yes ;;
-no) enable_shared=no ;;
-*)
-  enable_shared=no
-  # Look at the argument we got.  We use all the common list separators.
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
-  for pkg in $enableval; do
-    if test "X$pkg" = "X$p"; then
-      enable_shared=yes
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-esac
-else
-  enable_shared=yes
+rm -f conftest.err conftest.$ac_ext
 fi
+echo "$as_me:2910: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
 
-# Check whether --enable-static or --disable-static was given.
-if test "${enable_static+set}" = set; then
-  enableval="$enable_static"
-  p=${PACKAGE-default}
-case "$enableval" in
-yes) enable_static=yes ;;
-no) enable_static=no ;;
-*)
-  enable_static=no
-  # Look at the argument we got.  We use all the common list separators.
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
-  for pkg in $enableval; do
-    if test "X$pkg" = "X$p"; then
-      enable_static=yes
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-esac
-else
-  enable_static=yes
 fi
+done
 
 # Check whether --enable-fast-install or --disable-fast-install was given.
 if test "${enable_fast_install+set}" = set; then
   enableval="$enable_fast_install"
   p=${PACKAGE-default}
-case "$enableval" in
+case $enableval in
 yes) enable_fast_install=yes ;;
 no) enable_fast_install=no ;;
 *)
@@ -1505,81 +2938,68 @@ no) enable_fast_install=no ;;
 esac
 else
   enable_fast_install=yes
-fi
-
-
+fi;
 # Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
-fi
-
-echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:1518: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
-  case $nonopt in
-  NONE)
-    if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
-    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
-    fi ;;
-  *) host_alias=$nonopt ;;
-  esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:1539: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
-  case $nonopt in
-  NONE) build_alias=$host_alias ;;
-  *) build_alias=$nonopt ;;
-  esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-# Extract the first word of "ranlib", so it can be a program name with args.
-set dummy ranlib; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1559: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test -n "$RANLIB"; then
-  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
-else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_prog_RANLIB="ranlib"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":"
-fi
-fi
-RANLIB="$ac_cv_prog_RANLIB"
-if test -n "$RANLIB"; then
-  echo "$ac_t""$RANLIB" 1>&6
-else
-  echo "$ac_t""no" 1>&6
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:2944: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+echo "$as_me:2948: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+  ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+  { { echo "$as_me:2957: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+  { { echo "$as_me:2961: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:2966: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+echo "$as_me:2973: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+  ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+  { { echo "$as_me:2982: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:2987: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+# Find the correct PATH separator.  Usually this is `:', but
+# DJGPP uses `;' like DOS.
+if test "X${PATH_SEPARATOR+set}" != Xset; then
+  UNAME=${UNAME-`uname 2>/dev/null`}
+  case X$UNAME in
+    *-DOS) lt_cv_sys_path_separator=';' ;;
+    *)     lt_cv_sys_path_separator=':' ;;
+  esac
+  PATH_SEPARATOR=$lt_cv_sys_path_separator
 fi
 
 # Check whether --with-gnu-ld or --without-gnu-ld was given.
@@ -1588,15 +3008,20 @@ if test "${with_gnu_ld+set}" = set; then
   test "$withval" = no || with_gnu_ld=yes
 else
   with_gnu_ld=no
-fi
-
+fi;
 ac_prog=ld
-if test "$ac_cv_prog_gcc" = yes; then
+if test "$GCC" = yes; then
   # Check if gcc -print-prog-name=ld gives a path.
-  echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:1598: checking for ld used by GCC" >&5
-  ac_prog=`($CC -print-prog-name=ld) 2>&5`
-  case "$ac_prog" in
+  echo "$as_me:3015: checking for ld used by GCC" >&5
+echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6
+  case $host in
+  *-*-mingw*)
+    # gcc leaves a trailing carriage return which upsets mingw
+    ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
+  *)
+    ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
+  esac
+  case $ac_prog in
     # Accept absolute paths.
     [\\/]* | [A-Za-z]:[\\/]*)
       re_direlt='/[^/][^/]*/\.\./'
@@ -1617,25 +3042,25 @@ echo "configure:1598: checking for ld used by GCC" >&5
     ;;
   esac
 elif test "$with_gnu_ld" = yes; then
-  echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:1622: checking for GNU ld" >&5
+  echo "$as_me:3045: checking for GNU ld" >&5
+echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6
 else
-  echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:1625: checking for non-GNU ld" >&5
+  echo "$as_me:3048: checking for non-GNU ld" >&5
+echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6
 fi
-if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+if test "${lt_cv_path_LD+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test -z "$LD"; then
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
     test -z "$ac_dir" && ac_dir=.
     if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-      ac_cv_path_LD="$ac_dir/$ac_prog"
+      lt_cv_path_LD="$ac_dir/$ac_prog"
       # Check to see if the program is GNU ld.  I'd rather use --version,
       # but apparently some GNU ld's only accept -v.
       # Break only if it was the GNU/non-GNU ld that we prefer.
-      if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
+      if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
        test "$with_gnu_ld" != no && break
       else
        test "$with_gnu_ld" != yes && break
@@ -1644,455 +3069,4097 @@ else
   done
   IFS="$ac_save_ifs"
 else
-  ac_cv_path_LD="$LD" # Let the user override the test with a path.
+  lt_cv_path_LD="$LD" # Let the user override the test with a path.
 fi
 fi
 
-LD="$ac_cv_path_LD"
+LD="$lt_cv_path_LD"
 if test -n "$LD"; then
-  echo "$ac_t""$LD" 1>&6
+  echo "$as_me:3078: result: $LD" >&5
+echo "${ECHO_T}$LD" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:3081: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
-test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
-echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:1660: checking if the linker ($LD) is GNU ld" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+test -z "$LD" && { { echo "$as_me:3084: 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:3087: 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 "${lt_cv_prog_gnu_ld+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   # I'd rather use --version here, but apparently some GNU ld's only accept -v.
 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  ac_cv_prog_gnu_ld=yes
+  lt_cv_prog_gnu_ld=yes
 else
-  ac_cv_prog_gnu_ld=no
+  lt_cv_prog_gnu_ld=no
 fi
 fi
+echo "$as_me:3099: result: $lt_cv_prog_gnu_ld" >&5
+echo "${ECHO_T}$lt_cv_prog_gnu_ld" >&6
+with_gnu_ld=$lt_cv_prog_gnu_ld
 
-echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6
-
+echo "$as_me:3103: checking for $LD option to reload object files" >&5
+echo $ECHO_N "checking for $LD option to reload object files... $ECHO_C" >&6
+if test "${lt_cv_ld_reload_flag+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_ld_reload_flag='-r'
+fi
+echo "$as_me:3110: result: $lt_cv_ld_reload_flag" >&5
+echo "${ECHO_T}$lt_cv_ld_reload_flag" >&6
+reload_flag=$lt_cv_ld_reload_flag
+test -n "$reload_flag" && reload_flag=" $reload_flag"
 
-echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:1676: checking for BSD-compatible nm" >&5
-if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:3115: checking for BSD-compatible nm" >&5
+echo $ECHO_N "checking for BSD-compatible nm... $ECHO_C" >&6
+if test "${lt_cv_path_NM+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test -n "$NM"; then
   # Let the user override the test.
-  ac_cv_path_NM="$NM"
+  lt_cv_path_NM="$NM"
 else
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
+  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do
     test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then
+    tmp_nm=$ac_dir/${ac_tool_prefix}nm
+    if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then
       # Check to see if the nm accepts a BSD-compat flag.
       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
       #   nm: unknown option "B" ignored
-      if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-       ac_cv_path_NM="$ac_dir/nm -B"
+      # Tru64's nm complains that /dev/null is an invalid object file
+      if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then
+       lt_cv_path_NM="$tmp_nm -B"
        break
-      elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-       ac_cv_path_NM="$ac_dir/nm -p"
+      elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
+       lt_cv_path_NM="$tmp_nm -p"
        break
       else
-       ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but
+       lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
        continue # so that we can try to find one that supports BSD flags
       fi
     fi
   done
   IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
-fi
-fi
-
-NM="$ac_cv_path_NM"
-echo "$ac_t""$NM" 1>&6
-
-
-case "$target" in
-NONE) lt_target="$host" ;;
-*) lt_target="$target" ;;
-esac
+  test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm
+fi
+fi
+
+NM="$lt_cv_path_NM"
+echo "$as_me:3151: result: $NM" >&5
+echo "${ECHO_T}$NM" >&6
+
+echo "$as_me:3154: checking how to recognise dependant libraries" >&5
+echo $ECHO_N "checking how to recognise dependant libraries... $ECHO_C" >&6
+if test "${lt_cv_deplibs_check_method+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  lt_cv_file_magic_cmd='$MAGIC_CMD'
+lt_cv_file_magic_test_file=
+lt_cv_deplibs_check_method='unknown'
+# Need to set the preceding variable on all platforms that support
+# interlibrary dependencies.
+# 'none' -- dependencies not supported.
+# `unknown' -- same as none, but documents that we really don't know.
+# 'pass_all' -- all dependencies passed with no checks.
+# 'test_compile' -- check by making test program.
+# 'file_magic [[regex]]' -- check by looking for files in library path
+# which responds to the $file_magic_cmd with a given egrep regex.
+# If you have `file' or equivalent on your system and you're not sure
+# whether `pass_all' will *always* work, you probably want this one.
+
+case $host_os in
+aix4* | aix5*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 
-# Check for any special flags to pass to ltconfig.
-#
-# the following will cause an existing older ltconfig to fail, so
-# we ignore this at the expense of the cache file... Checking this 
-# will just take longer ... bummer!
-#libtool_flags="--cache-file=$cache_file"
-#
-test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
-test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
-test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install"
-test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
-test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
+beos*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 
+bsdi4*)
+  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
+  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  lt_cv_file_magic_test_file=/shlib/libc.so
+  ;;
 
-# Check whether --enable-libtool-lock or --disable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then
-  enableval="$enable_libtool_lock"
-  :
-fi
+cygwin* | mingw* | pw32*)
+  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  ;;
 
-test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock"
-test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
+darwin* | rhapsody*)
+  lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library'
+  lt_cv_file_magic_cmd='/usr/bin/file -L'
+  case "$host_os" in
+  rhapsody* | darwin1.[012])
+    lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1`
+    ;;
+  *) # Darwin 1.3 on
+    lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib'
+    ;;
+  esac
+  ;;
 
-# Some flags need to be propagated to the compiler or linker for good
-# libtool support.
-case "$lt_target" in
-*-*-irix6*)
-  # Find out which ABI we are using.
-  echo '#line 1745 "configure"' > conftest.$ac_ext
-  if { (eval echo configure:1746: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-    case "`/usr/bin/file conftest.o`" in
-    *32-bit*)
-      LD="${LD-ld} -32"
-      ;;
-    *N32*)
-      LD="${LD-ld} -n32"
-      ;;
-    *64-bit*)
-      LD="${LD-ld} -64"
+freebsd*)
+  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+    case $host_cpu in
+    i*86 )
+      # Not sure whether the presence of OpenBSD here was a mistake.
+      # Let's accept both of them until this is cleared up.
+      lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library'
+      lt_cv_file_magic_cmd=/usr/bin/file
+      lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
       ;;
     esac
+  else
+    lt_cv_deplibs_check_method=pass_all
   fi
-  rm -rf conftest*
   ;;
 
-*-*-sco3.2v5*)
-  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
-  SAVE_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -belf"
-  echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:1767: checking whether the C compiler needs -belf" >&5
-if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 1772 "configure"
-#include "confdefs.h"
-
-int main() {
+gnu*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
 
-; return 0; }
-EOF
-if { (eval echo configure:1779: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  lt_cv_cc_needs_belf=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  lt_cv_cc_needs_belf=no
-fi
-rm -f conftest*
-fi
+hpux10.20*|hpux11*)
+  lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
+  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_test_file=/usr/lib/libc.sl
+  ;;
 
-echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
-  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
-    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
-    CFLAGS="$SAVE_CFLAGS"
-  fi
+irix5* | irix6*)
+  case $host_os in
+  irix5*)
+    # this will be overridden with pass_all, but let us keep it just in case
+    lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
+    ;;
+  *)
+    case $LD in
+    *-32|*"-32 ") libmagic=32-bit;;
+    *-n32|*"-n32 ") libmagic=N32;;
+    *-64|*"-64 ") libmagic=64-bit;;
+    *) libmagic=never-match;;
+    esac
+    # this will be overridden with pass_all, but let us keep it just in case
+    lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
+    ;;
+  esac
+  lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*`
+  lt_cv_deplibs_check_method=pass_all
   ;;
 
+# This must be Linux ELF.
+linux-gnu*)
+  case $host_cpu in
+  alpha* | hppa* | i*86 | powerpc* | sparc* | ia64* )
+    lt_cv_deplibs_check_method=pass_all ;;
+  *)
+    # glibc up to 2.1.1 does not perform some relocations on ARM
+    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;;
+  esac
+  lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
+  ;;
 
+netbsd*)
+  if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
+    lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$'
+  else
+    lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$'
+  fi
+  ;;
+
+newos6*)
+  lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
+  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_test_file=/usr/lib/libnls.so
+  ;;
+
+openbsd*)
+  lt_cv_file_magic_cmd=/usr/bin/file
+  lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
+  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
+  else
+    lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library'
+  fi
+  ;;
+
+osf3* | osf4* | osf5*)
+  # this will be overridden with pass_all, but let us keep it just in case
+  lt_cv_deplibs_check_method='file_magic COFF format alpha shared library'
+  lt_cv_file_magic_test_file=/shlib/libc.so
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+sco3.2v5*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+solaris*)
+  lt_cv_deplibs_check_method=pass_all
+  lt_cv_file_magic_test_file=/lib/libc.so
+  ;;
+
+sysv5uw[78]* | sysv4*uw2*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+  case $host_vendor in
+  motorola)
+    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
+    lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
+    ;;
+  ncr)
+    lt_cv_deplibs_check_method=pass_all
+    ;;
+  sequent)
+    lt_cv_file_magic_cmd='/bin/file'
+    lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
+    ;;
+  sni)
+    lt_cv_file_magic_cmd='/bin/file'
+    lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
+    lt_cv_file_magic_test_file=/lib/libc.so
+    ;;
+  esac
+  ;;
 esac
 
+fi
+echo "$as_me:3332: result: $lt_cv_deplibs_check_method" >&5
+echo "${ECHO_T}$lt_cv_deplibs_check_method" >&6
+file_magic_cmd=$lt_cv_file_magic_cmd
+deplibs_check_method=$lt_cv_deplibs_check_method
 
-# Save cache, so that ltconfig can load it
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs.  It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
+# Check for command to grab the raw symbol name followed by C symbol from nm.
+echo "$as_me:3338: checking command to parse $NM output" >&5
+echo $ECHO_N "checking command to parse $NM output... $ECHO_C" >&6
+if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+# These are sane defaults that work on at least a few old systems.
+# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
+
+# Character class describing NM global symbol codes.
+symcode='[BCDEGRST]'
+
+# Regexp to match symbols that can be accessed directly from C.
+sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
+
+# Transform the above into a raw symbol and a C symbol.
+symxfrm='\1 \2\3 \3'
+
+# Transform an extracted symbol line into a proper C declaration
+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
+
+# Transform an extracted symbol line into symbol name and symbol address
+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
+
+# Define system-specific variables.
+case $host_os in
+aix*)
+  symcode='[BCDT]'
+  ;;
+cygwin* | mingw* | pw32*)
+  symcode='[ABCDGISTW]'
+  ;;
+hpux*) # Its linker distinguishes data from code symbols
+  lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
+  lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
+  ;;
+irix*)
+  symcode='[BCDEGRST]'
+  ;;
+solaris* | sysv5*)
+  symcode='[BDT]'
+  ;;
+sysv4)
+  symcode='[DFNSTU]'
+  ;;
+esac
+
+# Handle CRLF in mingw tool chain
+opt_cr=
+case $host_os in
+mingw*)
+  opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
+  ;;
+esac
+
+# If we're using GNU nm, then use its standard symbol codes.
+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
+  symcode='[ABCDGISTW]'
+fi
+
+# Try without a prefix undercore, then with it.
+for ac_symprfx in "" "_"; do
+
+  # Write the raw and C identifiers.
+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[        ]\($symcode$symcode*\)[         ][      ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
+
+  # Check to see that the pipe works correctly.
+  pipe_works=no
+  rm -f conftest*
+  cat > conftest.$ac_ext <<EOF
+#ifdef __cplusplus
+extern "C" {
+#endif
+char nm_test_var;
+void nm_test_func(){}
+#ifdef __cplusplus
+}
+#endif
+int main(){nm_test_var='a';nm_test_func();return(0);}
+EOF
+
+  if { (eval echo "$as_me:3419: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3422: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+    # Now try to grab the symbols.
+    nlist=conftest.nm
+    if { (eval echo "$as_me:3426: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\"") >&5
+  (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5
+  ac_status=$?
+  echo "$as_me:3429: \$? = $ac_status" >&5
+  (exit $ac_status); } && test -s "$nlist"; then
+      # Try sorting and uniquifying the output.
+      if sort "$nlist" | uniq > "$nlist"T; then
+       mv -f "$nlist"T "$nlist"
+      else
+       rm -f "$nlist"T
+      fi
+
+      # Make sure that we snagged all the symbols we need.
+      if egrep ' nm_test_var$' "$nlist" >/dev/null; then
+       if egrep ' nm_test_func$' "$nlist" >/dev/null; then
+         cat <<EOF > conftest.$ac_ext
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+EOF
+         # Now generate the symbol file.
+         eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
+
+         cat <<EOF >> conftest.$ac_ext
+#if defined (__STDC__) && __STDC__
+# define lt_ptr void *
+#else
+# define lt_ptr char *
+# define const
+#endif
+
+/* The mapping between symbol names and symbols. */
+const struct {
+  const char *name;
+  lt_ptr address;
+}
+lt_preloaded_symbols[] =
+{
+EOF
+         sed "s/^$symcode$symcode* \(.*\) \(.*\)$/  {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext
+         cat <<\EOF >> conftest.$ac_ext
+  {0, (lt_ptr) 0}
+};
+
+#ifdef __cplusplus
+}
+#endif
+EOF
+         # Now try linking the two files.
+         mv conftest.$ac_objext conftstm.$ac_objext
+         save_LIBS="$LIBS"
+         save_CFLAGS="$CFLAGS"
+         LIBS="conftstm.$ac_objext"
+         CFLAGS="$CFLAGS$no_builtin_flag"
+         if { (eval echo "$as_me:3481: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:3484: \$? = $ac_status" >&5
+  (exit $ac_status); } && test -s conftest; then
+           pipe_works=yes
+         fi
+         LIBS="$save_LIBS"
+         CFLAGS="$save_CFLAGS"
+       else
+         echo "cannot find nm_test_func in $nlist" >&5
+       fi
+      else
+       echo "cannot find nm_test_var in $nlist" >&5
+      fi
+    else
+      echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
+    fi
+  else
+    echo "$progname: failed program was:" >&5
+    cat conftest.$ac_ext >&5
+  fi
+  rm -f conftest* conftst*
+
+  # Do not use the global_symbol_pipe unless it works.
+  if test "$pipe_works" = yes; then
+    break
+  else
+    lt_cv_sys_global_symbol_pipe=
+  fi
+done
+
+fi
+
+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe"
+if test -z "$lt_cv_sys_global_symbol_pipe"; then
+  global_symbol_to_cdecl=
+  global_symbol_to_c_name_address=
+else
+  global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl"
+  global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address"
+fi
+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address";
+then
+  echo "$as_me:3525: result: failed" >&5
+echo "${ECHO_T}failed" >&6
+else
+  echo "$as_me:3528: result: ok" >&5
+echo "${ECHO_T}ok" >&6
+fi
+
+for ac_header in dlfcn.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:3535: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 3541 "configure"
+#include "confdefs.h"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:3545: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:3551: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:3570: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
+fi
+done
+
+# Only perform the check for file, if the check method requires it
+case $deplibs_check_method in
+file_magic*)
+  if test "$file_magic_cmd" = '$MAGIC_CMD'; then
+    echo "$as_me:3584: checking for ${ac_tool_prefix}file" >&5
+echo $ECHO_N "checking for ${ac_tool_prefix}file... $ECHO_C" >&6
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $MAGIC_CMD in
+  /*)
+  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  ;;
+  ?:/*)
+  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
+  ;;
+  *)
+  ac_save_MAGIC_CMD="$MAGIC_CMD"
+  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="/usr/bin:$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/${ac_tool_prefix}file; then
+      lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file"
+      if test -n "$file_magic_test_file"; then
+       case $deplibs_check_method in
+       "file_magic "*)
+         file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+         MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+         if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+           egrep "$file_magic_regex" > /dev/null; then
+           :
+         else
+           cat <<EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such.  This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem.  Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+EOF
+         fi ;;
+       esac
+      fi
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  MAGIC_CMD="$ac_save_MAGIC_CMD"
+  ;;
+esac
+fi
+
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+  echo "$as_me:3639: result: $MAGIC_CMD" >&5
+echo "${ECHO_T}$MAGIC_CMD" >&6
+else
+  echo "$as_me:3642: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+if test -z "$lt_cv_path_MAGIC_CMD"; then
+  if test -n "$ac_tool_prefix"; then
+    echo "$as_me:3648: checking for file" >&5
+echo $ECHO_N "checking for file... $ECHO_C" >&6
+if test "${lt_cv_path_MAGIC_CMD+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $MAGIC_CMD in
+  /*)
+  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path.
+  ;;
+  ?:/*)
+  lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path.
+  ;;
+  *)
+  ac_save_MAGIC_CMD="$MAGIC_CMD"
+  IFS="${IFS=   }"; ac_save_ifs="$IFS"; IFS=":"
+  ac_dummy="/usr/bin:$PATH"
+  for ac_dir in $ac_dummy; do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/file; then
+      lt_cv_path_MAGIC_CMD="$ac_dir/file"
+      if test -n "$file_magic_test_file"; then
+       case $deplibs_check_method in
+       "file_magic "*)
+         file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
+         MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+         if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
+           egrep "$file_magic_regex" > /dev/null; then
+           :
+         else
+           cat <<EOF 1>&2
+
+*** Warning: the command libtool uses to detect shared libraries,
+*** $file_magic_cmd, produces output that libtool cannot recognize.
+*** The result is that libtool may fail to recognize shared libraries
+*** as such.  This will affect the creation of libtool libraries that
+*** depend on shared libraries, but programs linked with such libtool
+*** libraries will work regardless of this problem.  Nevertheless, you
+*** may want to report the problem to your system manager and/or to
+*** bug-libtool@gnu.org
+
+EOF
+         fi ;;
+       esac
+      fi
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+  MAGIC_CMD="$ac_save_MAGIC_CMD"
+  ;;
+esac
+fi
+
+MAGIC_CMD="$lt_cv_path_MAGIC_CMD"
+if test -n "$MAGIC_CMD"; then
+  echo "$as_me:3703: result: $MAGIC_CMD" >&5
+echo "${ECHO_T}$MAGIC_CMD" >&6
+else
+  echo "$as_me:3706: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  else
+    MAGIC_CMD=:
+  fi
+fi
+
+  fi
+  ;;
+esac
+
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:3722: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+echo "$as_me:3737: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:3745: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:3748: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:3757: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_RANLIB="ranlib"
+echo "$as_me:3772: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:3781: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:3784: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
+
+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:3796: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$STRIP"; then
+  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+echo "$as_me:3811: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+  echo "$as_me:3819: result: $STRIP" >&5
+echo "${ECHO_T}$STRIP" >&6
+else
+  echo "$as_me:3822: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+  ac_ct_STRIP=$STRIP
+  # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+echo "$as_me:3831: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_STRIP"; then
+  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_STRIP="strip"
+echo "$as_me:3846: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+  echo "$as_me:3855: result: $ac_ct_STRIP" >&5
+echo "${ECHO_T}$ac_ct_STRIP" >&6
+else
+  echo "$as_me:3858: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  STRIP=$ac_ct_STRIP
+else
+  STRIP="$ac_cv_prog_STRIP"
+fi
+
+enable_dlopen=no
+enable_win32_dll=no
+
+# Check whether --enable-libtool-lock or --disable-libtool-lock was given.
+if test "${enable_libtool_lock+set}" = set; then
+  enableval="$enable_libtool_lock"
+
+fi;
+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
+
+# Some flags need to be propagated to the compiler or linker for good
+# libtool support.
+case $host in
+*-*-irix6*)
+  # Find out which ABI we are using.
+  echo '#line 3882 "configure"' > conftest.$ac_ext
+  if { (eval echo "$as_me:3883: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:3886: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+    case `/usr/bin/file conftest.$ac_objext` in
+    *32-bit*)
+      LD="${LD-ld} -32"
+      ;;
+    *N32*)
+      LD="${LD-ld} -n32"
+      ;;
+    *64-bit*)
+      LD="${LD-ld} -64"
+      ;;
+    esac
+  fi
+  rm -rf conftest*
+  ;;
+
+*-*-sco3.2v5*)
+  # On SCO OpenServer 5, we need -belf to get full-featured binaries.
+  SAVE_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -belf"
+  echo "$as_me:3907: checking whether the C compiler needs -belf" >&5
+echo $ECHO_N "checking whether the C compiler needs -belf... $ECHO_C" >&6
+if test "${lt_cv_cc_needs_belf+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+     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
+
+     cat >conftest.$ac_ext <<_ACEOF
+#line 3920 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:3932: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:3935: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:3938: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:3941: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_cc_needs_belf=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+lt_cv_cc_needs_belf=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+     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
+
+fi
+echo "$as_me:3957: result: $lt_cv_cc_needs_belf" >&5
+echo "${ECHO_T}$lt_cv_cc_needs_belf" >&6
+  if test x"$lt_cv_cc_needs_belf" != x"yes"; then
+    # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
+    CFLAGS="$SAVE_CFLAGS"
+  fi
+  ;;
+
+esac
+
+# Sed substitution that helps us do robust quoting.  It backslashifies
+# metacharacters that are still active within double-quoted strings.
+Xsed='sed -e s/^X//'
+sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
+
+# Same as above, but do not quote variable references.
+double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
+
+# Sed substitution to delay expansion of an escaped shell variable in a
+# double_quote_subst'ed string.
+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
+
+# Constants:
+rm="rm -f"
+
+# Global variables:
+default_ofile=libtool
+can_build_shared=yes
+
+# All known linkers require a `.a' archive for static linking (except M$VC,
+# which needs '.lib').
+libext=a
+ltmain="$ac_aux_dir/ltmain.sh"
+ofile="$default_ofile"
+with_gnu_ld="$lt_cv_prog_gnu_ld"
+need_locks="$enable_libtool_lock"
+
+old_CC="$CC"
+old_CFLAGS="$CFLAGS"
+
+# Set sane defaults for various variables
+test -z "$AR" && AR=ar
+test -z "$AR_FLAGS" && AR_FLAGS=cru
+test -z "$AS" && AS=as
+test -z "$CC" && CC=cc
+test -z "$DLLTOOL" && DLLTOOL=dlltool
+test -z "$LD" && LD=ld
+test -z "$LN_S" && LN_S="ln -s"
+test -z "$MAGIC_CMD" && MAGIC_CMD=file
+test -z "$NM" && NM=nm
+test -z "$OBJDUMP" && OBJDUMP=objdump
+test -z "$RANLIB" && RANLIB=:
+test -z "$STRIP" && STRIP=:
+test -z "$ac_objext" && ac_objext=o
+
+if test x"$host" != x"$build"; then
+  ac_tool_prefix=${host_alias}-
+else
+  ac_tool_prefix=
+fi
+
+# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
+case $host_os in
+linux-gnu*) ;;
+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
+esac
+
+case $host_os in
+aix3*)
+  # AIX sometimes has problems with the GCC collect2 program.  For some
+  # reason, if we set the COLLECT_NAMES environment variable, the problems
+  # vanish in a puff of smoke.
+  if test "X${COLLECT_NAMES+set}" != Xset; then
+    COLLECT_NAMES=
+    export COLLECT_NAMES
+  fi
+  ;;
+esac
+
+# Determine commands to create old-style static archives.
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_postinstall_cmds='chmod 644 $oldlib'
+old_postuninstall_cmds=
+
+if test -n "$RANLIB"; then
+  case $host_os in
+  openbsd*)
+    old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
+    ;;
+  *)
+    old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
+    ;;
+  esac
+  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+fi
+
+# Allow CC to be a program name with arguments.
+set dummy $CC
+compiler="$2"
+
+echo "$as_me:4057: checking for objdir" >&5
+echo $ECHO_N "checking for objdir... $ECHO_C" >&6
+rm -f .libs 2>/dev/null
+mkdir .libs 2>/dev/null
+if test -d .libs; then
+  objdir=.libs
+else
+  # MS-DOS does not allow filenames that begin with a dot.
+  objdir=_libs
+fi
+rmdir .libs 2>/dev/null
+echo "$as_me:4068: result: $objdir" >&5
+echo "${ECHO_T}$objdir" >&6
+
+# Check whether --with-pic or --without-pic was given.
+if test "${with_pic+set}" = set; then
+  withval="$with_pic"
+  pic_mode="$withval"
+else
+  pic_mode=default
+fi;
+test -z "$pic_mode" && pic_mode=default
+
+# We assume here that the value for lt_cv_prog_cc_pic will not be cached
+# in isolation, and that seeing it set (from the cache) indicates that
+# the associated values are set (in the cache) correctly too.
+echo "$as_me:4083: checking for $compiler option to produce PIC" >&5
+echo $ECHO_N "checking for $compiler option to produce PIC... $ECHO_C" >&6
+if test "${lt_cv_prog_cc_pic+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+   lt_cv_prog_cc_pic=
+  lt_cv_prog_cc_shlib=
+  lt_cv_prog_cc_wl=
+  lt_cv_prog_cc_static=
+  lt_cv_prog_cc_no_builtin=
+  lt_cv_prog_cc_can_build_shared=$can_build_shared
+
+  if test "$GCC" = yes; then
+    lt_cv_prog_cc_wl='-Wl,'
+    lt_cv_prog_cc_static='-static'
+
+    case $host_os in
+    aix*)
+      # Below there is a dirty hack to force normal static linking with -ldl
+      # The problem is because libdl dynamically linked with both libc and
+      # libC (AIX C++ library), which obviously doesn't included in libraries
+      # list by gcc. This cause undefined symbols with -static flags.
+      # This hack allows C programs to be linked with "-static -ldl", but
+      # not sure about C++ programs.
+      lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC"
+      ;;
+    amigaos*)
+      # FIXME: we need at least 68020 code to build shared libraries, but
+      # adding the `-m68020' flag to GCC prevents building anything better,
+      # like `-m68040'.
+      lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4'
+      ;;
+    beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
+      # PIC is the default for these OSes.
+      ;;
+    darwin* | rhapsody*)
+      # PIC is the default on this platform
+      # Common symbols not allowed in MH_DYLIB files
+      lt_cv_prog_cc_pic='-fno-common'
+      ;;
+    cygwin* | mingw* | pw32* | os2*)
+      # This hack is so that the source file can tell whether it is being
+      # built for inclusion in a dll (and should export symbols for example).
+      lt_cv_prog_cc_pic='-DDLL_EXPORT'
+      ;;
+    sysv4*MP*)
+      if test -d /usr/nec; then
+        lt_cv_prog_cc_pic=-Kconform_pic
+      fi
+      ;;
+    *)
+      lt_cv_prog_cc_pic='-fPIC'
+      ;;
+    esac
+  else
+    # PORTME Check for PIC flags for the system compiler.
+    case $host_os in
+    aix3* | aix4* | aix5*)
+      lt_cv_prog_cc_wl='-Wl,'
+      # All AIX code is PIC.
+      if test "$host_cpu" = ia64; then
+       # AIX 5 now supports IA64 processor
+       lt_cv_prog_cc_static='-Bstatic'
+      else
+       lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp'
+      fi
+      ;;
+
+    hpux9* | hpux10* | hpux11*)
+      # Is there a better lt_cv_prog_cc_static that works with the bundled CC?
+      lt_cv_prog_cc_wl='-Wl,'
+      lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive"
+      lt_cv_prog_cc_pic='+Z'
+      ;;
+
+    irix5* | irix6*)
+      lt_cv_prog_cc_wl='-Wl,'
+      lt_cv_prog_cc_static='-non_shared'
+      # PIC (with -KPIC) is the default.
+      ;;
+
+    cygwin* | mingw* | pw32* | os2*)
+      # This hack is so that the source file can tell whether it is being
+      # built for inclusion in a dll (and should export symbols for example).
+      lt_cv_prog_cc_pic='-DDLL_EXPORT'
+      ;;
+
+    newsos6)
+      lt_cv_prog_cc_pic='-KPIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      ;;
+
+    osf3* | osf4* | osf5*)
+      # All OSF/1 code is PIC.
+      lt_cv_prog_cc_wl='-Wl,'
+      lt_cv_prog_cc_static='-non_shared'
+      ;;
+
+    sco3.2v5*)
+      lt_cv_prog_cc_pic='-Kpic'
+      lt_cv_prog_cc_static='-dn'
+      lt_cv_prog_cc_shlib='-belf'
+      ;;
+
+    solaris*)
+      lt_cv_prog_cc_pic='-KPIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      lt_cv_prog_cc_wl='-Wl,'
+      ;;
+
+    sunos4*)
+      lt_cv_prog_cc_pic='-PIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      lt_cv_prog_cc_wl='-Qoption ld '
+      ;;
+
+    sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+      lt_cv_prog_cc_pic='-KPIC'
+      lt_cv_prog_cc_static='-Bstatic'
+      if test "x$host_vendor" = xsni; then
+       lt_cv_prog_cc_wl='-LD'
+      else
+       lt_cv_prog_cc_wl='-Wl,'
+      fi
+      ;;
+
+    uts4*)
+      lt_cv_prog_cc_pic='-pic'
+      lt_cv_prog_cc_static='-Bstatic'
+      ;;
+
+    sysv4*MP*)
+      if test -d /usr/nec ;then
+       lt_cv_prog_cc_pic='-Kconform_pic'
+       lt_cv_prog_cc_static='-Bstatic'
+      fi
+      ;;
+
+    *)
+      lt_cv_prog_cc_can_build_shared=no
+      ;;
+    esac
+  fi
+
+fi
+
+if test -z "$lt_cv_prog_cc_pic"; then
+  echo "$as_me:4230: result: none" >&5
+echo "${ECHO_T}none" >&6
+else
+  echo "$as_me:4233: result: $lt_cv_prog_cc_pic" >&5
+echo "${ECHO_T}$lt_cv_prog_cc_pic" >&6
+
+  # Check to make sure the pic_flag actually works.
+  echo "$as_me:4237: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5
+echo $ECHO_N "checking if $compiler PIC flag $lt_cv_prog_cc_pic works... $ECHO_C" >&6
+  if test "${lt_cv_prog_cc_pic_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+      save_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC"
+    cat >conftest.$ac_ext <<_ACEOF
+#line 4245 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4257: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4260: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4263: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4266: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+        case $host_os in
+      hpux9* | hpux10* | hpux11*)
+       # On HP-UX, both CC and GCC only warn that PIC is supported... then
+       # they create non-PIC objects.  So, if there were any warnings, we
+       # assume that PIC is not supported.
+       if test -s conftest.err; then
+         lt_cv_prog_cc_pic_works=no
+       else
+         lt_cv_prog_cc_pic_works=yes
+       fi
+       ;;
+      *)
+       lt_cv_prog_cc_pic_works=yes
+       ;;
+      esac
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+      lt_cv_prog_cc_pic_works=no
+
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+    CFLAGS="$save_CFLAGS"
+
+fi
+
+  if test "X$lt_cv_prog_cc_pic_works" = Xno; then
+    lt_cv_prog_cc_pic=
+    lt_cv_prog_cc_can_build_shared=no
+  else
+    lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic"
+  fi
+
+  echo "$as_me:4302: result: $lt_cv_prog_cc_pic_works" >&5
+echo "${ECHO_T}$lt_cv_prog_cc_pic_works" >&6
+fi
+
+# Check for any special shared library compilation flags.
+if test -n "$lt_cv_prog_cc_shlib"; then
+  { echo "$as_me:4308: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&5
+echo "$as_me: WARNING: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" >&2;}
+  if echo "$old_CC $old_CFLAGS " | egrep -e "[         ]$lt_cv_prog_cc_shlib[  ]" >/dev/null; then :
+  else
+   { echo "$as_me:4312: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&5
+echo "$as_me: WARNING: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" >&2;}
+    lt_cv_prog_cc_can_build_shared=no
+  fi
+fi
+
+echo "$as_me:4318: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5
+echo $ECHO_N "checking if $compiler static flag $lt_cv_prog_cc_static works... $ECHO_C" >&6
+if test "${lt_cv_prog_cc_static_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+    lt_cv_prog_cc_static_works=no
+  save_LDFLAGS="$LDFLAGS"
+  LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 4327 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:4339: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:4342: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:4345: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4348: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  lt_cv_prog_cc_static_works=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+  LDFLAGS="$save_LDFLAGS"
+
+fi
+
+# Belt *and* braces to stop my trousers falling down:
+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static=
+echo "$as_me:4362: result: $lt_cv_prog_cc_static_works" >&5
+echo "${ECHO_T}$lt_cv_prog_cc_static_works" >&6
+
+pic_flag="$lt_cv_prog_cc_pic"
+special_shlib_compile_flags="$lt_cv_prog_cc_shlib"
+wl="$lt_cv_prog_cc_wl"
+link_static_flag="$lt_cv_prog_cc_static"
+no_builtin_flag="$lt_cv_prog_cc_no_builtin"
+can_build_shared="$lt_cv_prog_cc_can_build_shared"
+
+# Check to see if options -o and -c are simultaneously supported by compiler
+echo "$as_me:4373: checking if $compiler supports -c -o file.$ac_objext" >&5
+echo $ECHO_N "checking if $compiler supports -c -o file.$ac_objext... $ECHO_C" >&6
+if test "${lt_cv_compiler_c_o+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+$rm -r conftest 2>/dev/null
+mkdir conftest
+cd conftest
+echo "int some_variable = 0;" > conftest.$ac_ext
+mkdir out
+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
+# that will create temporary files in the current directory regardless of
+# the output directory.  Thus, making CWD read-only will cause this test
+# to fail, enabling locking or at least warning the user not to do parallel
+# builds.
+chmod -w .
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
+compiler_c_o=no
+if { (eval echo configure:4393: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
+  # The compiler can only warn and ignore the option if not recognized
+  # So say no if there are warnings
+  if test -s out/conftest.err; then
+    lt_cv_compiler_c_o=no
+  else
+    lt_cv_compiler_c_o=yes
+  fi
+else
+  # Append any errors to the config.log.
+  cat out/conftest.err 1>&5
+  lt_cv_compiler_c_o=no
+fi
+CFLAGS="$save_CFLAGS"
+chmod u+w .
+$rm conftest* out/*
+rmdir out
+cd ..
+rmdir conftest
+$rm -r conftest 2>/dev/null
+
+fi
+
+compiler_c_o=$lt_cv_compiler_c_o
+echo "$as_me:4417: result: $compiler_c_o" >&5
+echo "${ECHO_T}$compiler_c_o" >&6
+
+if test x"$compiler_c_o" = x"yes"; then
+  # Check to see if we can write to a .lo
+  echo "$as_me:4422: checking if $compiler supports -c -o file.lo" >&5
+echo $ECHO_N "checking if $compiler supports -c -o file.lo... $ECHO_C" >&6
+  if test "${lt_cv_compiler_o_lo+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+  lt_cv_compiler_o_lo=no
+  save_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -c -o conftest.lo"
+  save_objext="$ac_objext"
+  ac_objext=lo
+  cat >conftest.$ac_ext <<_ACEOF
+#line 4434 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+int some_variable = 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4446: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4449: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4452: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4455: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+      # The compiler can only warn and ignore the option if not recognized
+    # So say no if there are warnings
+    if test -s conftest.err; then
+      lt_cv_compiler_o_lo=no
+    else
+      lt_cv_compiler_o_lo=yes
+    fi
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  ac_objext="$save_objext"
+  CFLAGS="$save_CFLAGS"
+
+fi
+
+  compiler_o_lo=$lt_cv_compiler_o_lo
+  echo "$as_me:4476: result: $compiler_o_lo" >&5
+echo "${ECHO_T}$compiler_o_lo" >&6
+else
+  compiler_o_lo=no
+fi
+
+# Check to see if we can do hard links to lock some files if needed
+hard_links="nottested"
+if test "$compiler_c_o" = no && test "$need_locks" != no; then
+  # do not overwrite the value of need_locks provided by the user
+  echo "$as_me:4486: checking if we can lock with hard links" >&5
+echo $ECHO_N "checking if we can lock with hard links... $ECHO_C" >&6
+  hard_links=yes
+  $rm conftest*
+  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+  touch conftest.a
+  ln conftest.a conftest.b 2>&5 || hard_links=no
+  ln conftest.a conftest.b 2>/dev/null && hard_links=no
+  echo "$as_me:4494: result: $hard_links" >&5
+echo "${ECHO_T}$hard_links" >&6
+  if test "$hard_links" = no; then
+    { echo "$as_me:4497: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5
+echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;}
+    need_locks=warn
+  fi
+else
+  need_locks=no
+fi
+
+if test "$GCC" = yes; then
+  # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
+  echo "$as_me:4507: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+echo $ECHO_N "checking if $compiler supports -fno-rtti -fno-exceptions... $ECHO_C" >&6
+  echo "int some_variable = 0;" > conftest.$ac_ext
+  save_CFLAGS="$CFLAGS"
+  CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
+  compiler_rtti_exceptions=no
+  cat >conftest.$ac_ext <<_ACEOF
+#line 4514 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+int some_variable = 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:4526: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:4529: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:4532: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:4535: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+      # The compiler can only warn and ignore the option if not recognized
+    # So say no if there are warnings
+    if test -s conftest.err; then
+      compiler_rtti_exceptions=no
+    else
+      compiler_rtti_exceptions=yes
+    fi
+
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  CFLAGS="$save_CFLAGS"
+  echo "$as_me:4551: result: $compiler_rtti_exceptions" >&5
+echo "${ECHO_T}$compiler_rtti_exceptions" >&6
+
+  if test "$compiler_rtti_exceptions" = "yes"; then
+    no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
+  else
+    no_builtin_flag=' -fno-builtin'
+  fi
+fi
+
+# See if the linker supports building shared libraries.
+echo "$as_me:4562: checking whether the linker ($LD) supports shared libraries" >&5
+echo $ECHO_N "checking whether the linker ($LD) supports shared libraries... $ECHO_C" >&6
+
+allow_undefined_flag=
+no_undefined_flag=
+need_lib_prefix=unknown
+need_version=unknown
+# when you set need_version to no, make sure it does not cause -set_version
+# flags to be left without arguments
+archive_cmds=
+archive_expsym_cmds=
+old_archive_from_new_cmds=
+old_archive_from_expsyms_cmds=
+export_dynamic_flag_spec=
+whole_archive_flag_spec=
+thread_safe_flag_spec=
+hardcode_into_libs=no
+hardcode_libdir_flag_spec=
+hardcode_libdir_separator=
+hardcode_direct=no
+hardcode_minus_L=no
+hardcode_shlibpath_var=unsupported
+runpath_var=
+link_all_deplibs=unknown
+always_export_symbols=no
+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
+# include_expsyms should be a list of space-separated symbols to be *always*
+# included in the symbol list
+include_expsyms=
+# exclude_expsyms can be an egrep regular expression of symbols to exclude
+# it will be wrapped by ` (' and `)$', so one must not match beginning or
+# end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
+# as well as any symbol that contains `d'.
+exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
+# platforms (ab)use it in PIC code, but their linkers get confused if
+# the symbol is explicitly referenced.  Since portable code cannot
+# rely on this symbol name, it's probably fine to never include it in
+# preloaded symbol tables.
+extract_expsyms_cmds=
+
+case $host_os in
+cygwin* | mingw* | pw32*)
+  # FIXME: the MSVC++ port hasn't been tested in a loooong time
+  # When not using gcc, we currently assume that we are using
+  # Microsoft Visual C++.
+  if test "$GCC" != yes; then
+    with_gnu_ld=no
+  fi
+  ;;
+openbsd*)
+  with_gnu_ld=no
+  ;;
+esac
+
+ld_shlibs=yes
+if test "$with_gnu_ld" = yes; then
+  # If archive_cmds runs LD, not CC, wlarc should be empty
+  wlarc='${wl}'
+
+  # See if GNU ld supports shared libraries.
+  case $host_os in
+  aix3* | aix4* | aix5*)
+    # On AIX, the GNU linker is very broken
+    # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available.
+    ld_shlibs=no
+    cat <<EOF 1>&2
+
+*** Warning: the GNU linker, at least up to release 2.9.1, is reported
+*** to be unable to reliably create shared libraries on AIX.
+*** Therefore, libtool is disabling shared libraries support.  If you
+*** really care for shared libraries, you may want to modify your PATH
+*** so that a non-GNU linker is found, and then restart.
+
+EOF
+    ;;
+
+  amigaos*)
+    archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_minus_L=yes
+
+    # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
+    # that the semantics of dynamic libraries on AmigaOS, at least up
+    # to version 4, is to share data among multiple programs linked
+    # with the same dynamic library.  Since this doesn't match the
+    # behavior of shared libraries on other platforms, we can use
+    # them.
+    ld_shlibs=no
+    ;;
+
+  beos*)
+    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+      allow_undefined_flag=unsupported
+      # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
+      # support --undefined.  This deserves some investigation.  FIXME
+      archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+    else
+      ld_shlibs=no
+    fi
+    ;;
+
+  cygwin* | mingw* | pw32*)
+    # hardcode_libdir_flag_spec is actually meaningless, as there is
+    # no search path for DLLs.
+    hardcode_libdir_flag_spec='-L$libdir'
+    allow_undefined_flag=unsupported
+    always_export_symbols=yes
+
+    extract_expsyms_cmds='test -f $output_objdir/impgen.c || \
+      sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~
+      test -f $output_objdir/impgen.exe || (cd $output_objdir && \
+      if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \
+      else $CC -o impgen impgen.c ; fi)~
+      $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def'
+
+    old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib'
+
+    # cygwin and mingw dlls have different entry points and sets of symbols
+    # to exclude.
+    # FIXME: what about values for MSVC?
+    dll_entry=__cygwin_dll_entry@12
+    dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~
+    case $host_os in
+    mingw*)
+      # mingw values
+      dll_entry=_DllMainCRTStartup@12
+      dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~
+      ;;
+    esac
+
+    # mingw and cygwin differ, and it's simplest to just exclude the union
+    # of the two symbol sets.
+    dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12
+
+    # recent cygwin and mingw systems supply a stub DllMain which the user
+    # can override, but on older systems we have to supply one (in ltdll.c)
+    if test "x$lt_cv_need_dllmain" = "xyes"; then
+      ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext "
+      ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~
+       test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~'
+    else
+      ltdll_obj=
+      ltdll_cmds=
+    fi
+
+    # Extract the symbol export list from an `--export-all' def file,
+    # then regenerate the def file from the symbol export list, so that
+    # the compiled dll only exports the symbol export list.
+    # Be careful not to strip the DATA tag left be newer dlltools.
+    export_symbols_cmds="$ltdll_cmds"'
+      $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~
+      sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols'
+
+    # If the export-symbols file already is a .def file (1st line
+    # is EXPORTS), use it as is.
+    # If DATA tags from a recent dlltool are present, honour them!
+    archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then
+       cp $export_symbols $output_objdir/$soname-def;
+      else
+       echo EXPORTS > $output_objdir/$soname-def;
+       _lt_hint=1;
+       cat $export_symbols | while read symbol; do
+        set dummy \$symbol;
+        case \$# in
+          2) echo "   \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;;
+          *) echo "     \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;;
+        esac;
+        _lt_hint=`expr 1 + \$_lt_hint`;
+       done;
+      fi~
+      '"$ltdll_cmds"'
+      $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
+      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~
+      $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~
+      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~
+      $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags'
+    ;;
+
+  netbsd*)
+    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+      archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
+      wlarc=
+    else
+      archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+    fi
+    ;;
+
+  solaris* | sysv5*)
+    if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
+      ld_shlibs=no
+      cat <<EOF 1>&2
+
+*** Warning: The releases 2.8.* of the GNU linker cannot reliably
+*** create shared libraries on Solaris systems.  Therefore, libtool
+*** is disabling shared libraries support.  We urge you to upgrade GNU
+*** binutils to release 2.9.1 or newer.  Another option is to modify
+*** your PATH or compiler configuration so that the native linker is
+*** used, and then restart.
+
+EOF
+    elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+    else
+      ld_shlibs=no
+    fi
+    ;;
+
+  sunos4*)
+    archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+    wlarc=
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  *)
+    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+      archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
+    else
+      ld_shlibs=no
+    fi
+    ;;
+  esac
+
+  if test "$ld_shlibs" = yes; then
+    runpath_var=LD_RUN_PATH
+    hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
+    export_dynamic_flag_spec='${wl}--export-dynamic'
+    case $host_os in
+    cygwin* | mingw* | pw32*)
+      # dlltool doesn't understand --whole-archive et. al.
+      whole_archive_flag_spec=
+      ;;
+    *)
+      # ancient GNU ld didn't support --whole-archive et. al.
+      if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
+       whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      else
+       whole_archive_flag_spec=
+      fi
+      ;;
+    esac
+  fi
+else
+  # PORTME fill in a description of your system's linker (not GNU ld)
+  case $host_os in
+  aix3*)
+    allow_undefined_flag=unsupported
+    always_export_symbols=yes
+    archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
+    # Note: this linker hardcodes the directories in LIBPATH if there
+    # are no directories specified by -L.
+    hardcode_minus_L=yes
+    if test "$GCC" = yes && test -z "$link_static_flag"; then
+      # Neither direct hardcoding nor static linking is supported with a
+      # broken collect2.
+      hardcode_direct=unsupported
+    fi
+    ;;
+
+  aix4* | aix5*)
+    if test "$host_cpu" = ia64; then
+      # On IA64, the linker does run time linking by default, so we don't
+      # have to do anything special.
+      aix_use_runtimelinking=no
+      exp_sym_flag='-Bexport'
+      no_entry_flag=""
+    else
+      aix_use_runtimelinking=no
+
+      # Test if we are trying to use run time linking or normal
+      # AIX style linking. If -brtl is somewhere in LDFLAGS, we
+      # need to do runtime linking.
+      case $host_os in aix4.[23]|aix4.[23].*|aix5*)
+       for ld_flag in $LDFLAGS; do
+         if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then
+           aix_use_runtimelinking=yes
+           break
+         fi
+       done
+      esac
+
+      exp_sym_flag='-bexport'
+      no_entry_flag='-bnoentry'
+    fi
+
+    # When large executables or shared objects are built, AIX ld can
+    # have problems creating the table of contents.  If linking a library
+    # or program results in "error TOC overflow" add -mminimal-toc to
+    # CXXFLAGS/CFLAGS for g++/gcc.  In the cases where that is not
+    # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
+
+    hardcode_direct=yes
+    archive_cmds=''
+    hardcode_libdir_separator=':'
+    if test "$GCC" = yes; then
+      case $host_os in aix4.[012]|aix4.[012].*)
+       collect2name=`${CC} -print-prog-name=collect2`
+       if test -f "$collect2name" && \
+         strings "$collect2name" | grep resolve_lib_name >/dev/null
+       then
+         # We have reworked collect2
+         hardcode_direct=yes
+       else
+         # We have old collect2
+         hardcode_direct=unsupported
+         # It fails to find uninstalled libraries when the uninstalled
+         # path is not listed in the libpath.  Setting hardcode_minus_L
+         # to unsupported forces relinking
+         hardcode_minus_L=yes
+         hardcode_libdir_flag_spec='-L$libdir'
+         hardcode_libdir_separator=
+       fi
+      esac
+
+      shared_flag='-shared'
+    else
+      # not using gcc
+      if test "$host_cpu" = ia64; then
+       shared_flag='${wl}-G'
+      else
+       if test "$aix_use_runtimelinking" = yes; then
+         shared_flag='${wl}-G'
+       else
+         shared_flag='${wl}-bM:SRE'
+       fi
+      fi
+    fi
+
+    # It seems that -bexpall can do strange things, so it is better to
+    # generate a list of symbols to export.
+    always_export_symbols=yes
+    if test "$aix_use_runtimelinking" = yes; then
+      # Warning - without using the other runtime loading flags (-brtl),
+      # -berok will link without error, but may produce a broken library.
+      allow_undefined_flag='-berok'
+      hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib'
+      archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag"
+    else
+      if test "$host_cpu" = ia64; then
+       hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib'
+       allow_undefined_flag="-z nodefs"
+       archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"
+      else
+       hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib'
+       # Warning - without using the other run time loading flags,
+       # -berok will link without error, but may produce a broken library.
+       allow_undefined_flag='${wl}-berok'
+       # This is a bit strange, but is similar to how AIX traditionally builds
+       # it's shared libraries.
+       archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $objdir/$libname$release.a $objdir/$soname'
+      fi
+    fi
+    ;;
+
+  amigaos*)
+    archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_minus_L=yes
+    # see comment about different semantics on the GNU ld section
+    ld_shlibs=no
+    ;;
+
+  cygwin* | mingw* | pw32*)
+    # When not using gcc, we currently assume that we are using
+    # Microsoft Visual C++.
+    # hardcode_libdir_flag_spec is actually meaningless, as there is
+    # no search path for DLLs.
+    hardcode_libdir_flag_spec=' '
+    allow_undefined_flag=unsupported
+    # Tell ltmain to make .lib files, not .a files.
+    libext=lib
+    # FIXME: Setting linknames here is a bad hack.
+    archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
+    # The linker will automatically build a .lib file if we build a DLL.
+    old_archive_from_new_cmds='true'
+    # FIXME: Should let the user specify the lib program.
+    old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
+    fix_srcfile_path='`cygpath -w "$srcfile"`'
+    ;;
+
+  darwin* | rhapsody*)
+    case "$host_os" in
+    rhapsody* | darwin1.[012])
+      allow_undefined_flag='-undefined suppress'
+      ;;
+    *) # Darwin 1.3 on
+      allow_undefined_flag='-flat_namespace -undefined suppress'
+      ;;
+    esac
+    # FIXME: Relying on posixy $() will cause problems for
+    #        cross-compilation, but unfortunately the echo tests do not
+    #        yet detect zsh echo's removal of \ escapes.
+    archive_cmds='$nonopt $(test "x$module" = xyes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib $libobjs $deplibs$linker_flags -install_name $rpath/$soname $verstring'
+    # We need to add '_' to the symbols in $export_symbols first
+    #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    whole_archive_flag_spec='-all_load $convenience'
+    ;;
+
+  freebsd1*)
+    ld_shlibs=no
+    ;;
+
+  # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
+  # support.  Future versions do this automatically, but an explicit c++rt0.o
+  # does not break anything, and helps significantly (at the cost of a little
+  # extra space).
+  freebsd2.2*)
+    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  # Unfortunately, older versions of FreeBSD 2 do not have this feature.
+  freebsd2*)
+    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_direct=yes
+    hardcode_minus_L=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
+  freebsd*)
+    archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  hpux9* | hpux10* | hpux11*)
+    case $host_os in
+    hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;;
+    *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;;
+    esac
+    hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
+    hardcode_libdir_separator=:
+    hardcode_direct=yes
+    hardcode_minus_L=yes # Not in the search PATH, but as the default
+                        # location of the library.
+    export_dynamic_flag_spec='${wl}-E'
+    ;;
+
+  irix5* | irix6*)
+    if test "$GCC" = yes; then
+      archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+    else
+      archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+    fi
+    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    hardcode_libdir_separator=:
+    link_all_deplibs=yes
+    ;;
+
+  netbsd*)
+    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
+    else
+      archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags'      # ELF
+    fi
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  newsos6)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_direct=yes
+    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    hardcode_libdir_separator=:
+    hardcode_shlibpath_var=no
+    ;;
+
+  openbsd*)
+    hardcode_direct=yes
+    hardcode_shlibpath_var=no
+    if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+      archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+      export_dynamic_flag_spec='${wl}-E'
+    else
+      case "$host_os" in
+      openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+       archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+       hardcode_libdir_flag_spec='-R$libdir'
+        ;;
+      *)
+        archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linker_flags'
+        hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+        ;;
+      esac
+    fi
+    ;;
+
+  os2*)
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_minus_L=yes
+    allow_undefined_flag=unsupported
+    archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def'
+    old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def'
+    ;;
+
+  osf3*)
+    if test "$GCC" = yes; then
+      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+    else
+      allow_undefined_flag=' -expect_unresolved \*'
+      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+    fi
+    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    hardcode_libdir_separator=:
+    ;;
+
+  osf4* | osf5*)       # as osf3* with the addition of -msym flag
+    if test "$GCC" = yes; then
+      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
+      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib'
+      hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
+    else
+      allow_undefined_flag=' -expect_unresolved \*'
+      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib'
+      archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~
+      $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
+
+      #Both c and cxx compiler support -rpath directly
+      hardcode_libdir_flag_spec='-rpath $libdir'
+    fi
+    hardcode_libdir_separator=:
+    ;;
+
+  sco3.2v5*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_shlibpath_var=no
+    runpath_var=LD_RUN_PATH
+    hardcode_runpath_var=yes
+    export_dynamic_flag_spec='${wl}-Bexport'
+    ;;
+
+  solaris*)
+    # gcc --version < 3.0 without binutils cannot create self contained
+    # shared libraries reliably, requiring libgcc.a to resolve some of
+    # the object symbols generated in some cases.  Libraries that use
+    # assert need libgcc.a to resolve __eprintf, for example.  Linking
+    # a copy of libgcc.a into every shared library to guarantee resolving
+    # such symbols causes other problems:  According to Tim Van Holder
+    # <tim.van.holder@pandora.be>, C++ libraries end up with a separate
+    # (to the application) exception stack for one thing.
+    no_undefined_flag=' -z defs'
+    if test "$GCC" = yes; then
+      case `$CC --version 2>/dev/null` in
+      [12].*)
+       cat <<EOF 1>&2
+
+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably
+*** create self contained shared libraries on Solaris systems, without
+*** introducing a dependency on libgcc.a.  Therefore, libtool is disabling
+*** -no-undefined support, which will at least allow you to build shared
+*** libraries.  However, you may find that when you link such libraries
+*** into an application without using GCC, you have to manually add
+*** \`gcc --print-libgcc-file-name\` to the link command.  We urge you to
+*** upgrade to a newer version of GCC.  Another option is to rebuild your
+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer.
+
+EOF
+        no_undefined_flag=
+       ;;
+      esac
+    fi
+    # $CC -shared without GNU ld will not create a library from C++
+    # object files and a static libstdc++, better avoid it by now
+    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+    hardcode_libdir_flag_spec='-R$libdir'
+    hardcode_shlibpath_var=no
+    case $host_os in
+    solaris2.[0-5] | solaris2.[0-5].*) ;;
+    *) # Supported since Solaris 2.6 (maybe 2.5.1?)
+      whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
+    esac
+    link_all_deplibs=yes
+    ;;
+
+  sunos4*)
+    if test "x$host_vendor" = xsequent; then
+      # Use $CC to link under sequent, because it throws in some extra .o
+      # files that make .init and .fini sections work.
+      archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags'
+    else
+      archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
+    fi
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_direct=yes
+    hardcode_minus_L=yes
+    hardcode_shlibpath_var=no
+    ;;
+
+  sysv4)
+    if test "x$host_vendor" = xsno; then
+      archive_cmds='$LD -G -Bsymbolic -h $soname -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_direct=yes # is this really true???
+    else
+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_direct=no #Motorola manual says yes, but my tests say they lie
+    fi
+    runpath_var='LD_RUN_PATH'
+    hardcode_shlibpath_var=no
+    ;;
+
+  sysv4.3*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_shlibpath_var=no
+    export_dynamic_flag_spec='-Bexport'
+    ;;
+
+  sysv5*)
+    no_undefined_flag=' -z text'
+    # $CC -shared without GNU ld will not create a library from C++
+    # object files and a static libstdc++, better avoid it by now
+    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp'
+    hardcode_libdir_flag_spec=
+    hardcode_shlibpath_var=no
+    runpath_var='LD_RUN_PATH'
+    ;;
+
+  uts4*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_shlibpath_var=no
+    ;;
+
+  dgux*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_libdir_flag_spec='-L$libdir'
+    hardcode_shlibpath_var=no
+    ;;
+
+  sysv4*MP*)
+    if test -d /usr/nec; then
+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
+      hardcode_shlibpath_var=no
+      runpath_var=LD_RUN_PATH
+      hardcode_runpath_var=yes
+      ld_shlibs=yes
+    fi
+    ;;
+
+  sysv4.2uw2*)
+    archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
+    hardcode_direct=yes
+    hardcode_minus_L=no
+    hardcode_shlibpath_var=no
+    hardcode_runpath_var=yes
+    runpath_var=LD_RUN_PATH
+    ;;
+
+  sysv5uw7* | unixware7*)
+    no_undefined_flag='${wl}-z ${wl}text'
+    if test "$GCC" = yes; then
+      archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+    else
+      archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags'
+    fi
+    runpath_var='LD_RUN_PATH'
+    hardcode_shlibpath_var=no
+    ;;
+
+  *)
+    ld_shlibs=no
+    ;;
+  esac
+fi
+echo "$as_me:5242: result: $ld_shlibs" >&5
+echo "${ECHO_T}$ld_shlibs" >&6
+test "$ld_shlibs" = no && can_build_shared=no
+
+# Check hardcoding attributes.
+echo "$as_me:5247: checking how to hardcode library paths into programs" >&5
+echo $ECHO_N "checking how to hardcode library paths into programs... $ECHO_C" >&6
+hardcode_action=
+if test -n "$hardcode_libdir_flag_spec" || \
+   test -n "$runpath_var"; then
+
+  # We can hardcode non-existant directories.
+  if test "$hardcode_direct" != no &&
+     # If the only mechanism to avoid hardcoding is shlibpath_var, we
+     # have to relink, otherwise we might link with an installed library
+     # when we should be linking with a yet-to-be-installed one
+     ## test "$hardcode_shlibpath_var" != no &&
+     test "$hardcode_minus_L" != no; then
+    # Linking always hardcodes the temporary library directory.
+    hardcode_action=relink
+  else
+    # We can link without hardcoding, and we can hardcode nonexisting dirs.
+    hardcode_action=immediate
+  fi
+else
+  # We cannot hardcode anything, or else we can only hardcode existing
+  # directories.
+  hardcode_action=unsupported
+fi
+echo "$as_me:5271: result: $hardcode_action" >&5
+echo "${ECHO_T}$hardcode_action" >&6
+
+striplib=
+old_striplib=
+echo "$as_me:5276: checking whether stripping libraries is possible" >&5
+echo $ECHO_N "checking whether stripping libraries is possible... $ECHO_C" >&6
+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
+  test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
+  test -z "$striplib" && striplib="$STRIP --strip-unneeded"
+  echo "$as_me:5281: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+  echo "$as_me:5284: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+reload_cmds='$LD$reload_flag -o $output$reload_objs'
+test -z "$deplibs_check_method" && deplibs_check_method=unknown
+
+# PORTME Fill in your ld.so characteristics
+echo "$as_me:5292: checking dynamic linker characteristics" >&5
+echo $ECHO_N "checking dynamic linker characteristics... $ECHO_C" >&6
+library_names_spec=
+libname_spec='lib$name'
+soname_spec=
+postinstall_cmds=
+postuninstall_cmds=
+finish_cmds=
+finish_eval=
+shlibpath_var=
+shlibpath_overrides_runpath=unknown
+version_type=none
+dynamic_linker="$host_os ld.so"
+sys_lib_dlsearch_path_spec="/lib /usr/lib"
+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
+
+case $host_os in
+aix3*)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix $libname.a'
+  shlibpath_var=LIBPATH
+
+  # AIX has no versioning support, so we append a major version to the name.
+  soname_spec='${libname}${release}.so$major'
+  ;;
+
+aix4* | aix5*)
+  version_type=linux
+  if test "$host_cpu" = ia64; then
+    # AIX 5 supports IA64
+    library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so'
+    shlibpath_var=LD_LIBRARY_PATH
+  else
+    # With GCC up to 2.95.x, collect2 would create an import file
+    # for dependence libraries.  The import file would start with
+    # the line `#! .'.  This would cause the generated library to
+    # depend on `.', always an invalid library.  This was fixed in
+    # development snapshots of GCC prior to 3.0.
+    case $host_os in
+      aix4 | aix4.[01] | aix4.[01].*)
+       if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
+            echo ' yes '
+            echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
+         :
+       else
+         can_build_shared=no
+       fi
+       ;;
+    esac
+    # AIX (on Power*) has no versioning support, so currently we can
+    # not hardcode correct soname into executable. Probably we can
+    # add versioning support to collect2, so additional links can
+    # be useful in future.
+    if test "$aix_use_runtimelinking" = yes; then
+      # If using run time linking (on AIX 4.2 or later) use lib<name>.so
+      # instead of lib<name>.a to let people know that these are not
+      # typical AIX shared libraries.
+      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+    else
+      # We preserve .a as extension for shared libraries through AIX4.2
+      # and later when we are not doing run time linking.
+      library_names_spec='${libname}${release}.a $libname.a'
+      soname_spec='${libname}${release}.so$major'
+    fi
+    shlibpath_var=LIBPATH
+  fi
+  ;;
+
+amigaos*)
+  library_names_spec='$libname.ixlibrary $libname.a'
+  # Create ${libname}_ixlibrary.a entries in /sys/libs.
+  finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
+  ;;
+
+beos*)
+  library_names_spec='${libname}.so'
+  dynamic_linker="$host_os ld.so"
+  shlibpath_var=LIBRARY_PATH
+  ;;
+
+bsdi4*)
+  version_type=linux
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
+  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+  export_dynamic_flag_spec=-rdynamic
+  # the default ld.so.conf also contains /usr/contrib/lib and
+  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
+  # libtool to hard-code these into programs
+  ;;
+
+cygwin* | mingw* | pw32*)
+  version_type=windows
+  need_version=no
+  need_lib_prefix=no
+  case $GCC,$host_os in
+  yes,cygwin*)
+    library_names_spec='$libname.dll.a'
+    soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
+    postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~
+      dldir=$destdir/`dirname \$dlpath`~
+      test -d \$dldir || mkdir -p \$dldir~
+      $install_prog .libs/$dlname \$dldir/$dlname'
+    postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
+      dlpath=$dir/\$dldll~
+       $rm \$dlpath'
+    ;;
+  yes,mingw*)
+    library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
+    sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
+    ;;
+  yes,pw32*)
+    library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll'
+    ;;
+  *)
+    library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
+    ;;
+  esac
+  dynamic_linker='Win32 ld.exe'
+  # FIXME: first we should search . and the directory the executable is in
+  shlibpath_var=PATH
+  ;;
+
+darwin* | rhapsody*)
+  dynamic_linker="$host_os dyld"
+  version_type=darwin
+  need_lib_prefix=no
+  need_version=no
+  # FIXME: Relying on posixy $() will cause problems for
+  #        cross-compilation, but unfortunately the echo tests do not
+  #        yet detect zsh echo's removal of \ escapes.
+  library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)'
+  soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)'
+  shlibpath_overrides_runpath=yes
+  shlibpath_var=DYLD_LIBRARY_PATH
+  ;;
+
+freebsd1*)
+  dynamic_linker=no
+  ;;
+
+freebsd*)
+  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
+  version_type=freebsd-$objformat
+  case $version_type in
+    freebsd-elf*)
+      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
+      need_version=no
+      need_lib_prefix=no
+      ;;
+    freebsd-*)
+      library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
+      need_version=yes
+      ;;
+  esac
+  shlibpath_var=LD_LIBRARY_PATH
+  case $host_os in
+  freebsd2*)
+    shlibpath_overrides_runpath=yes
+    ;;
+  *)
+    shlibpath_overrides_runpath=no
+    hardcode_into_libs=yes
+    ;;
+  esac
+  ;;
+
+gnu*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  hardcode_into_libs=yes
+  ;;
+
+hpux9* | hpux10* | hpux11*)
+  # Give a soname corresponding to the major version so that dld.sl refuses to
+  # link against other versions.
+  dynamic_linker="$host_os dld.sl"
+  version_type=sunos
+  need_lib_prefix=no
+  need_version=no
+  shlibpath_var=SHLIB_PATH
+  shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
+  library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
+  soname_spec='${libname}${release}.sl$major'
+  # HP-UX runs *really* slowly unless shared libraries are mode 555.
+  postinstall_cmds='chmod 555 $lib'
+  ;;
+
+irix5* | irix6*)
+  version_type=irix
+  need_lib_prefix=no
+  need_version=no
+  soname_spec='${libname}${release}.so$major'
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
+  case $host_os in
+  irix5*)
+    libsuff= shlibsuff=
+    ;;
+  *)
+    case $LD in # libtool.m4 will add one of these switches to LD
+    *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
+    *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
+    *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
+    *) libsuff= shlibsuff= libmagic=never-match;;
+    esac
+    ;;
+  esac
+  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
+  shlibpath_overrides_runpath=no
+  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
+  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
+  ;;
+
+# No shared lib support for Linux oldld, aout, or coff.
+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
+  dynamic_linker=no
+  ;;
+
+# This must be Linux ELF.
+linux-gnu*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=no
+  # This implies no fast_install, which is unacceptable.
+  # Some rework will be needed to allow for fast_install
+  # before this can be enabled.
+  hardcode_into_libs=yes
+
+  # We used to test for /lib/ld.so.1 and disable shared libraries on
+  # powerpc, because MkLinux only supported shared libraries with the
+  # GNU dynamic linker.  Since this was broken with cross compilers,
+  # most powerpc-linux boxes support dynamic linking these days and
+  # people can always --disable-shared, the test was removed, and we
+  # assume the GNU/Linux dynamic linker is in use.
+  dynamic_linker='GNU/Linux ld.so'
+  ;;
+
+netbsd*)
+  version_type=sunos
+  need_lib_prefix=no
+  need_version=no
+  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
+    library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
+    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+    dynamic_linker='NetBSD (a.out) ld.so'
+  else
+    library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
+    soname_spec='${libname}${release}.so$major'
+    dynamic_linker='NetBSD ld.elf_so'
+  fi
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  hardcode_into_libs=yes
+  ;;
+
+newsos6)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  ;;
+
+openbsd*)
+  version_type=sunos
+  need_lib_prefix=no
+  need_version=no
+  if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+    case "$host_os" in
+    openbsd2.[89] | openbsd2.[89].*)
+      shlibpath_overrides_runpath=no
+      ;;
+    *)
+      shlibpath_overrides_runpath=yes
+      ;;
+    esac
+  else
+    shlibpath_overrides_runpath=yes
+  fi
+  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
+  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+os2*)
+  libname_spec='$name'
+  need_lib_prefix=no
+  library_names_spec='$libname.dll $libname.a'
+  dynamic_linker='OS/2 ld.exe'
+  shlibpath_var=LIBPATH
+  ;;
+
+osf3* | osf4* | osf5*)
+  version_type=osf
+  need_version=no
+  soname_spec='${libname}${release}.so'
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
+  shlibpath_var=LD_LIBRARY_PATH
+  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
+  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
+  ;;
+
+sco3.2v5*)
+  version_type=osf
+  soname_spec='${libname}${release}.so$major'
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+solaris*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  hardcode_into_libs=yes
+  # ldd complains unless libraries are executable
+  postinstall_cmds='chmod +x $lib'
+  ;;
+
+sunos4*)
+  version_type=sunos
+  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
+  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
+  shlibpath_var=LD_LIBRARY_PATH
+  shlibpath_overrides_runpath=yes
+  if test "$with_gnu_ld" = yes; then
+    need_lib_prefix=no
+  fi
+  need_version=yes
+  ;;
+
+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  case $host_vendor in
+    sni)
+      shlibpath_overrides_runpath=no
+      ;;
+    motorola)
+      need_lib_prefix=no
+      need_version=no
+      shlibpath_overrides_runpath=no
+      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
+      ;;
+  esac
+  ;;
+
+uts4*)
+  version_type=linux
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+dgux*)
+  version_type=linux
+  need_lib_prefix=no
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
+  shlibpath_var=LD_LIBRARY_PATH
+  ;;
+
+sysv4*MP*)
+  if test -d /usr/nec ;then
+    version_type=linux
+    library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
+    soname_spec='$libname.so.$major'
+    shlibpath_var=LD_LIBRARY_PATH
+  fi
+  ;;
+
+*)
+  dynamic_linker=no
+  ;;
+esac
+echo "$as_me:5685: result: $dynamic_linker" >&5
+echo "${ECHO_T}$dynamic_linker" >&6
+test "$dynamic_linker" = no && can_build_shared=no
+
+# Report the final consequences.
+echo "$as_me:5690: checking if libtool supports shared libraries" >&5
+echo $ECHO_N "checking if libtool supports shared libraries... $ECHO_C" >&6
+echo "$as_me:5692: result: $can_build_shared" >&5
+echo "${ECHO_T}$can_build_shared" >&6
+
+echo "$as_me:5695: checking whether to build shared libraries" >&5
+echo $ECHO_N "checking whether to build shared libraries... $ECHO_C" >&6
+test "$can_build_shared" = "no" && enable_shared=no
+
+# On AIX, shared libraries and static libraries use the same namespace, and
+# are all built from PIC.
+case "$host_os" in
+aix3*)
+  test "$enable_shared" = yes && enable_static=no
+  if test -n "$RANLIB"; then
+    archive_cmds="$archive_cmds~\$RANLIB \$lib"
+    postinstall_cmds='$RANLIB $lib'
+  fi
+  ;;
+
+aix4*)
+  if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then
+    test "$enable_shared" = yes && enable_static=no
+  fi
+  ;;
+esac
+echo "$as_me:5716: result: $enable_shared" >&5
+echo "${ECHO_T}$enable_shared" >&6
+
+echo "$as_me:5719: checking whether to build static libraries" >&5
+echo $ECHO_N "checking whether to build static libraries... $ECHO_C" >&6
+# Make sure either enable_shared or enable_static is yes.
+test "$enable_shared" = yes || enable_static=yes
+echo "$as_me:5723: result: $enable_static" >&5
+echo "${ECHO_T}$enable_static" >&6
+
+if test "$hardcode_action" = relink; then
+  # Fast installation is not supported
+  enable_fast_install=no
+elif test "$shlibpath_overrides_runpath" = yes ||
+     test "$enable_shared" = no; then
+  # Fast installation is not necessary
+  enable_fast_install=needless
+fi
+
+variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
+if test "$GCC" = yes; then
+  variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
+fi
+
+if test "x$enable_dlopen" != xyes; then
+  enable_dlopen=unknown
+  enable_dlopen_self=unknown
+  enable_dlopen_self_static=unknown
+else
+  lt_cv_dlopen=no
+  lt_cv_dlopen_libs=
+
+  case $host_os in
+  beos*)
+    lt_cv_dlopen="load_add_on"
+    lt_cv_dlopen_libs=
+    lt_cv_dlopen_self=yes
+    ;;
+
+  cygwin* | mingw* | pw32*)
+    lt_cv_dlopen="LoadLibrary"
+    lt_cv_dlopen_libs=
+   ;;
+
+  *)
+    echo "$as_me:5761: checking for shl_load" >&5
+echo $ECHO_N "checking for shl_load... $ECHO_C" >&6
+if test "${ac_cv_func_shl_load+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5767 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char shl_load (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char shl_load ();
+char (*f) ();
+
+int
+main ()
+{
+/* 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_shl_load) || defined (__stub___shl_load)
+choke me
+#else
+f = shl_load;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5798: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5801: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5804: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5807: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_shl_load=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_shl_load=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:5817: result: $ac_cv_func_shl_load" >&5
+echo "${ECHO_T}$ac_cv_func_shl_load" >&6
+if test $ac_cv_func_shl_load = yes; then
+  lt_cv_dlopen="shl_load"
+else
+  echo "$as_me:5822: checking for shl_load in -ldld" >&5
+echo $ECHO_N "checking for shl_load in -ldld... $ECHO_C" >&6
+if test "${ac_cv_lib_dld_shl_load+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldld  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 5830 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char shl_load ();
+int
+main ()
+{
+shl_load ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5849: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5852: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5855: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5858: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dld_shl_load=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dld_shl_load=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:5869: result: $ac_cv_lib_dld_shl_load" >&5
+echo "${ECHO_T}$ac_cv_lib_dld_shl_load" >&6
+if test $ac_cv_lib_dld_shl_load = yes; then
+  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"
+else
+  echo "$as_me:5874: checking for dlopen" >&5
+echo $ECHO_N "checking for dlopen... $ECHO_C" >&6
+if test "${ac_cv_func_dlopen+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 5880 "configure"
+#include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char dlopen (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dlopen ();
+char (*f) ();
+
+int
+main ()
+{
+/* 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_dlopen) || defined (__stub___dlopen)
+choke me
+#else
+f = dlopen;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5911: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5914: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5917: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5920: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_dlopen=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_dlopen=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:5930: result: $ac_cv_func_dlopen" >&5
+echo "${ECHO_T}$ac_cv_func_dlopen" >&6
+if test $ac_cv_func_dlopen = yes; then
+  lt_cv_dlopen="dlopen"
+else
+  echo "$as_me:5935: checking for dlopen in -ldl" >&5
+echo $ECHO_N "checking for dlopen in -ldl... $ECHO_C" >&6
+if test "${ac_cv_lib_dl_dlopen+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldl  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 5943 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dlopen ();
+int
+main ()
+{
+dlopen ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:5962: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:5965: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:5968: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:5971: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dl_dlopen=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dl_dlopen=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:5982: result: $ac_cv_lib_dl_dlopen" >&5
+echo "${ECHO_T}$ac_cv_lib_dl_dlopen" >&6
+if test $ac_cv_lib_dl_dlopen = yes; then
+  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
+else
+  echo "$as_me:5987: checking for dlopen in -lsvld" >&5
+echo $ECHO_N "checking for dlopen in -lsvld... $ECHO_C" >&6
+if test "${ac_cv_lib_svld_dlopen+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsvld  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 5995 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dlopen ();
+int
+main ()
+{
+dlopen ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6014: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6017: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6020: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6023: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_svld_dlopen=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_svld_dlopen=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:6034: result: $ac_cv_lib_svld_dlopen" >&5
+echo "${ECHO_T}$ac_cv_lib_svld_dlopen" >&6
+if test $ac_cv_lib_svld_dlopen = yes; then
+  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
+else
+  echo "$as_me:6039: checking for dld_link in -ldld" >&5
+echo $ECHO_N "checking for dld_link in -ldld... $ECHO_C" >&6
+if test "${ac_cv_lib_dld_dld_link+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-ldld  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 6047 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char dld_link ();
+int
+main ()
+{
+dld_link ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:6066: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6069: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:6072: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6075: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dld_dld_link=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dld_dld_link=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:6086: result: $ac_cv_lib_dld_dld_link" >&5
+echo "${ECHO_T}$ac_cv_lib_dld_dld_link" >&6
+if test $ac_cv_lib_dld_dld_link = yes; then
+  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"
+fi
+
+fi
+
+fi
+
+fi
+
+fi
+
+fi
+
+    ;;
+  esac
+
+  if test "x$lt_cv_dlopen" != xno; then
+    enable_dlopen=yes
+  else
+    enable_dlopen=no
+  fi
+
+  case $lt_cv_dlopen in
+  dlopen)
+    save_CPPFLAGS="$CPPFLAGS"
+        test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
+
+    save_LDFLAGS="$LDFLAGS"
+    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
+
+    save_LIBS="$LIBS"
+    LIBS="$lt_cv_dlopen_libs $LIBS"
+
+    echo "$as_me:6122: checking whether a program can dlopen itself" >&5
+echo $ECHO_N "checking whether a program can dlopen itself... $ECHO_C" >&6
+if test "${lt_cv_dlopen_self+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+         if test "$cross_compiling" = yes; then :
+  lt_cv_dlopen_self=cross
+else
+    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+  lt_status=$lt_dlunknown
+  cat > conftest.$ac_ext <<EOF
+#line 6133 "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+#  define LT_DLGLOBAL          RTLD_GLOBAL
+#else
+#  ifdef DL_GLOBAL
+#    define LT_DLGLOBAL                DL_GLOBAL
+#  else
+#    define LT_DLGLOBAL                0
+#  endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+   find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+#  ifdef RTLD_LAZY
+#    define LT_DLLAZY_OR_NOW           RTLD_LAZY
+#  else
+#    ifdef DL_LAZY
+#      define LT_DLLAZY_OR_NOW         DL_LAZY
+#    else
+#      ifdef RTLD_NOW
+#        define LT_DLLAZY_OR_NOW       RTLD_NOW
+#      else
+#        ifdef DL_NOW
+#          define LT_DLLAZY_OR_NOW     DL_NOW
+#        else
+#          define LT_DLLAZY_OR_NOW     0
+#        endif
+#      endif
+#    endif
+#  endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+  int status = $lt_dlunknown;
+
+  if (self)
+    {
+      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
+      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+      /* dlclose (self); */
+    }
+
+    exit (status);
+}
+EOF
+  if { (eval echo "$as_me:6194: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6197: \$? = $ac_status" >&5
+  (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+    (./conftest; exit; ) 2>/dev/null
+    lt_status=$?
+    case x$lt_status in
+      x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
+      x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
+      x$lt_unknown|x*) lt_cv_dlopen_self=no ;;
+    esac
+  else :
+    # compilation failed
+    lt_cv_dlopen_self=no
+  fi
+fi
+rm -fr conftest*
+
+fi
+echo "$as_me:6214: result: $lt_cv_dlopen_self" >&5
+echo "${ECHO_T}$lt_cv_dlopen_self" >&6
+
+    if test "x$lt_cv_dlopen_self" = xyes; then
+      LDFLAGS="$LDFLAGS $link_static_flag"
+      echo "$as_me:6219: checking whether a statically linked program can dlopen itself" >&5
+echo $ECHO_N "checking whether a statically linked program can dlopen itself... $ECHO_C" >&6
+if test "${lt_cv_dlopen_self_static+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+         if test "$cross_compiling" = yes; then :
+  lt_cv_dlopen_self_static=cross
+else
+    lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
+  lt_status=$lt_dlunknown
+  cat > conftest.$ac_ext <<EOF
+#line 6230 "configure"
+#include "confdefs.h"
+
+#if HAVE_DLFCN_H
+#include <dlfcn.h>
+#endif
+
+#include <stdio.h>
+
+#ifdef RTLD_GLOBAL
+#  define LT_DLGLOBAL          RTLD_GLOBAL
+#else
+#  ifdef DL_GLOBAL
+#    define LT_DLGLOBAL                DL_GLOBAL
+#  else
+#    define LT_DLGLOBAL                0
+#  endif
+#endif
+
+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
+   find out it does not work in some platform. */
+#ifndef LT_DLLAZY_OR_NOW
+#  ifdef RTLD_LAZY
+#    define LT_DLLAZY_OR_NOW           RTLD_LAZY
+#  else
+#    ifdef DL_LAZY
+#      define LT_DLLAZY_OR_NOW         DL_LAZY
+#    else
+#      ifdef RTLD_NOW
+#        define LT_DLLAZY_OR_NOW       RTLD_NOW
+#      else
+#        ifdef DL_NOW
+#          define LT_DLLAZY_OR_NOW     DL_NOW
+#        else
+#          define LT_DLLAZY_OR_NOW     0
+#        endif
+#      endif
+#    endif
+#  endif
+#endif
+
+#ifdef __cplusplus
+extern "C" void exit (int);
+#endif
+
+void fnord() { int i=42;}
+int main ()
+{
+  void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
+  int status = $lt_dlunknown;
+
+  if (self)
+    {
+      if (dlsym (self,"fnord"))       status = $lt_dlno_uscore;
+      else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
+      /* dlclose (self); */
+    }
+
+    exit (status);
+}
+EOF
+  if { (eval echo "$as_me:6291: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:6294: \$? = $ac_status" >&5
+  (exit $ac_status); } && test -s conftest${ac_exeext} 2>/dev/null; then
+    (./conftest; exit; ) 2>/dev/null
+    lt_status=$?
+    case x$lt_status in
+      x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
+      x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
+      x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;;
+    esac
+  else :
+    # compilation failed
+    lt_cv_dlopen_self_static=no
+  fi
+fi
+rm -fr conftest*
+
+fi
+echo "$as_me:6311: result: $lt_cv_dlopen_self_static" >&5
+echo "${ECHO_T}$lt_cv_dlopen_self_static" >&6
+    fi
+
+    CPPFLAGS="$save_CPPFLAGS"
+    LDFLAGS="$save_LDFLAGS"
+    LIBS="$save_LIBS"
+    ;;
+  esac
+
+  case $lt_cv_dlopen_self in
+  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
+  *) enable_dlopen_self=unknown ;;
+  esac
+
+  case $lt_cv_dlopen_self_static in
+  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
+  *) enable_dlopen_self_static=unknown ;;
+  esac
+fi
+
+if test "$enable_shared" = yes && test "$GCC" = yes; then
+  case $archive_cmds in
+  *'~'*)
+    # FIXME: we may have to deal with multi-command sequences.
+    ;;
+  '$CC '*)
+    # Test whether the compiler implicitly links with -lc since on some
+    # systems, -lgcc has to come before -lc. If gcc already passes -lc
+    # to ld, don't add -lc before -lgcc.
+    echo "$as_me:6341: checking whether -lc should be explicitly linked in" >&5
+echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6
+    if test "${lt_cv_archive_cmds_need_lc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  $rm conftest*
+    echo 'static int dummy;' > conftest.$ac_ext
+
+    if { (eval echo "$as_me:6349: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6352: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+      soname=conftest
+      lib=conftest
+      libobjs=conftest.$ac_objext
+      deplibs=
+      wl=$lt_cv_prog_cc_wl
+      compiler_flags=-v
+      linker_flags=-v
+      verstring=
+      output_objdir=.
+      libname=conftest
+      save_allow_undefined_flag=$allow_undefined_flag
+      allow_undefined_flag=
+      if { (eval echo "$as_me:6366: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\"") >&5
+  (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5
+  ac_status=$?
+  echo "$as_me:6369: \$? = $ac_status" >&5
+  (exit $ac_status); }
+      then
+       lt_cv_archive_cmds_need_lc=no
+      else
+       lt_cv_archive_cmds_need_lc=yes
+      fi
+      allow_undefined_flag=$save_allow_undefined_flag
+    else
+      cat conftest.err 1>&5
+    fi
+fi
+
+    echo "$as_me:6382: result: $lt_cv_archive_cmds_need_lc" >&5
+echo "${ECHO_T}$lt_cv_archive_cmds_need_lc" >&6
+    ;;
+  esac
+fi
+need_lc=${lt_cv_archive_cmds_need_lc-yes}
+
+# The second clause should only fire when bootstrapping the
+# libtool distribution, otherwise you forgot to ship ltmain.sh
+# with your package, and you will get complaints that there are
+# no rules to generate ltmain.sh.
+if test -f "$ltmain"; then
+  :
+else
+  # If there is no Makefile yet, we rely on a make rule to execute
+  # `config.status --recheck' to rerun these tests and create the
+  # libtool script then.
+  test -f Makefile && make "$ltmain"
+fi
+
+if test -f "$ltmain"; then
+  trap "$rm \"${ofile}T\"; exit 1" 1 2 15
+  $rm -f "${ofile}T"
+
+  echo creating $ofile
+
+  # Now quote all the things that may contain metacharacters while being
+  # careful not to overquote the AC_SUBSTed values.  We take copies of the
+  # variables and quote the copies for generation of the libtool script.
+  for var in echo old_CC old_CFLAGS \
+    AR AR_FLAGS CC LD LN_S NM SHELL \
+    reload_flag reload_cmds wl \
+    pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
+    thread_safe_flag_spec whole_archive_flag_spec libname_spec \
+    library_names_spec soname_spec \
+    RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
+    old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
+    postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
+    old_striplib striplib file_magic_cmd export_symbols_cmds \
+    deplibs_check_method allow_undefined_flag no_undefined_flag \
+    finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
+    global_symbol_to_c_name_address \
+    hardcode_libdir_flag_spec hardcode_libdir_separator  \
+    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
+    compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
+
+    case $var in
+    reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
+    old_postinstall_cmds | old_postuninstall_cmds | \
+    export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
+    extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
+    postinstall_cmds | postuninstall_cmds | \
+    finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
+      # Double-quote double-evaled strings.
+      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
+      ;;
+    *)
+      eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
+      ;;
+    esac
+  done
+
+  cat <<__EOF__ > "${ofile}T"
+#! $SHELL
+
+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
+# NOTE: Changes made to this file will be lost: look at ltmain.sh.
+#
+# Copyright (C) 1996-2000 Free Software Foundation, Inc.
+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+#
+# 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.
+#
+# 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.
+
+# Sed that helps us avoid accidentally triggering echo(1) options like -n.
+Xsed="sed -e s/^X//"
+
+# The HP-UX ksh and POSIX shell print the target directory to stdout
+# if CDPATH is set.
+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
+
+# ### BEGIN LIBTOOL CONFIG
+
+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+
+# Shell to use when invoking shell scripts.
+SHELL=$lt_SHELL
+
+# Whether or not to build shared libraries.
+build_libtool_libs=$enable_shared
+
+# Whether or not to build static libraries.
+build_old_libs=$enable_static
+
+# Whether or not to add -lc for building shared libraries.
+build_libtool_need_lc=$need_lc
+
+# Whether or not to optimize for fast installation.
+fast_install=$enable_fast_install
+
+# The host system.
+host_alias=$host_alias
+host=$host
+
+# An echo program that does not interpret backslashes.
+echo=$lt_echo
+
+# The archiver.
+AR=$lt_AR
+AR_FLAGS=$lt_AR_FLAGS
+
+# The default C compiler.
+CC=$lt_CC
+
+# Is the compiler the GNU C compiler?
+with_gcc=$GCC
+
+# The linker used to build libraries.
+LD=$lt_LD
+
+# Whether we need hard or soft links.
+LN_S=$lt_LN_S
+
+# A BSD-compatible nm program.
+NM=$lt_NM
+
+# A symbol stripping program
+STRIP=$STRIP
+
+# Used to examine libraries when file_magic_cmd begins "file"
+MAGIC_CMD=$MAGIC_CMD
+
+# Used on cygwin: DLL creation program.
+DLLTOOL="$DLLTOOL"
+
+# Used on cygwin: object dumper.
+OBJDUMP="$OBJDUMP"
+
+# Used on cygwin: assembler.
+AS="$AS"
+
+# The name of the directory that contains temporary libtool files.
+objdir=$objdir
+
+# How to create reloadable object files.
+reload_flag=$lt_reload_flag
+reload_cmds=$lt_reload_cmds
+
+# How to pass a linker flag through the compiler.
+wl=$lt_wl
+
+# Object file suffix (normally "o").
+objext="$ac_objext"
+
+# Old archive suffix (normally "a").
+libext="$libext"
+
+# Executable file suffix (normally "").
+exeext="$exeext"
+
+# Additional compiler flags for building library objects.
+pic_flag=$lt_pic_flag
+pic_mode=$pic_mode
+
+# Does compiler simultaneously support -c and -o options?
+compiler_c_o=$lt_compiler_c_o
+
+# Can we write directly to a .lo ?
+compiler_o_lo=$lt_compiler_o_lo
+
+# Must we lock files when doing compilation ?
+need_locks=$lt_need_locks
+
+# Do we need the lib prefix for modules?
+need_lib_prefix=$need_lib_prefix
+
+# Do we need a version for libraries?
+need_version=$need_version
+
+# Whether dlopen is supported.
+dlopen_support=$enable_dlopen
+
+# Whether dlopen of programs is supported.
+dlopen_self=$enable_dlopen_self
+
+# Whether dlopen of statically linked programs is supported.
+dlopen_self_static=$enable_dlopen_self_static
+
+# Compiler flag to prevent dynamic linking.
+link_static_flag=$lt_link_static_flag
+
+# Compiler flag to turn off builtin functions.
+no_builtin_flag=$lt_no_builtin_flag
+
+# Compiler flag to allow reflexive dlopens.
+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
+
+# Compiler flag to generate shared objects directly from archives.
+whole_archive_flag_spec=$lt_whole_archive_flag_spec
+
+# Compiler flag to generate thread-safe objects.
+thread_safe_flag_spec=$lt_thread_safe_flag_spec
+
+# Library versioning type.
+version_type=$version_type
+
+# Format of library name prefix.
+libname_spec=$lt_libname_spec
+
+# List of archive names.  First name is the real one, the rest are links.
+# The last name is the one that the linker finds with -lNAME.
+library_names_spec=$lt_library_names_spec
+
+# The coded name of the library, if different from the real name.
+soname_spec=$lt_soname_spec
+
+# Commands used to build and install an old-style archive.
+RANLIB=$lt_RANLIB
+old_archive_cmds=$lt_old_archive_cmds
+old_postinstall_cmds=$lt_old_postinstall_cmds
+old_postuninstall_cmds=$lt_old_postuninstall_cmds
+
+# Create an old-style archive from a shared archive.
+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
+
+# Create a temporary old-style archive to link instead of a shared archive.
+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
+
+# Commands used to build and install a shared archive.
+archive_cmds=$lt_archive_cmds
+archive_expsym_cmds=$lt_archive_expsym_cmds
+postinstall_cmds=$lt_postinstall_cmds
+postuninstall_cmds=$lt_postuninstall_cmds
+
+# Commands to strip libraries.
+old_striplib=$lt_old_striplib
+striplib=$lt_striplib
+
+# Method to check whether dependent libraries are shared objects.
+deplibs_check_method=$lt_deplibs_check_method
+
+# Command to use when deplibs_check_method == file_magic.
+file_magic_cmd=$lt_file_magic_cmd
+
+# Flag that allows shared libraries with undefined symbols to be built.
+allow_undefined_flag=$lt_allow_undefined_flag
+
+# Flag that forces no undefined symbols.
+no_undefined_flag=$lt_no_undefined_flag
+
+# Commands used to finish a libtool library installation in a directory.
+finish_cmds=$lt_finish_cmds
+
+# Same as above, but a single script fragment to be evaled but not shown.
+finish_eval=$lt_finish_eval
+
+# Take the output of nm and produce a listing of raw symbols and C names.
+global_symbol_pipe=$lt_global_symbol_pipe
+
+# Transform the output of nm in a proper C declaration
+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl
+
+# Transform the output of nm in a C name address pair
+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address
+
+# This is the shared library runtime path variable.
+runpath_var=$runpath_var
+
+# This is the shared library path variable.
+shlibpath_var=$shlibpath_var
+
+# Is shlibpath searched before the hard-coded library search path?
+shlibpath_overrides_runpath=$shlibpath_overrides_runpath
+
+# How to hardcode a shared library path into an executable.
+hardcode_action=$hardcode_action
+
+# Whether we should hardcode library paths into libraries.
+hardcode_into_libs=$hardcode_into_libs
+
+# Flag to hardcode \$libdir into a binary during linking.
+# This must work even if \$libdir does not exist.
+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
+
+# Whether we need a single -rpath flag with a separated argument.
+hardcode_libdir_separator=$lt_hardcode_libdir_separator
+
+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
+# resulting binary.
+hardcode_direct=$hardcode_direct
+
+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
+# resulting binary.
+hardcode_minus_L=$hardcode_minus_L
+
+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
+# the resulting binary.
+hardcode_shlibpath_var=$hardcode_shlibpath_var
+
+# Variables whose values should be saved in libtool wrapper scripts and
+# restored at relink time.
+variables_saved_for_relink="$variables_saved_for_relink"
+
+# Whether libtool must link a program against all its dependency libraries.
+link_all_deplibs=$link_all_deplibs
+
+# Compile-time system search path for libraries
+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
+
+# Run-time system search path for libraries
+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
+
+# Fix the shell variable \$srcfile for the compiler.
+fix_srcfile_path="$fix_srcfile_path"
+
+# Set to yes if exported symbols are required.
+always_export_symbols=$always_export_symbols
+
+# The commands to list exported symbols.
+export_symbols_cmds=$lt_export_symbols_cmds
+
+# The commands to extract the exported symbol list from a shared archive.
+extract_expsyms_cmds=$lt_extract_expsyms_cmds
+
+# Symbols that should not be listed in the preloaded symbols.
+exclude_expsyms=$lt_exclude_expsyms
+
+# Symbols that must always be exported.
+include_expsyms=$lt_include_expsyms
+
+# ### END LIBTOOL CONFIG
+
+__EOF__
+
+  case $host_os in
+  aix3*)
+    cat <<\EOF >> "${ofile}T"
+
+# AIX sometimes has problems with the GCC collect2 program.  For some
+# reason, if we set the COLLECT_NAMES environment variable, the problems
+# vanish in a puff of smoke.
+if test "X${COLLECT_NAMES+set}" != Xset; then
+  COLLECT_NAMES=
+  export COLLECT_NAMES
+fi
+EOF
+    ;;
+  esac
+
+  case $host_os in
+  cygwin* | mingw* | pw32* | os2*)
+    cat <<'EOF' >> "${ofile}T"
+      # This is a source program that is used to create dlls on Windows
+      # Don't remove nor modify the starting and closing comments
+# /* ltdll.c starts here */
+# #define WIN32_LEAN_AND_MEAN
+# #include <windows.h>
+# #undef WIN32_LEAN_AND_MEAN
+# #include <stdio.h>
+#
+# #ifndef __CYGWIN__
+# #  ifdef __CYGWIN32__
+# #    define __CYGWIN__ __CYGWIN32__
+# #  endif
+# #endif
+#
+# #ifdef __cplusplus
+# extern "C" {
+# #endif
+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
+# #ifdef __cplusplus
+# }
+# #endif
+#
+# #ifdef __CYGWIN__
+# #include <cygwin/cygwin_dll.h>
+# DECLARE_CYGWIN_DLL( DllMain );
+# #endif
+# HINSTANCE __hDllInstance_base;
+#
+# BOOL APIENTRY
+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
+# {
+#   __hDllInstance_base = hInst;
+#   return TRUE;
+# }
+# /* ltdll.c ends here */
+       # This is a source program that is used to create import libraries
+       # on Windows for dlls which lack them. Don't remove nor modify the
+       # starting and closing comments
+# /* impgen.c starts here */
+# /*   Copyright (C) 1999-2000 Free Software Foundation, Inc.
+#
+#  This file is part of GNU libtool.
+#
+#  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.
+#  */
+#
+# #include <stdio.h>           /* for printf() */
+# #include <unistd.h>          /* for open(), lseek(), read() */
+# #include <fcntl.h>           /* for O_RDONLY, O_BINARY */
+# #include <string.h>          /* for strdup() */
+#
+# /* O_BINARY isn't required (or even defined sometimes) under Unix */
+# #ifndef O_BINARY
+# #define O_BINARY 0
+# #endif
+#
+# static unsigned int
+# pe_get16 (fd, offset)
+#      int fd;
+#      int offset;
+# {
+#   unsigned char b[2];
+#   lseek (fd, offset, SEEK_SET);
+#   read (fd, b, 2);
+#   return b[0] + (b[1]<<8);
+# }
+#
+# static unsigned int
+# pe_get32 (fd, offset)
+#     int fd;
+#     int offset;
+# {
+#   unsigned char b[4];
+#   lseek (fd, offset, SEEK_SET);
+#   read (fd, b, 4);
+#   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
+# }
 #
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already.  You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
+# static unsigned int
+# pe_as32 (ptr)
+#      void *ptr;
+# {
+#   unsigned char *b = ptr;
+#   return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
+# }
 #
+# int
+# main (argc, argv)
+#     int argc;
+#     char *argv[];
+# {
+#     int dll;
+#     unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
+#     unsigned long export_rva, export_size, nsections, secptr, expptr;
+#     unsigned long name_rvas, nexp;
+#     unsigned char *expdata, *erva;
+#     char *filename, *dll_name;
+#
+#     filename = argv[1];
+#
+#     dll = open(filename, O_RDONLY|O_BINARY);
+#     if (dll < 1)
+#      return 1;
+#
+#     dll_name = filename;
+#
+#     for (i=0; filename[i]; i++)
+#      if (filename[i] == '/' || filename[i] == '\\'  || filename[i] == ':')
+#          dll_name = filename + i +1;
+#
+#     pe_header_offset = pe_get32 (dll, 0x3c);
+#     opthdr_ofs = pe_header_offset + 4 + 20;
+#     num_entries = pe_get32 (dll, opthdr_ofs + 92);
+#
+#     if (num_entries < 1) /* no exports */
+#      return 1;
+#
+#     export_rva = pe_get32 (dll, opthdr_ofs + 96);
+#     export_size = pe_get32 (dll, opthdr_ofs + 100);
+#     nsections = pe_get16 (dll, pe_header_offset + 4 +2);
+#     secptr = (pe_header_offset + 4 + 20 +
+#            pe_get16 (dll, pe_header_offset + 4 + 16));
+#
+#     expptr = 0;
+#     for (i = 0; i < nsections; i++)
+#     {
+#      char sname[8];
+#      unsigned long secptr1 = secptr + 40 * i;
+#      unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
+#      unsigned long vsize = pe_get32 (dll, secptr1 + 16);
+#      unsigned long fptr = pe_get32 (dll, secptr1 + 20);
+#      lseek(dll, secptr1, SEEK_SET);
+#      read(dll, sname, 8);
+#      if (vaddr <= export_rva && vaddr+vsize > export_rva)
+#      {
+#          expptr = fptr + (export_rva - vaddr);
+#          if (export_rva + export_size > vaddr + vsize)
+#              export_size = vsize - (export_rva - vaddr);
+#          break;
+#      }
+#     }
+#
+#     expdata = (unsigned char*)malloc(export_size);
+#     lseek (dll, expptr, SEEK_SET);
+#     read (dll, expdata, export_size);
+#     erva = expdata - export_rva;
+#
+#     nexp = pe_as32 (expdata+24);
+#     name_rvas = pe_as32 (expdata+32);
+#
+#     printf ("EXPORTS\n");
+#     for (i = 0; i<nexp; i++)
+#     {
+#      unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
+#      printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
+#     }
+#
+#     return 0;
+# }
+# /* impgen.c ends here */
+
 EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
-  case `(ac_space=' '; set | grep ac_space) 2>&1` in
-  *ac_space=\ *)
-    # `set' does not quote correctly, so add quotes (double-quote substitution
-    # turns \\\\ into \\, and sed turns \\ into \).
-    sed -n \
-      -e "s/'/'\\\\''/g" \
-      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
-    ;;
-  *)
-    # `set' quotes correctly as required by POSIX, so do not add quotes.
-    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
     ;;
-  esac >> confcache
-if cmp -s $cache_file confcache; then
-  :
-else
-  if test -w $cache_file; then
-    echo "updating cache $cache_file"
-    cat confcache > $cache_file
-  else
-    echo "not updating unwritable cache $cache_file"
-  fi
-fi
-rm -f confcache
-
+  esac
 
-# Actually configure libtool.  ac_aux_dir is where install-sh is found.
-CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
-LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
-LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
-DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
-${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \
-$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \
-|| { echo "configure: error: libtool configure failed" 1>&2; exit 1; }
+  # We use sed instead of cat because bash on DJGPP gets confused if
+  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
+  # text mode, it properly converts lines to CR/LF.  This bash problem
+  # is reportedly fixed, but why not run on old versions too?
+  sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1)
 
-# Reload cache, that may have been modified by ltconfig
-if test -r "$cache_file"; then
-  echo "loading cache $cache_file"
-  . $cache_file
-else
-  echo "creating cache $cache_file"
-  > $cache_file
+  mv -f "${ofile}T" "$ofile" || \
+    (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T")
+  chmod +x "$ofile"
 fi
 
-
 # This can be used to rebuild libtool when needed
-LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh"
+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
 
 # Always use our own libtool.
 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
 
-# Redirect the config.log output again, so that the ltconfig log is not
-# clobbered by the next message.
-exec 5>>./config.log
-
-
+# Prevent multiple expansion
 
 ac_header_dirent=no
-for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:1887: checking for $ac_hdr that defines DIR" >&5
-if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 1892 "configure"
+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:6950: checking for $ac_hdr that defines DIR" >&5
+echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 6956 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
-int main() {
-DIR *dirp = 0;
-; return 0; }
-EOF
-if { (eval echo configure:1900: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
-  eval "ac_cv_header_dirent_$ac_safe=yes"
+
+int
+main ()
+{
+if ((DIR *) 0)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:6971: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:6974: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:6977: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:6980: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_Header=yes"
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_dirent_$ac_safe=no"
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_Header=no"
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-if eval "test \"`echo '$ac_cv_header_dirent_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
+echo "$as_me:6990: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1
 EOF
- ac_header_dirent=$ac_hdr; break
-else
-  echo "$ac_t""no" 1>&6
+
+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 $ac_n "checking for opendir""... $ac_c" 1>&6
-echo "configure:1925: checking for opendir" >&5
-if eval "test \"`echo '$''{'ac_cv_func_opendir'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 1930 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char opendir(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char opendir();
-
-int main() {
-
-/* 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_opendir) || defined (__stub___opendir)
-choke me
-#else
-opendir();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo configure:1953: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_opendir=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_opendir=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'opendir`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  :
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-if test $ac_cv_func_opendir = no; then
- echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:1974: checking for opendir in -ldir" >&5
-ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+  echo "$as_me:7003: checking for opendir in -ldir" >&5
+echo $ECHO_N "checking for opendir in -ldir... $ECHO_C" >&6
+if test "${ac_cv_lib_dir_opendir+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldir  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 1982 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 7011 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char opendir();
-
-int main() {
-opendir()
-; return 0; }
-EOF
-if { (eval echo configure:1993: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+   builtin and then its argument prototype would still apply.  */
+char opendir ();
+int
+main ()
+{
+opendir ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7030: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7033: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7036: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7039: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_dir_opendir=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_dir_opendir=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:7050: result: $ac_cv_lib_dir_opendir" >&5
+echo "${ECHO_T}$ac_cv_lib_dir_opendir" >&6
+if test $ac_cv_lib_dir_opendir = yes; then
   LIBS="$LIBS -ldir"
-else
-  echo "$ac_t""no" 1>&6
 fi
 
-fi
 else
-echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:2016: checking for opendir in -lx" >&5
-ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+  echo "$as_me:7057: checking for opendir in -lx" >&5
+echo $ECHO_N "checking for opendir in -lx... $ECHO_C" >&6
+if test "${ac_cv_lib_x_opendir+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lx  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2024 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 7065 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char opendir();
-
-int main() {
-opendir()
-; return 0; }
-EOF
-if { (eval echo configure:2035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+   builtin and then its argument prototype would still apply.  */
+char opendir ();
+int
+main ()
+{
+opendir ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7084: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7087: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7090: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7093: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_x_opendir=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_x_opendir=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:7104: result: $ac_cv_lib_x_opendir" >&5
+echo "${ECHO_T}$ac_cv_lib_x_opendir" >&6
+if test $ac_cv_lib_x_opendir = yes; then
   LIBS="$LIBS -lx"
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:2058: checking for ANSI C header files" >&5
-if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7112: 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 <<EOF
-#line 2063 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7118 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
 #include <string.h>
 #include <float.h>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2071: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
+
+_ACEOF
+if { (eval echo "$as_me:7126: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:7132: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
   ac_cv_header_stdc=yes
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
   ac_cv_header_stdc=no
 fi
-rm -f conftest*
+rm -f conftest.err 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 <<EOF
-#line 2088 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7154 "configure"
 #include "confdefs.h"
 #include <string.h>
-EOF
+
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "memchr" >/dev/null 2>&1; then
   :
 else
-  rm -rf conftest*
   ac_cv_header_stdc=no
 fi
 rm -f conftest*
@@ -2101,16 +7168,16 @@ 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 <<EOF
-#line 2106 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7172 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
-EOF
+
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "free" >/dev/null 2>&1; then
   :
 else
-  rm -rf conftest*
   ac_cv_header_stdc=no
 fi
 rm -f conftest*
 
 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
+  if test "$cross_compiling" = yes; then
   :
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2127 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7193 "configure"
 #include "confdefs.h"
 #include <ctype.h>
-#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#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)) exit(2);
-exit (0); }
+#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
 
-EOF
-if { (eval echo configure:2138: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+#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))
+      exit(2);
+  exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:7219: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7222: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:7224: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7227: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   :
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_header_stdc=no
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_stdc=no
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 fi
 fi
-
-echo "$ac_t""$ac_cv_header_stdc" 1>&6
+echo "$as_me:7240: 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 <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define STDC_HEADERS 1
 EOF
 
 fi
 
-echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:2162: checking for sys/wait.h that is POSIX.1 compatible" >&5
-if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7250: 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 <<EOF
-#line 2167 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7256 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/wait.h>
 #ifndef WEXITSTATUS
-#define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8)
+# define WEXITSTATUS(stat_val) ((unsigned)(stat_val) >> 8)
 #endif
 #ifndef WIFEXITED
-#define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
+# define WIFEXITED(stat_val) (((stat_val) & 255) == 0)
 #endif
-int main() {
-int s;
-wait (&s);
-s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
-; return 0; }
-EOF
-if { (eval echo configure:2183: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+
+int
+main ()
+{
+  int s;
+  wait (&s);
+  s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7278: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7281: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7284: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7287: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_header_sys_wait_h=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_header_sys_wait_h=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_sys_wait_h=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_header_sys_wait_h" 1>&6
+echo "$as_me:7297: 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 <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define HAVE_SYS_WAIT_H 1
 EOF
 
 fi
 
-for ac_hdr in fcntl.h limits.h unistd.h sys/time.h utmp.h utmpx.h
+for ac_header in fcntl.h limits.h unistd.h sys/time.h utmp.h utmpx.h \
+       termios.h termio.h sgtty.h sys/ioctl.h syslog.h paths.h usersec.h \
+       utime.h ulimit.h sys/resource.h gshadow.h shadow.h lastlog.h \
+       rpc/key_prot.h
 do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2207: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2212 "configure"
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:7313: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7319 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2217: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:7323: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:7329: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
+  eval "$as_ac_Header=no"
 fi
-rm -f conftest*
+rm -f conftest.err conftest.$ac_ext
 fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
+echo "$as_me:7348: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
 EOF
-else
-  echo "$ac_t""no" 1>&6
+
 fi
 done
 
-for ac_hdr in termios.h termio.h sgtty.h sys/ioctl.h syslog.h
+for ac_func in a64l fchmod fchown fsync getgroups gethostname getspnam \
+       gettimeofday getusershell getutent initgroups lchown lckpwdf lstat \
+       memcpy memset mkstemp setgroups sigaction strchr updwtmp updwtmpx
 do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2247: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2252 "configure"
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:7363: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7369 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2257: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
+
+int
+main ()
+{
+/* 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
+#else
+f = $ac_func;
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:7400: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:7403: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:7406: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7409: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:7419: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
-else
-  echo "$ac_t""no" 1>&6
+
 fi
 done
 
-for ac_hdr in paths.h usersec.h utime.h ulimit.h sys/resource.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2287: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7429: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2292 "configure"
+  ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+#line 7437 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2297: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
+#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;
+}
+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
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX                  -qlanglvl=ansi
+# Ultrix and OSF/1     -std1
+# HP-UX 10.20 and later        -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4                 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+  CC="$ac_save_CC $ac_arg"
+  rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7486: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7489: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7492: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7495: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext
 done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
 
-for ac_hdr in gshadow.h shadow.h lastlog.h rpc/key_prot.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2327: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2332 "configure"
-#include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2337: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
 fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
 
+case "x$ac_cv_prog_cc_stdc" in
+  x|xno)
+    echo "$as_me:7512: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+  *)
+    echo "$as_me:7515: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+    CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
 
-echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:2365: checking for working const" >&5
-if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7520: 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 <<EOF
-#line 2370 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7526 "configure"
 #include "confdefs.h"
 
-int main() {
-
-/* Ultrix mips cc rejects this.  */
-typedef int charset[2]; const charset x;
-/* SunOS 4.1.1 cc rejects this.  */
-char const *const *ccp;
-char **p;
-/* 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";
-ccp = &g + (g ? g-g : 0);
-/* HPUX 7.0 cc rejects these. */
-++ccp;
-p = (char**) ccp;
-ccp = (char const *const *) p;
-{ /* SCO 3.2v4 cc rejects this.  */
-  char *t;
-  char const *s = 0 ? (char *) 0 : (char const *) 0;
-
-  *t++ = 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;
-}
+int
+main ()
+{
+/* FIXME: Include the comments suggested by Paul. */
+#ifndef __cplusplus
+  /* Ultrix mips cc rejects this.  */
+  typedef int charset[2];
+  const charset x;
+  /* SunOS 4.1.1 cc rejects this.  */
+  char const *const *ccp;
+  char **p;
+  /* 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";
+  ccp = &g + (g ? g-g : 0);
+  /* HPUX 7.0 cc rejects these. */
+  ++ccp;
+  p = (char**) ccp;
+  ccp = (char const *const *) p;
+  { /* SCO 3.2v4 cc rejects this.  */
+    char *t;
+    char const *s = 0 ? (char *) 0 : (char const *) 0;
+
+    *t++ = 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;
+  }
+#endif
 
-; return 0; }
-EOF
-if { (eval echo configure:2419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7584: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7587: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7590: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7593: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_c_const=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_c_const=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_c_const=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_c_const" 1>&6
+echo "$as_me:7603: 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 <<\EOF
-#define const 
+
+cat >>confdefs.h <<\EOF
+#define const
 EOF
 
 fi
 
-echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:2440: checking for uid_t in sys/types.h" >&5
-if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7613: 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 <<EOF
-#line 2445 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7619 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
-EOF
+
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "uid_t" >/dev/null 2>&1; then
-  rm -rf conftest*
   ac_cv_type_uid_t=yes
 else
-  rm -rf conftest*
   ac_cv_type_uid_t=no
 fi
 rm -f conftest*
 
 fi
-
-echo "$ac_t""$ac_cv_type_uid_t" 1>&6
+echo "$as_me:7633: 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 <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define uid_t int
 EOF
 
-  cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define gid_t int
 EOF
 
 fi
 
-echo $ac_n "checking for off_t""... $ac_c" 1>&6
-echo "configure:2474: checking for off_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2479 "configure"
+# 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:7653: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7659 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7665: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7668: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7671: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7674: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_Header=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_Header=no"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:7684: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
 EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "(^|[^a-zA-Z_0-9])off_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
-  rm -rf conftest*
+
+fi
+done
+
+echo "$as_me:7694: checking for off_t" >&5
+echo $ECHO_N "checking for off_t... $ECHO_C" >&6
+if test "${ac_cv_type_off_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7700 "configure"
+#include "confdefs.h"
+$ac_includes_default
+int
+main ()
+{
+if ((off_t *) 0)
+  return 0;
+if (sizeof (off_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7715: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7718: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7721: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7724: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_type_off_t=yes
 else
-  rm -rf conftest*
-  ac_cv_type_off_t=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_off_t=no
 fi
-rm -f conftest*
-
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$ac_t""$ac_cv_type_off_t" 1>&6
-if test $ac_cv_type_off_t = no; then
-  cat >> confdefs.h <<\EOF
+echo "$as_me:7734: result: $ac_cv_type_off_t" >&5
+echo "${ECHO_T}$ac_cv_type_off_t" >&6
+if test $ac_cv_type_off_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
 #define off_t long
 EOF
 
 fi
 
-echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:2507: checking for pid_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7746: 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 <<EOF
-#line 2512 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7752 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "(^|[^a-zA-Z_0-9])pid_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
-  rm -rf conftest*
+$ac_includes_default
+int
+main ()
+{
+if ((pid_t *) 0)
+  return 0;
+if (sizeof (pid_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7767: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7770: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7773: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7776: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_type_pid_t=yes
 else
-  rm -rf conftest*
-  ac_cv_type_pid_t=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_pid_t=no
 fi
-rm -f conftest*
-
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$ac_t""$ac_cv_type_pid_t" 1>&6
-if test $ac_cv_type_pid_t = no; then
-  cat >> confdefs.h <<\EOF
+echo "$as_me:7786: 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 <<EOF
 #define pid_t int
 EOF
 
 fi
 
-echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:2540: checking for mode_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7798: checking for mode_t" >&5
+echo $ECHO_N "checking for mode_t... $ECHO_C" >&6
+if test "${ac_cv_type_mode_t+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2545 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7804 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "(^|[^a-zA-Z_0-9])mode_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
-  rm -rf conftest*
+$ac_includes_default
+int
+main ()
+{
+if ((mode_t *) 0)
+  return 0;
+if (sizeof (mode_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7819: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7822: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7825: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7828: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_type_mode_t=yes
 else
-  rm -rf conftest*
-  ac_cv_type_mode_t=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_mode_t=no
 fi
-rm -f conftest*
-
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$ac_t""$ac_cv_type_mode_t" 1>&6
-if test $ac_cv_type_mode_t = no; then
-  cat >> confdefs.h <<\EOF
+echo "$as_me:7838: result: $ac_cv_type_mode_t" >&5
+echo "${ECHO_T}$ac_cv_type_mode_t" >&6
+if test $ac_cv_type_mode_t = yes; then
+  :
+else
+
+cat >>confdefs.h <<EOF
 #define mode_t int
 EOF
 
 fi
 
-echo $ac_n "checking for st_rdev in struct stat""... $ac_c" 1>&6
-echo "configure:2573: checking for st_rdev in struct stat" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_st_rdev'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7850: 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 <<EOF
-#line 2578 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7856 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#include <sys/stat.h>
-int main() {
-struct stat s; s.st_rdev;
-; return 0; }
-EOF
-if { (eval echo configure:2586: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
-  ac_cv_struct_st_rdev=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_st_rdev=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_struct_st_rdev" 1>&6
-if test $ac_cv_struct_st_rdev = yes; then
-  cat >> confdefs.h <<\EOF
+$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 { (eval echo "$as_me:7870: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7873: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7876: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7879: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_member_struct_stat_st_rdev=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_member_struct_stat_st_rdev=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:7889: 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 <<EOF
+#define HAVE_STRUCT_STAT_ST_RDEV 1
+EOF
+
+cat >>confdefs.h <<\EOF
 #define HAVE_ST_RDEV 1
 EOF
 
 fi
 
-echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
-echo "configure:2607: checking whether stat file-mode macros are broken" >&5
-if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7903: checking whether stat file-mode macros are broken" >&5
+echo $ECHO_N "checking whether stat file-mode macros are broken... $ECHO_C" >&6
+if test "${ac_cv_header_stat_broken+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2612 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7909 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -2637,263 +7935,357 @@ You lose.
 # endif
 #endif
 
-EOF
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "You lose" >/dev/null 2>&1; then
-  rm -rf conftest*
   ac_cv_header_stat_broken=yes
 else
-  rm -rf conftest*
   ac_cv_header_stat_broken=no
 fi
 rm -f conftest*
 
 fi
-
-echo "$ac_t""$ac_cv_header_stat_broken" 1>&6
+echo "$as_me:7948: result: $ac_cv_header_stat_broken" >&5
+echo "${ECHO_T}$ac_cv_header_stat_broken" >&6
 if test $ac_cv_header_stat_broken = yes; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define STAT_MACROS_BROKEN 1
 EOF
 
 fi
 
-echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:2663: checking whether time.h and sys/time.h may both be included" >&5
-if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:7958: checking whether time.h and sys/time.h may both be included" >&5
+echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6
+if test "${ac_cv_header_time+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2668 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 7964 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
 #include <time.h>
-int main() {
-struct tm *tp;
-; return 0; }
-EOF
-if { (eval echo configure:2677: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+
+int
+main ()
+{
+if ((struct tm *) 0)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:7980: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:7983: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:7986: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:7989: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_header_time=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_header_time=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_header_time=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_header_time" 1>&6
+echo "$as_me:7999: result: $ac_cv_header_time" >&5
+echo "${ECHO_T}$ac_cv_header_time" >&6
 if test $ac_cv_header_time = yes; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define TIME_WITH_SYS_TIME 1
 EOF
 
 fi
 
-echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6
-echo "configure:2698: checking whether struct tm is in sys/time.h or time.h" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8009: checking whether struct tm is in sys/time.h or time.h" >&5
+echo $ECHO_N "checking whether struct tm is in sys/time.h or time.h... $ECHO_C" >&6
+if test "${ac_cv_struct_tm+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2703 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8015 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <time.h>
-int main() {
+
+int
+main ()
+{
 struct tm *tp; tp->tm_sec;
-; return 0; }
-EOF
-if { (eval echo configure:2711: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8029: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8032: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8035: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8038: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_tm=time.h
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_tm=sys/time.h
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_tm=sys/time.h
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_tm" 1>&6
+echo "$as_me:8048: result: $ac_cv_struct_tm" >&5
+echo "${ECHO_T}$ac_cv_struct_tm" >&6
 if test $ac_cv_struct_tm = sys/time.h; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define TM_IN_SYS_TIME 1
 EOF
 
 fi
 
-
-echo $ac_n "checking for pw_age in struct passwd""... $ac_c" 1>&6
-echo "configure:2733: checking for pw_age in struct passwd" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_passwd_pw_age'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8058: checking for pw_age in struct passwd" >&5
+echo $ECHO_N "checking for pw_age in struct passwd... $ECHO_C" >&6
+if test "${ac_cv_struct_passwd_pw_age+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2738 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8064 "configure"
 #include "confdefs.h"
 #include <pwd.h>
-int main() {
- struct passwd pw;  pw.pw_age = ""; 
-; return 0; }
-EOF
-if { (eval echo configure:2745: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+int
+main ()
+{
+ struct passwd pw;  pw.pw_age = "";
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8076: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8079: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8082: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8085: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_passwd_pw_age=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_passwd_pw_age=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_passwd_pw_age=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_passwd_pw_age" 1>&6
+echo "$as_me:8095: result: $ac_cv_struct_passwd_pw_age" >&5
+echo "${ECHO_T}$ac_cv_struct_passwd_pw_age" >&6
 
 if test "$ac_cv_struct_passwd_pw_age" = "yes"; then
-       cat >> confdefs.h <<\EOF
+       cat >>confdefs.h <<\EOF
 #define ATT_AGE 1
 EOF
 
 fi
 
-echo $ac_n "checking for pw_comment in struct passwd""... $ac_c" 1>&6
-echo "configure:2767: checking for pw_comment in struct passwd" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_passwd_pw_comment'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8105: checking for pw_comment in struct passwd" >&5
+echo $ECHO_N "checking for pw_comment in struct passwd... $ECHO_C" >&6
+if test "${ac_cv_struct_passwd_pw_comment+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2772 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8111 "configure"
 #include "confdefs.h"
 #include <pwd.h>
-int main() {
- struct passwd pw;  pw.pw_comment = ""; 
-; return 0; }
-EOF
-if { (eval echo configure:2779: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+int
+main ()
+{
+ struct passwd pw;  pw.pw_comment = "";
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8123: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8126: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8129: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8132: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_passwd_pw_comment=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_passwd_pw_comment=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_passwd_pw_comment=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_passwd_pw_comment" 1>&6
+echo "$as_me:8142: result: $ac_cv_struct_passwd_pw_comment" >&5
+echo "${ECHO_T}$ac_cv_struct_passwd_pw_comment" >&6
 
 if test "$ac_cv_struct_passwd_pw_comment" = "yes"; then
-       cat >> confdefs.h <<\EOF
+       cat >>confdefs.h <<\EOF
 #define ATT_COMMENT 1
 EOF
 
 fi
 
-echo $ac_n "checking for pw_quota in struct passwd""... $ac_c" 1>&6
-echo "configure:2801: checking for pw_quota in struct passwd" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_passwd_pw_quota'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8152: checking for pw_quota in struct passwd" >&5
+echo $ECHO_N "checking for pw_quota in struct passwd... $ECHO_C" >&6
+if test "${ac_cv_struct_passwd_pw_quota+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2806 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8158 "configure"
 #include "confdefs.h"
 #include <pwd.h>
-int main() {
- struct passwd pw;  pw.pw_quota = 0; 
-; return 0; }
-EOF
-if { (eval echo configure:2813: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+int
+main ()
+{
+ struct passwd pw;  pw.pw_quota = 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8170: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8173: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8176: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8179: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_passwd_pw_quota=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_passwd_pw_quota=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_passwd_pw_quota=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_passwd_pw_quota" 1>&6
+echo "$as_me:8189: result: $ac_cv_struct_passwd_pw_quota" >&5
+echo "${ECHO_T}$ac_cv_struct_passwd_pw_quota" >&6
 
 if test "$ac_cv_struct_passwd_pw_quota" = "yes"; then
-       cat >> confdefs.h <<\EOF
+       cat >>confdefs.h <<\EOF
 #define BSD_QUOTA 1
 EOF
 
 fi
 
 if test "$ac_cv_header_utmp_h" = "yes"; then
-       echo $ac_n "checking for ut_host in struct utmp""... $ac_c" 1>&6
-echo "configure:2836: checking for ut_host in struct utmp" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_utmp_ut_host'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:8200: checking for ut_host in struct utmp" >&5
+echo $ECHO_N "checking for ut_host in struct utmp... $ECHO_C" >&6
+if test "${ac_cv_struct_utmp_ut_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2841 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8206 "configure"
 #include "confdefs.h"
 #include <utmp.h>
-int main() {
- struct utmp ut;  char *cp = ut.ut_host; 
-; return 0; }
-EOF
-if { (eval echo configure:2848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+int
+main ()
+{
+ struct utmp ut;  char *cp = ut.ut_host;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8218: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8221: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8224: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8227: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_utmp_ut_host=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_utmp_ut_host=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_utmp_ut_host=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_utmp_ut_host" 1>&6
+echo "$as_me:8237: result: $ac_cv_struct_utmp_ut_host" >&5
+echo "${ECHO_T}$ac_cv_struct_utmp_ut_host" >&6
 
        if test "$ac_cv_struct_utmp_ut_host" = "yes"; then
-               cat >> confdefs.h <<\EOF
+               cat >>confdefs.h <<\EOF
 #define UT_HOST 1
 EOF
 
        fi
 
-       echo $ac_n "checking for ut_user in struct utmp""... $ac_c" 1>&6
-echo "configure:2870: checking for ut_user in struct utmp" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_utmp_ut_user'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:8247: checking for ut_user in struct utmp" >&5
+echo $ECHO_N "checking for ut_user in struct utmp... $ECHO_C" >&6
+if test "${ac_cv_struct_utmp_ut_user+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2875 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8253 "configure"
 #include "confdefs.h"
 #include <utmp.h>
-int main() {
- struct utmp ut;  char *cp = ut.ut_user; 
-; return 0; }
-EOF
-if { (eval echo configure:2882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+int
+main ()
+{
+ struct utmp ut;  char *cp = ut.ut_user;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8265: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8268: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8271: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8274: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_utmp_ut_user=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_utmp_ut_user=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_utmp_ut_user=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_utmp_ut_user" 1>&6
+echo "$as_me:8284: result: $ac_cv_struct_utmp_ut_user" >&5
+echo "${ECHO_T}$ac_cv_struct_utmp_ut_user" >&6
 
        if test "$ac_cv_struct_utmp_ut_user" = "no"; then
-               cat >> confdefs.h <<\EOF
+               cat >>confdefs.h <<\EOF
 #define ut_user ut_name
 EOF
 
@@ -2901,59 +8293,73 @@ EOF
 fi
 
 if test "$ac_cv_header_lastlog_h" = "yes"; then
-       echo $ac_n "checking for ll_host in struct lastlog""... $ac_c" 1>&6
-echo "configure:2906: checking for ll_host in struct lastlog" >&5
-if eval "test \"`echo '$''{'ac_cv_struct_lastlog_ll_host'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:8296: checking for ll_host in struct lastlog" >&5
+echo $ECHO_N "checking for ll_host in struct lastlog... $ECHO_C" >&6
+if test "${ac_cv_struct_lastlog_ll_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2911 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8302 "configure"
 #include "confdefs.h"
 #include <lastlog.h>
-int main() {
- struct lastlog ll;  char *cp = ll.ll_host; 
-; return 0; }
-EOF
-if { (eval echo configure:2918: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+int
+main ()
+{
+ struct lastlog ll;  char *cp = ll.ll_host;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8314: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8317: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8320: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8323: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_struct_lastlog_ll_host=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_struct_lastlog_ll_host=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_struct_lastlog_ll_host=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_struct_lastlog_ll_host" 1>&6
+echo "$as_me:8333: result: $ac_cv_struct_lastlog_ll_host" >&5
+echo "${ECHO_T}$ac_cv_struct_lastlog_ll_host" >&6
 
        if test "$ac_cv_struct_lastlog_ll_host" = "yes"; then
-               cat >> confdefs.h <<\EOF
+               cat >>confdefs.h <<\EOF
 #define HAVE_LL_HOST 1
 EOF
 
        fi
 fi
 
-echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6
-echo "configure:2941: checking type of array argument to getgroups" >&5
-if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8344: checking type of array argument to getgroups" >&5
+echo $ECHO_N "checking type of array argument to getgroups... $ECHO_C" >&6
+if test "${ac_cv_type_getgroups+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test "$cross_compiling" = yes; then
   ac_cv_type_getgroups=cross
 else
-  cat > conftest.$ac_ext <<EOF
-#line 2949 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8353 "configure"
 #include "confdefs.h"
-
 /* Thanks to Mike Rendell for this test.  */
 #include <sys/types.h>
 #define NGID 256
 #undef MAX
 #define MAX(x, y) ((x) > (y) ? (x) : (y))
-main()
+
+int
+main ()
 {
   gid_t gidset[NGID];
   int i, n;
@@ -2968,104 +8374,106 @@ main()
      happens when gid_t is short but getgroups modifies an array of ints.  */
   exit ((n > 0 && gidset[n] != val.gval) ? 1 : 0);
 }
-
-EOF
-if { (eval echo configure:2974: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
-    ac_cv_type_getgroups=gid_t
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:8379: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8382: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:8384: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8387: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_type_getgroups=gid_t
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_type_getgroups=int
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_getgroups=int
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 if test $ac_cv_type_getgroups = cross; then
-        cat > conftest.$ac_ext <<EOF
-#line 2988 "configure"
+        cat >conftest.$ac_ext <<_ACEOF
+#line 8400 "configure"
 #include "confdefs.h"
 #include <unistd.h>
-EOF
+
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "getgroups.*int.*gid_t" >/dev/null 2>&1; then
-  rm -rf conftest*
   ac_cv_type_getgroups=gid_t
 else
-  rm -rf conftest*
   ac_cv_type_getgroups=int
 fi
 rm -f conftest*
 
 fi
 fi
+echo "$as_me:8415: result: $ac_cv_type_getgroups" >&5
+echo "${ECHO_T}$ac_cv_type_getgroups" >&6
 
-echo "$ac_t""$ac_cv_type_getgroups" 1>&6
-cat >> confdefs.h <<EOF
+cat >>confdefs.h <<EOF
 #define GETGROUPS_T $ac_cv_type_getgroups
 EOF
 
-
-if test $ac_cv_prog_gcc = yes; then
-    echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
-echo "configure:3013: checking whether ${CC-cc} needs -traditional" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+if test $ac_cv_c_compiler_gnu = yes; then
+    echo "$as_me:8423: 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
 else
     ac_pattern="Autoconf.*'x'"
-  cat > conftest.$ac_ext <<EOF
-#line 3019 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8430 "configure"
 #include "confdefs.h"
 #include <sgtty.h>
 Autoconf TIOCGETP
-EOF
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "$ac_pattern" >/dev/null 2>&1; then
-  rm -rf conftest*
   ac_cv_prog_gcc_traditional=yes
 else
-  rm -rf conftest*
   ac_cv_prog_gcc_traditional=no
 fi
 rm -f conftest*
 
-
   if test $ac_cv_prog_gcc_traditional = no; then
-    cat > conftest.$ac_ext <<EOF
-#line 3037 "configure"
+    cat >conftest.$ac_ext <<_ACEOF
+#line 8445 "configure"
 #include "confdefs.h"
 #include <termio.h>
 Autoconf TCGETA
-EOF
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "$ac_pattern" >/dev/null 2>&1; then
-  rm -rf conftest*
   ac_cv_prog_gcc_traditional=yes
 fi
 rm -f conftest*
 
   fi
 fi
-
-echo "$ac_t""$ac_cv_prog_gcc_traditional" 1>&6
+echo "$as_me:8458: result: $ac_cv_prog_gcc_traditional" >&5
+echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6
   if test $ac_cv_prog_gcc_traditional = yes; then
     CC="$CC -traditional"
   fi
 fi
 
-echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:3059: checking return type of signal handlers" >&5
-if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8465: checking return type of signal handlers" >&5
+echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6
+if test "${ac_cv_type_signal+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3064 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8471 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
 #ifdef signal
-#undef signal
+# undef signal
 #endif
 #ifdef __cplusplus
 extern "C" void (*signal (int, void (*)(int)))(int);
@@ -3073,619 +8481,570 @@ extern "C" void (*signal (int, void (*)(int)))(int);
 void (*signal ()) ();
 #endif
 
-int main() {
+int
+main ()
+{
 int i;
-; return 0; }
-EOF
-if { (eval echo configure:3081: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:8493: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:8496: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:8499: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8502: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_type_signal=void
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_type_signal=int
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_signal=int
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
+echo "$as_me:8512: result: $ac_cv_type_signal" >&5
+echo "${ECHO_T}$ac_cv_type_signal" >&6
 
-echo "$ac_t""$ac_cv_type_signal" 1>&6
-cat >> confdefs.h <<EOF
+cat >>confdefs.h <<EOF
 #define RETSIGTYPE $ac_cv_type_signal
 EOF
 
-
-echo $ac_n "checking whether utime accepts a null argument""... $ac_c" 1>&6
-echo "configure:3100: checking whether utime accepts a null argument" >&5
-if eval "test \"`echo '$''{'ac_cv_func_utime_null'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8519: checking whether utime accepts a null argument" >&5
+echo $ECHO_N "checking whether utime accepts a null argument... $ECHO_C" >&6
+if test "${ac_cv_func_utime_null+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  rm -f conftestdata; > conftestdata
+  rm -f conftest.data; >conftest.data
 # Sequent interprets utime(file, 0) to mean use start of epoch.  Wrong.
 if test "$cross_compiling" = yes; then
   ac_cv_func_utime_null=no
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3110 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8530 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#include <sys/stat.h>
-main() {
+$ac_includes_default
+int
+main ()
+{
 struct stat s, t;
-exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0
-&& stat("conftestdata", &t) == 0 && t.st_mtime >= s.st_mtime
-&& t.st_mtime - s.st_mtime < 120));
+  exit (!(stat ("conftest.data", &s) == 0
+          && utime ("conftest.data", (long *)0) == 0
+          && stat ("conftest.data", &t) == 0
+          && t.st_mtime >= s.st_mtime
+          && t.st_mtime - s.st_mtime < 120));
+  ;
+  return 0;
 }
-EOF
-if { (eval echo configure:3121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:8547: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8550: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:8552: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8555: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_func_utime_null=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_func_utime_null=no
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_utime_null=no
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 rm -f core core.* *.core
 fi
-
-echo "$ac_t""$ac_cv_func_utime_null" 1>&6
+echo "$as_me:8568: result: $ac_cv_func_utime_null" >&5
+echo "${ECHO_T}$ac_cv_func_utime_null" >&6
 if test $ac_cv_func_utime_null = yes; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define HAVE_UTIME_NULL 1
 EOF
 
 fi
+rm -f conftest.data
 
-echo $ac_n "checking for strftime""... $ac_c" 1>&6
-echo "configure:3145: checking for strftime" >&5
-if eval "test \"`echo '$''{'ac_cv_func_strftime'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3150 "configure"
+for ac_func in strftime
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:8582: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8588 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char strftime(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char strftime();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_strftime) || defined (__stub___strftime)
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
 choke me
 #else
-strftime();
+f = $ac_func;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:3173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_strftime=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_strftime=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'strftime`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
-#define HAVE_STRFTIME 1
-EOF
-
-else
-  echo "$ac_t""no" 1>&6
-# strftime is in -lintl on SCO UNIX.
-echo $ac_n "checking for strftime in -lintl""... $ac_c" 1>&6
-echo "configure:3195: checking for strftime in -lintl" >&5
-ac_lib_var=`echo intl'_'strftime | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8619: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8622: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8625: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8628: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:8638: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+EOF
+
+else
+  # strftime is in -lintl on SCO UNIX.
+echo "$as_me:8647: checking for strftime in -lintl" >&5
+echo $ECHO_N "checking for strftime in -lintl... $ECHO_C" >&6
+if test "${ac_cv_lib_intl_strftime+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lintl  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 3203 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 8655 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char strftime();
-
-int main() {
-strftime()
-; return 0; }
-EOF
-if { (eval echo configure:3214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char strftime ();
+int
+main ()
+{
+strftime ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8674: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8677: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8680: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8683: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_intl_strftime=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_intl_strftime=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:8694: result: $ac_cv_lib_intl_strftime" >&5
+echo "${ECHO_T}$ac_cv_lib_intl_strftime" >&6
+if test $ac_cv_lib_intl_strftime = yes; then
+  cat >>confdefs.h <<\EOF
 #define HAVE_STRFTIME 1
 EOF
 
 LIBS="-lintl $LIBS"
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-fi
-
-for ac_func in a64l fchmod fchown fsync getgroups gethostname getspnam
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3243: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3248 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
-
-/* 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
-#else
-$ac_func();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo configure:3271: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
 fi
 
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
 fi
 done
 
-for ac_func in gettimeofday getusershell getutent initgroups lchown lckpwdf
+for ac_func in mkdir putgrent putpwent putspent rename rmdir
 do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3298: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3303 "configure"
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:8710: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8716 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
-
-/* 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
-#else
-$ac_func();
+#ifdef __cplusplus
+extern "C"
 #endif
-
-; return 0; }
-EOF
-if { (eval echo configure:3326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
-for ac_func in lstat memcpy memset setgroups sigaction strchr updwtmp updwtmpx
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3353: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3358 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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
 #else
-$ac_func();
+f = $ac_func;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:3381: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8747: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8750: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8753: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8756: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
 fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-done
-
-
-for ac_func in mkdir putgrent putpwent putspent rename rmdir
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3409: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3414 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
-
-/* 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
-#else
-$ac_func();
-#endif
-
-; return 0; }
+echo "$as_me:8766: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
-if { (eval echo configure:3437: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
 
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
 else
-  echo "$ac_t""no" 1>&6
-LIBOBJS="$LIBOBJS ${ac_func}.${ac_objext}"
+  LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
 fi
 done
 
-
 for ac_func in sgetgrent sgetpwent sgetspent
 do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3466: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3471 "configure"
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:8781: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8787 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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
 #else
-$ac_func();
+f = $ac_func;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:3494: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8818: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8821: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8824: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8827: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
+echo "$as_me:8837: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
+
 else
-  echo "$ac_t""no" 1>&6
-LIBOBJS="$LIBOBJS ${ac_func}.${ac_objext}"
+  LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
 fi
 done
 
-
 for ac_func in snprintf strcasecmp strdup strerror strstr
 do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:3523: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 3528 "configure"
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:8852: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8858 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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
 #else
-$ac_func();
+f = $ac_func;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:3551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8889: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8892: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8895: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8898: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
+echo "$as_me:8908: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
+
 else
-  echo "$ac_t""no" 1>&6
-LIBOBJS="$LIBOBJS ${ac_func}.${ac_objext}"
+  LIBOBJS="$LIBOBJS $ac_func.$ac_objext"
 fi
 done
 
-
-
-echo $ac_n "checking for setpgrp""... $ac_c" 1>&6
-echo "configure:3579: checking for setpgrp" >&5
-if eval "test \"`echo '$''{'ac_cv_func_setpgrp'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:8920: checking for setpgrp" >&5
+echo $ECHO_N "checking for setpgrp... $ECHO_C" >&6
+if test "${ac_cv_func_setpgrp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3584 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8926 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char setpgrp(); below.  */
+    which can conflict with char setpgrp (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char setpgrp();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char setpgrp ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_setpgrp) || defined (__stub___setpgrp)
 choke me
 #else
-setpgrp();
+f = setpgrp;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:3607: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_setpgrp=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_setpgrp=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'setpgrp`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  :
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-echo $ac_n "checking whether setpgrp takes no argument""... $ac_c" 1>&6
-echo "configure:3627: checking whether setpgrp takes no argument" >&5
-if eval "test \"`echo '$''{'ac_cv_func_setpgrp_void'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:8957: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:8960: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:8963: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:8966: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_setpgrp=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_setpgrp=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:8976: result: $ac_cv_func_setpgrp" >&5
+echo "${ECHO_T}$ac_cv_func_setpgrp" >&6
+
+echo "$as_me:8979: checking whether setpgrp takes no argument" >&5
+echo $ECHO_N "checking whether setpgrp takes no argument... $ECHO_C" >&6
+if test "${ac_cv_func_setpgrp_void+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test "$cross_compiling" = yes; then
-  { echo "configure: error: cannot check setpgrp if cross compiling" 1>&2; exit 1; }
+  { { echo "$as_me:8985: error: cannot check setpgrp if cross compiling" >&5
+echo "$as_me: error: cannot check setpgrp if cross compiling" >&2;}
+   { (exit 1); exit 1; }; }
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3635 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 8990 "configure"
 #include "confdefs.h"
-
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
+#if HAVE_UNISTD_H
+# include <unistd.h>
 #endif
 
-/*
- * If this system has a BSD-style setpgrp, which takes arguments, exit
- * successfully.
- */
-main()
+int
+main ()
 {
-    if (setpgrp(1,1) == -1)
-       exit(0);
-    else
-       exit(1);
+/* If this system has a BSD-style setpgrp, which takes arguments, exit
+   successfully.  */
+  exit (setpgrp (1,1) == -1);
+  ;
+  return 0;
 }
-
-EOF
-if { (eval echo configure:3655: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:9007: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9010: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:9012: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9015: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_func_setpgrp_void=no
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_func_setpgrp_void=yes
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_setpgrp_void=yes
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
-
 fi
-
-echo "$ac_t""$ac_cv_func_setpgrp_void" 1>&6
+echo "$as_me:9027: result: $ac_cv_func_setpgrp_void" >&5
+echo "${ECHO_T}$ac_cv_func_setpgrp_void" >&6
 if test $ac_cv_func_setpgrp_void = yes; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define SETPGRP_VOID 1
 EOF
 
 fi
 
-
 if test "$ac_cv_header_shadow_h" = "yes"; then
-echo $ac_n "checking for working shadow group support""... $ac_c" 1>&6
-echo "configure:3681: checking for working shadow group support" >&5
-if eval "test \"`echo '$''{'ac_cv_libc_shadowgrp'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:9038: checking for working shadow group support" >&5
+echo $ECHO_N "checking for working shadow group support... $ECHO_C" >&6
+if test "${ac_cv_libc_shadowgrp+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test "$cross_compiling" = yes; then
   ac_cv_libc_shadowgrp=no
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3689 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 9047 "configure"
 #include "confdefs.h"
 
 #include <shadow.h>
@@ -3695,578 +9054,687 @@ main()
        /* NYS libc on Red Hat 3.0.3 has broken shadow group support */
        return !sg || !sg->sg_adm || !sg->sg_mem;
 }
-
-EOF
-if { (eval echo configure:3701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:9060: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9063: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:9065: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9068: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_libc_shadowgrp=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_libc_shadowgrp=no
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_libc_shadowgrp=no
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 fi
-
-echo "$ac_t""$ac_cv_libc_shadowgrp" 1>&6
+echo "$as_me:9080: result: $ac_cv_libc_shadowgrp" >&5
+echo "${ECHO_T}$ac_cv_libc_shadowgrp" >&6
 
 if test "$ac_cv_libc_shadowgrp" = "yes"; then
-       cat >> confdefs.h <<\EOF
+       cat >>confdefs.h <<\EOF
 #define HAVE_SHADOWGRP 1
 EOF
 
 fi
 fi
 
-echo $ac_n "checking location of shared mail directory""... $ac_c" 1>&6
-echo "configure:3726: checking location of shared mail directory" >&5
+echo "$as_me:9091: checking location of shared mail directory" >&5
+echo $ECHO_N "checking location of shared mail directory... $ECHO_C" >&6
 for maildir in /var/spool/mail /var/mail /usr/spool/mail /usr/mail NONE; do
        if test "$maildir" = "NONE"; then
-               echo "$ac_t""None" 1>&6
+               echo "$as_me:9095: result: None" >&5
+echo "${ECHO_T}None" >&6
        elif test -d $maildir; then
-               cat >> confdefs.h <<EOF
+               cat >>confdefs.h <<EOF
 #define MAIL_SPOOL_DIR "$maildir"
 EOF
 
-               echo "$ac_t""$maildir" 1>&6
+               echo "$as_me:9102: result: $maildir" >&5
+echo "${ECHO_T}$maildir" >&6
                break
        fi
 done
 
-echo $ac_n "checking location of user mail file""... $ac_c" 1>&6
-echo "configure:3741: checking location of user mail file" >&5
+echo "$as_me:9108: checking location of user mail file" >&5
+echo $ECHO_N "checking location of user mail file... $ECHO_C" >&6
 for mailfile in Mailbox mailbox Mail mail .mail NONE; do
        if test "$mailfile" = "NONE"; then
-               echo "$ac_t""None" 1>&6
+               echo "$as_me:9112: result: None" >&5
+echo "${ECHO_T}None" >&6
        elif test -f $HOME/$mailfile; then
-               cat >> confdefs.h <<EOF
+               cat >>confdefs.h <<EOF
 #define MAIL_SPOOL_FILE "$mailfile"
 EOF
 
-               echo "$ac_t""$mailfile" 1>&6
+               echo "$as_me:9119: result: $mailfile" >&5
+echo "${ECHO_T}$mailfile" >&6
                break
        fi
 done
 
-echo $ac_n "checking location of utmp""... $ac_c" 1>&6
-echo "configure:3756: checking location of utmp" >&5
+echo "$as_me:9125: checking location of utmp" >&5
+echo $ECHO_N "checking location of utmp... $ECHO_C" >&6
 for utmpdir in /var/run /var/adm /usr/adm /etc NONE; do
        if test "$utmpdir" = "NONE"; then
-               echo "configure: WARNING: utmp file not found" 1>&2
+               { echo "$as_me:9129: WARNING: utmp file not found" >&5
+echo "$as_me: WARNING: utmp file not found" >&2;}
        elif test -f $utmpdir/utmp; then
-               cat >> confdefs.h <<EOF
+               cat >>confdefs.h <<EOF
 #define _UTMP_FILE "$utmpdir/utmp"
 EOF
 
-               echo "$ac_t""$utmpdir" 1>&6
+               echo "$as_me:9136: result: $utmpdir" >&5
+echo "${ECHO_T}$utmpdir" >&6
                break
        fi
 done
 
-echo $ac_n "checking location of faillog/lastlog/wtmp""... $ac_c" 1>&6
-echo "configure:3771: checking location of faillog/lastlog/wtmp" >&5
+echo "$as_me:9142: checking location of faillog/lastlog/wtmp" >&5
+echo $ECHO_N "checking location of faillog/lastlog/wtmp... $ECHO_C" >&6
 for logdir in /var/log /var/adm /usr/adm /etc; do
        if test -d $logdir; then
-               cat >> confdefs.h <<EOF
+               cat >>confdefs.h <<EOF
 #define _WTMP_FILE "$logdir/wtmp"
 EOF
 
-               cat >> confdefs.h <<EOF
+               cat >>confdefs.h <<EOF
 #define LASTLOG_FILE "$logdir/lastlog"
 EOF
 
-               cat >> confdefs.h <<EOF
+               cat >>confdefs.h <<EOF
 #define FAILLOG_FILE "$logdir/faillog"
 EOF
 
-               echo "$ac_t""$logdir" 1>&6
+               echo "$as_me:9158: result: $logdir" >&5
+echo "${ECHO_T}$logdir" >&6
                break
        fi
 done
 
-echo $ac_n "checking location of the passwd program""... $ac_c" 1>&6
-echo "configure:3792: checking location of the passwd program" >&5
+echo "$as_me:9164: checking location of the passwd program" >&5
+echo $ECHO_N "checking location of the passwd program... $ECHO_C" >&6
 if test -f /usr/bin/passwd; then
        passwd_dir=/usr/bin
 else
        passwd_dir=/bin
 fi
-cat >> confdefs.h <<EOF
+cat >>confdefs.h <<EOF
 #define PASSWD_PROGRAM "$passwd_dir/passwd"
 EOF
 
-echo "$ac_t""$passwd_dir" 1>&6
+echo "$as_me:9175: result: $passwd_dir" >&5
+echo "${ECHO_T}$passwd_dir" >&6
 
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define SHADOWPWD 1
 EOF
 
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define USG 1
 EOF
 
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define AGING 1
 EOF
 
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define USE_SYSLOG 1
 EOF
 
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define RLOGIN 1
 EOF
 
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define RUSEROK 0
 EOF
 
-cat >> confdefs.h <<\EOF
-#define LOGIN_ACCESS 1
-EOF
-
-cat >> confdefs.h <<\EOF
-#define SU_ACCESS 1
-EOF
-
-
-cat >> confdefs.h <<\EOF
+cat >>confdefs.h <<\EOF
 #define getpass libshadow_getpass
 EOF
 
-
 # Check whether --enable-desrpc or --disable-desrpc was given.
 if test "${enable_desrpc+set}" = set; then
   enableval="$enable_desrpc"
-  :
-fi
 
+fi;
 # Check whether --enable-shadowgrp or --disable-shadowgrp was given.
 if test "${enable_shadowgrp+set}" = set; then
   enableval="$enable_shadowgrp"
-  :
-fi
 
+fi;
 
 # Check whether --with-libcrack or --without-libcrack was given.
 if test "${with_libcrack+set}" = set; then
   withval="$with_libcrack"
-  :
-fi
+
+fi;
 
 # Check whether --with-libcrypt or --without-libcrypt was given.
 if test "${with_libcrypt+set}" = set; then
   withval="$with_libcrypt"
-  :
-fi
+
+fi;
 
 # Check whether --with-libopie or --without-libopie was given.
 if test "${with_libopie+set}" = set; then
   withval="$with_libopie"
-  :
-fi
+
+fi;
 
 # Check whether --with-libpam or --without-libpam was given.
 if test "${with_libpam+set}" = set; then
   withval="$with_libpam"
-  :
-fi
+
+fi;
 
 # Check whether --with-libskey or --without-libskey was given.
 if test "${with_libskey+set}" = set; then
   withval="$with_libskey"
-  :
-fi
+
+fi;
 
 # Check whether --with-libtcfs or --without-libtcfs was given.
 if test "${with_libtcfs+set}" = set; then
   withval="$with_libtcfs"
-  :
-fi
-
 
+fi;
 
-echo $ac_n "checking for inet_ntoa""... $ac_c" 1>&6
-echo "configure:3894: checking for inet_ntoa" >&5
-if eval "test \"`echo '$''{'ac_cv_func_inet_ntoa'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:9253: checking for inet_ntoa" >&5
+echo $ECHO_N "checking for inet_ntoa... $ECHO_C" >&6
+if test "${ac_cv_func_inet_ntoa+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3899 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 9259 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char inet_ntoa(); below.  */
+    which can conflict with char inet_ntoa (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char inet_ntoa();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char inet_ntoa ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_inet_ntoa) || defined (__stub___inet_ntoa)
 choke me
 #else
-inet_ntoa();
+f = inet_ntoa;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:3922: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_inet_ntoa=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_inet_ntoa=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'inet_ntoa`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9290: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9293: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9296: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9299: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_inet_ntoa=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_inet_ntoa=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:9309: result: $ac_cv_func_inet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_func_inet_ntoa" >&6
+if test $ac_cv_func_inet_ntoa = yes; then
   :
 else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for inet_ntoa in -linet""... $ac_c" 1>&6
-echo "configure:3940: checking for inet_ntoa in -linet" >&5
-ac_lib_var=`echo inet'_'inet_ntoa | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+
+echo "$as_me:9315: checking for inet_ntoa in -linet" >&5
+echo $ECHO_N "checking for inet_ntoa in -linet... $ECHO_C" >&6
+if test "${ac_cv_lib_inet_inet_ntoa+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-linet  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 3948 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9323 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char inet_ntoa();
-
-int main() {
-inet_ntoa()
-; return 0; }
-EOF
-if { (eval echo configure:3959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo inet | sed -e 's/^a-zA-Z0-9_/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
+   builtin and then its argument prototype would still apply.  */
+char inet_ntoa ();
+int
+main ()
+{
+inet_ntoa ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9342: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9345: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9348: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9351: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_inet_inet_ntoa=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_inet_inet_ntoa=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9362: result: $ac_cv_lib_inet_inet_ntoa" >&5
+echo "${ECHO_T}$ac_cv_lib_inet_inet_ntoa" >&6
+if test $ac_cv_lib_inet_inet_ntoa = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBINET 1
 EOF
 
   LIBS="-linet $LIBS"
 
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-echo $ac_n "checking for socket""... $ac_c" 1>&6
-echo "configure:3989: checking for socket" >&5
-if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:9375: checking for socket" >&5
+echo $ECHO_N "checking for socket... $ECHO_C" >&6
+if test "${ac_cv_func_socket+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 3994 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 9381 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char socket(); below.  */
+    which can conflict with char socket (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char socket();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char socket ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_socket) || defined (__stub___socket)
 choke me
 #else
-socket();
+f = socket;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:4017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_socket=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_socket=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'socket`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9412: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9415: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9418: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9421: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_socket=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_socket=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:9431: result: $ac_cv_func_socket" >&5
+echo "${ECHO_T}$ac_cv_func_socket" >&6
+if test $ac_cv_func_socket = yes; then
   :
 else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:4035: checking for socket in -lsocket" >&5
-ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+
+echo "$as_me:9437: checking for socket in -lsocket" >&5
+echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6
+if test "${ac_cv_lib_socket_socket+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsocket  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4043 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9445 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char socket();
-
-int main() {
-socket()
-; return 0; }
-EOF
-if { (eval echo configure:4054: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo socket | sed -e 's/^a-zA-Z0-9_/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
+   builtin and then its argument prototype would still apply.  */
+char socket ();
+int
+main ()
+{
+socket ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9464: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9467: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9470: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9473: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_socket_socket=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_socket_socket=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9484: result: $ac_cv_lib_socket_socket" >&5
+echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6
+if test $ac_cv_lib_socket_socket = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBSOCKET 1
 EOF
 
   LIBS="-lsocket $LIBS"
 
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
-echo "configure:4084: checking for gethostbyname" >&5
-if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:9497: checking for gethostbyname" >&5
+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
+if test "${ac_cv_func_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4089 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 9503 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char gethostbyname(); below.  */
+    which can conflict with char gethostbyname (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char gethostbyname();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_gethostbyname) || defined (__stub___gethostbyname)
 choke me
 #else
-gethostbyname();
+f = gethostbyname;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:4112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_gethostbyname=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_gethostbyname=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'gethostbyname`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9534: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9537: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9540: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9543: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:9553: result: $ac_cv_func_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
+if test $ac_cv_func_gethostbyname = yes; then
   :
 else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:4130: checking for gethostbyname in -lnsl" >&5
-ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+
+echo "$as_me:9559: checking for gethostbyname in -lnsl" >&5
+echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6
+if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnsl  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4138 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9567 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char gethostbyname();
-
-int main() {
-gethostbyname()
-; return 0; }
-EOF
-if { (eval echo configure:4149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo nsl | sed -e 's/^a-zA-Z0-9_/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
+   builtin and then its argument prototype would still apply.  */
+char gethostbyname ();
+int
+main ()
+{
+gethostbyname ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9586: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9589: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9592: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9595: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_nsl_gethostbyname=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_nsl_gethostbyname=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9606: result: $ac_cv_lib_nsl_gethostbyname" >&5
+echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6
+if test $ac_cv_lib_nsl_gethostbyname = yes; then
+  cat >>confdefs.h <<EOF
+#define HAVE_LIBNSL 1
 EOF
 
   LIBS="-lnsl $LIBS"
 
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-
-
 if test "$enable_desrpc" != "no" -a "$ac_cv_header_rpc_key_prot_h" = "yes" ; then
-       echo $ac_n "checking for getsecretkey""... $ac_c" 1>&6
-echo "configure:4182: checking for getsecretkey" >&5
-if eval "test \"`echo '$''{'ac_cv_func_getsecretkey'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:9620: checking for getsecretkey" >&5
+echo $ECHO_N "checking for getsecretkey... $ECHO_C" >&6
+if test "${ac_cv_func_getsecretkey+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4187 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 9626 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char getsecretkey(); below.  */
+    which can conflict with char getsecretkey (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char getsecretkey();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char getsecretkey ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_getsecretkey) || defined (__stub___getsecretkey)
 choke me
 #else
-getsecretkey();
+f = getsecretkey;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:4210: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_getsecretkey=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_getsecretkey=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'getsecretkey`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9657: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9660: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9663: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9666: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_func_getsecretkey=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_getsecretkey=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:9676: result: $ac_cv_func_getsecretkey" >&5
+echo "${ECHO_T}$ac_cv_func_getsecretkey" >&6
+if test $ac_cv_func_getsecretkey = yes; then
+  cat >>confdefs.h <<\EOF
 #define DES_RPC 1
 EOF
 
 else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for getsecretkey in -lrpcsvc""... $ac_c" 1>&6
-echo "configure:4231: checking for getsecretkey in -lrpcsvc" >&5
-ac_lib_var=`echo rpcsvc'_'getsecretkey | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+  echo "$as_me:9684: checking for getsecretkey in -lrpcsvc" >&5
+echo $ECHO_N "checking for getsecretkey in -lrpcsvc... $ECHO_C" >&6
+if test "${ac_cv_lib_rpcsvc_getsecretkey+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lrpcsvc  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4239 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9692 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char getsecretkey();
-
-int main() {
-getsecretkey()
-; return 0; }
-EOF
-if { (eval echo configure:4250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char getsecretkey ();
+int
+main ()
+{
+getsecretkey ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9711: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9714: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9717: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9720: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_rpcsvc_getsecretkey=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_rpcsvc_getsecretkey=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9731: result: $ac_cv_lib_rpcsvc_getsecretkey" >&5
+echo "${ECHO_T}$ac_cv_lib_rpcsvc_getsecretkey" >&6
+if test $ac_cv_lib_rpcsvc_getsecretkey = yes; then
+  cat >>confdefs.h <<\EOF
 #define DES_RPC 1
 EOF
 
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 fi
 
 if test "$enable_shadowgrp" != "no"; then
-       cat >> confdefs.h <<\EOF
+       cat >>confdefs.h <<\EOF
 #define SHADOWGRP 1
 EOF
 
 fi
 
-
 if test "$with_libcrypt" != "no"; then
-       echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6
-echo "configure:4287: checking for crypt in -lcrypt" >&5
-ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:9752: checking for crypt in -lcrypt" >&5
+echo $ECHO_N "checking for crypt in -lcrypt... $ECHO_C" >&6
+if test "${ac_cv_lib_crypt_crypt+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrypt  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4295 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9760 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char crypt();
-
-int main() {
-crypt()
-; return 0; }
-EOF
-if { (eval echo configure:4306: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char crypt ();
+int
+main ()
+{
+crypt ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9779: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9782: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9785: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9788: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_crypt_crypt=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_crypt_crypt=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9799: result: $ac_cv_lib_crypt_crypt" >&5
+echo "${ECHO_T}$ac_cv_lib_crypt_crypt" >&6
+if test $ac_cv_lib_crypt_crypt = yes; then
+  cat >>confdefs.h <<\EOF
 #define HAVE_LIBCRYPT 1
 EOF
  LIBCRYPT=-lcrypt
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-if test "$enable_md5crypt" = "yes"; then
-       LIBOBJS="$LIBOBJS md5.o md5crypt.o"
-       cat >> confdefs.h <<\EOF
-#define MD5_CRYPT 1
-EOF
-
-fi
-
-
 if test "$with_libcrack" != "no"; then
        echo "checking cracklib flavour, don't be surprised by the results"
-       echo $ac_n "checking for FascistCheck in -lcrack""... $ac_c" 1>&6
-echo "configure:4343: checking for FascistCheck in -lcrack" >&5
-ac_lib_var=`echo crack'_'FascistCheck | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:9812: checking for FascistCheck in -lcrack" >&5
+echo $ECHO_N "checking for FascistCheck in -lcrack... $ECHO_C" >&6
+if test "${ac_cv_lib_crack_FascistCheck+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrack  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4351 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9820 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char FascistCheck();
-
-int main() {
-FascistCheck()
-; return 0; }
-EOF
-if { (eval echo configure:4362: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char FascistCheck ();
+int
+main ()
+{
+FascistCheck ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9839: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9842: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9845: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9848: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_crack_FascistCheck=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_crack_FascistCheck=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9859: result: $ac_cv_lib_crack_FascistCheck" >&5
+echo "${ECHO_T}$ac_cv_lib_crack_FascistCheck" >&6
+if test $ac_cv_lib_crack_FascistCheck = yes; then
+  cat >>confdefs.h <<\EOF
 #define HAVE_LIBCRACK 1
 EOF
  LIBCRACK=-lcrack
-else
-  echo "$ac_t""no" 1>&6
 fi
 
-       echo $ac_n "checking for FascistHistory in -lcrack""... $ac_c" 1>&6
-echo "configure:4386: checking for FascistHistory in -lcrack" >&5
-ac_lib_var=`echo crack'_'FascistHistory | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:9868: checking for FascistHistory in -lcrack" >&5
+echo $ECHO_N "checking for FascistHistory in -lcrack... $ECHO_C" >&6
+if test "${ac_cv_lib_crack_FascistHistory+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrack  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4394 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9876 "configure"
 #include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char FascistHistory();
-
-int main() {
-FascistHistory()
-; return 0; }
-EOF
-if { (eval echo configure:4405: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
-#define HAVE_LIBCRACK_HIST 1
-EOF
-
-else
-  echo "$ac_t""no" 1>&6
-fi
 
-       echo $ac_n "checking for FascistHistoryPw in -lcrack""... $ac_c" 1>&6
-echo "configure:4429: checking for FascistHistoryPw in -lcrack" >&5
-ac_lib_var=`echo crack'_'FascistHistoryPw | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-lcrack  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4437 "configure"
-#include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char FascistHistoryPw();
-
-int main() {
-FascistHistoryPw()
-; return 0; }
-EOF
-if { (eval echo configure:4448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
+   builtin and then its argument prototype would still apply.  */
+char FascistHistory ();
+int
+main ()
+{
+FascistHistory ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9895: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9898: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9901: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9904: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_crack_FascistHistory=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_crack_FascistHistory=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9915: result: $ac_cv_lib_crack_FascistHistory" >&5
+echo "${ECHO_T}$ac_cv_lib_crack_FascistHistory" >&6
+if test $ac_cv_lib_crack_FascistHistory = yes; then
+  cat >>confdefs.h <<\EOF
+#define HAVE_LIBCRACK_HIST 1
+EOF
 
 fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+
+       echo "$as_me:9924: checking for FascistHistoryPw in -lcrack" >&5
+echo $ECHO_N "checking for FascistHistoryPw in -lcrack... $ECHO_C" >&6
+if test "${ac_cv_lib_crack_FascistHistoryPw+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lcrack  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9932 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char FascistHistoryPw ();
+int
+main ()
+{
+FascistHistoryPw ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:9951: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:9954: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:9957: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:9960: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_crack_FascistHistoryPw=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_crack_FascistHistoryPw=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:9971: result: $ac_cv_lib_crack_FascistHistoryPw" >&5
+echo "${ECHO_T}$ac_cv_lib_crack_FascistHistoryPw" >&6
+if test $ac_cv_lib_crack_FascistHistoryPw = yes; then
+  cat >>confdefs.h <<\EOF
 #define HAVE_LIBCRACK_PW 1
 EOF
 
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-
-
 if test "$with_libskey" = "yes"; then
-       echo $ac_n "checking for MD5Init in -lmd""... $ac_c" 1>&6
-echo "configure:4477: checking for MD5Init in -lmd" >&5
-ac_lib_var=`echo md'_'MD5Init | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:9983: checking for MD5Init in -lmd" >&5
+echo $ECHO_N "checking for MD5Init in -lmd... $ECHO_C" >&6
+if test "${ac_cv_lib_md_MD5Init+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lmd  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4485 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 9991 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char MD5Init();
-
-int main() {
-MD5Init()
-; return 0; }
-EOF
-if { (eval echo configure:4496: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+   builtin and then its argument prototype would still apply.  */
+char MD5Init ();
+int
+main ()
+{
+MD5Init ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10010: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10013: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10016: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10019: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_md_MD5Init=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_md_MD5Init=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:10030: result: $ac_cv_lib_md_MD5Init" >&5
+echo "${ECHO_T}$ac_cv_lib_md_MD5Init" >&6
+if test $ac_cv_lib_md_MD5Init = yes; then
   LIBMD=-lmd
-else
-  echo "$ac_t""no" 1>&6
 fi
 
-       echo $ac_n "checking for skeychallenge in -lskey""... $ac_c" 1>&6
-echo "configure:4517: checking for skeychallenge in -lskey" >&5
-ac_lib_var=`echo skey'_'skeychallenge | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:10036: checking for skeychallenge in -lskey" >&5
+echo $ECHO_N "checking for skeychallenge in -lskey... $ECHO_C" >&6
+if test "${ac_cv_lib_skey_skeychallenge+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lskey $LIBMD $LIBCRYPT $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4525 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 10044 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char skeychallenge();
-
-int main() {
-skeychallenge()
-; return 0; }
-EOF
-if { (eval echo configure:4536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char skeychallenge ();
+int
+main ()
+{
+skeychallenge ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10063: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10066: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10069: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10072: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_skey_skeychallenge=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_skey_skeychallenge=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:10083: result: $ac_cv_lib_skey_skeychallenge" >&5
+echo "${ECHO_T}$ac_cv_lib_skey_skeychallenge" >&6
+if test $ac_cv_lib_skey_skeychallenge = yes; then
+  cat >>confdefs.h <<\EOF
 #define SKEY 1
 EOF
  LIBSKEY=-lskey
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 elif test "$with_libopie" = "yes"; then
-       echo $ac_n "checking for opiechallenge in -lopie""... $ac_c" 1>&6
-echo "configure:4561: checking for opiechallenge in -lopie" >&5
-ac_lib_var=`echo opie'_'opiechallenge | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:10093: checking for opiechallenge in -lopie" >&5
+echo $ECHO_N "checking for opiechallenge in -lopie... $ECHO_C" >&6
+if test "${ac_cv_lib_opie_opiechallenge+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-lopie $LIBCRYPT $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4569 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 10101 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char opiechallenge();
-
-int main() {
-opiechallenge()
-; return 0; }
-EOF
-if { (eval echo configure:4580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char opiechallenge ();
+int
+main ()
+{
+opiechallenge ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10120: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10123: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10126: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10129: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_opie_opiechallenge=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_opie_opiechallenge=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:10140: result: $ac_cv_lib_opie_opiechallenge" >&5
+echo "${ECHO_T}$ac_cv_lib_opie_opiechallenge" >&6
+if test $ac_cv_lib_opie_opiechallenge = yes; then
+  cat >>confdefs.h <<\EOF
 #define OPIE 1
 EOF
  LIBSKEY=-lopie
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-
 if test "$with_libtcfs" = "yes"; then
-       echo $ac_n "checking for tcfs_encrypt_key in -ltcfs""... $ac_c" 1>&6
-echo "configure:4608: checking for tcfs_encrypt_key in -ltcfs" >&5
-ac_lib_var=`echo tcfs'_'tcfs_encrypt_key | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+       echo "$as_me:10152: checking for tcfs_encrypt_key in -ltcfs" >&5
+echo $ECHO_N "checking for tcfs_encrypt_key in -ltcfs... $ECHO_C" >&6
+if test "${ac_cv_lib_tcfs_tcfs_encrypt_key+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  ac_save_LIBS="$LIBS"
+  ac_check_lib_save_LIBS=$LIBS
 LIBS="-ltcfs -lgdbm $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 4616 "configure"
+cat >conftest.$ac_ext <<_ACEOF
+#line 10160 "configure"
 #include "confdefs.h"
+
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char tcfs_encrypt_key();
-
-int main() {
-tcfs_encrypt_key()
-; return 0; }
-EOF
-if { (eval echo configure:4627: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
+   builtin and then its argument prototype would still apply.  */
+char tcfs_encrypt_key ();
+int
+main ()
+{
+tcfs_encrypt_key ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10179: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10182: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10185: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10188: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_tcfs_tcfs_encrypt_key=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_tcfs_tcfs_encrypt_key=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:10199: result: $ac_cv_lib_tcfs_tcfs_encrypt_key" >&5
+echo "${ECHO_T}$ac_cv_lib_tcfs_tcfs_encrypt_key" >&6
+if test $ac_cv_lib_tcfs_tcfs_encrypt_key = yes; then
+  cat >>confdefs.h <<\EOF
 #define HAVE_TCFS 1
 EOF
- cat >> confdefs.h <<\EOF
+ cat >>confdefs.h <<\EOF
 #define TCFS_GDBM_SUPPORT 1
 EOF
  LIBTCFS="-ltcfs -lgdbm"
-else
-  echo "$ac_t""no" 1>&6
 fi
 
 fi
 
-
 if test "$with_libpam" = "yes"; then
-                               LIBPAM="-lpam -lpam_misc -ldl"
-       cat >> confdefs.h <<\EOF
+       echo "$as_me:10214: checking for pam_start in -lpam" >&5
+echo $ECHO_N "checking for pam_start in -lpam... $ECHO_C" >&6
+if test "${ac_cv_lib_pam_pam_start+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lpam  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 10222 "configure"
+#include "confdefs.h"
+
+/* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+   builtin and then its argument prototype would still apply.  */
+char pam_start ();
+int
+main ()
+{
+pam_start ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10241: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10244: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10247: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10250: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_pam_pam_start=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_pam_pam_start=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:10261: result: $ac_cv_lib_pam_pam_start" >&5
+echo "${ECHO_T}$ac_cv_lib_pam_pam_start" >&6
+if test $ac_cv_lib_pam_pam_start = yes; then
+  cat >>confdefs.h <<\EOF
 #define USE_PAM 1
 EOF
 
-       echo $ac_n "checking whether pam_strerror needs two arguments""... $ac_c" 1>&6
-echo "configure:4663: checking whether pam_strerror needs two arguments" >&5
-if eval "test \"`echo '$''{'ac_cv_pam_strerror_needs_two_args'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+               LIBPAM="-lpam"
+               echo "$as_me:10269: checking for main in -lpam_misc" >&5
+echo $ECHO_N "checking for main in -lpam_misc... $ECHO_C" >&6
+if test "${ac_cv_lib_pam_misc_main+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4668 "configure"
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lpam_misc { { echo "$as_me:10275: error: libpam_misc is missing" >&5
+echo "$as_me: error: libpam_misc is missing" >&2;}
+   { (exit 1); exit 1; }; }
+                $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+#line 10280 "configure"
 #include "confdefs.h"
-#include <security/pam_appl.h>
-int main() {
- pam_handle_t *pamh; pam_strerror(pamh, PAM_SUCCESS); 
-; return 0; }
+
+int
+main ()
+{
+main ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10292: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10295: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10298: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10301: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_lib_pam_misc_main=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_lib_pam_misc_main=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:10312: result: $ac_cv_lib_pam_misc_main" >&5
+echo "${ECHO_T}$ac_cv_lib_pam_misc_main" >&6
+if test $ac_cv_lib_pam_misc_main = yes; then
+  LIBPAM="$LIBPAM -lpam_misc"
+fi
+
+               echo "$as_me:10318: checking use login access checking if PAM not used" >&5
+echo $ECHO_N "checking use login access checking if PAM not used... $ECHO_C" >&6
+               cat >>confdefs.h <<\EOF
+#define LOGIN_ACCESS 1
 EOF
-if { (eval echo configure:4675: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
-  ac_cv_pam_strerror_needs_two_args=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_pam_strerror_needs_two_args=no
-               
-fi
-rm -f conftest*
-       
+
+               echo "$as_me:10324: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
 fi
 
-echo "$ac_t""$ac_cv_pam_strerror_needs_two_args" 1>&6
-       if test "$ac_cv_pam_strerror_needs_two_args" = "yes"; then
-               cat >> confdefs.h <<\EOF
-#define PAM_STRERROR_NEEDS_TWO_ARGS 1
+       echo "$as_me:10329: checking use login and su access checking if PAM not used" >&5
+echo $ECHO_N "checking use login and su access checking if PAM not used... $ECHO_C" >&6
+       echo "$as_me:10331: result: no" >&5
+echo "${ECHO_T}no" >&6
+else
+       echo "$as_me:10334: checking use login and su access checking if PAM not used" >&5
+echo $ECHO_N "checking use login and su access checking if PAM not used... $ECHO_C" >&6
+       cat >>confdefs.h <<\EOF
+#define LOGIN_ACCESS 1
+EOF
+
+       cat >>confdefs.h <<\EOF
+#define SU_ACCESS 1
 EOF
 
-       fi
+       echo "$as_me:10344: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+fi
+
+ALL_LINGUAS="cs el fr pl sv uk"
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
+echo "$as_me:10352: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$RANLIB"; then
+  ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
+echo "$as_me:10367: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+RANLIB=$ac_cv_prog_RANLIB
+if test -n "$RANLIB"; then
+  echo "$as_me:10375: result: $RANLIB" >&5
+echo "${ECHO_T}$RANLIB" >&6
+else
+  echo "$as_me:10378: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-LTLIBOBJS=`echo "$LIBOBJS" | sed 's/\.o/.lo/g'`
+fi
+if test -z "$ac_cv_prog_RANLIB"; then
+  ac_ct_RANLIB=$RANLIB
+  # Extract the first word of "ranlib", so it can be a program name with args.
+set dummy ranlib; ac_word=$2
+echo "$as_me:10387: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_RANLIB"; then
+  ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_RANLIB="ranlib"
+echo "$as_me:10402: found $ac_dir/$ac_word" >&5
+break
+done
+
+  test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":"
+fi
+fi
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
+if test -n "$ac_ct_RANLIB"; then
+  echo "$as_me:10411: result: $ac_ct_RANLIB" >&5
+echo "${ECHO_T}$ac_ct_RANLIB" >&6
+else
+  echo "$as_me:10414: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
 
+  RANLIB=$ac_ct_RANLIB
+else
+  RANLIB="$ac_cv_prog_RANLIB"
+fi
 
-ALL_LINGUAS="cs el fr pl sv"
-echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:4703: checking for inline" >&5
-if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10423: checking for inline" >&5
+echo $ECHO_N "checking for inline... $ECHO_C" >&6
+if test "${ac_cv_c_inline+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
-  cat > conftest.$ac_ext <<EOF
-#line 4710 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10431 "configure"
 #include "confdefs.h"
+#ifndef __cplusplus
+static $ac_kw int static_foo () {return 0; }
+$ac_kw int foo () {return 0; }
+#endif
 
-int main() {
-} $ac_kw foo() {
-; return 0; }
-EOF
-if { (eval echo configure:4717: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-  rm -rf conftest*
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10440: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10443: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10446: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10449: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_c_inline=$ac_kw; break
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest.$ac_ext
 done
 
 fi
-
-echo "$ac_t""$ac_cv_c_inline" 1>&6
-case "$ac_cv_c_inline" in
+echo "$as_me:10460: result: $ac_cv_c_inline" >&5
+echo "${ECHO_T}$ac_cv_c_inline" >&6
+case $ac_cv_c_inline in
   inline | yes) ;;
-  no) cat >> confdefs.h <<\EOF
-#define inline 
+  no)
+cat >>confdefs.h <<\EOF
+#define inline
 EOF
  ;;
-  *)  cat >> confdefs.h <<EOF
+  *)  cat >>confdefs.h <<EOF
 #define inline $ac_cv_c_inline
 EOF
  ;;
 esac
 
-echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:4743: checking for size_t" >&5
-if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10475: 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 <<EOF
-#line 4748 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10481 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#if STDC_HEADERS
-#include <stdlib.h>
-#include <stddef.h>
-#endif
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "(^|[^a-zA-Z_0-9])size_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
-  rm -rf conftest*
+$ac_includes_default
+int
+main ()
+{
+if ((size_t *) 0)
+  return 0;
+if (sizeof (size_t))
+  return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:10496: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:10499: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:10502: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10505: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_type_size_t=yes
 else
-  rm -rf conftest*
-  ac_cv_type_size_t=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_type_size_t=no
 fi
-rm -f conftest*
-
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-echo "$ac_t""$ac_cv_type_size_t" 1>&6
-if test $ac_cv_type_size_t = no; then
-  cat >> confdefs.h <<\EOF
+echo "$as_me:10515: 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 <<EOF
 #define size_t unsigned
 EOF
 
 
 # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
-echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:4778: checking for working alloca.h" >&5
-if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10529: checking for working alloca.h" >&5
+echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6
+if test "${ac_cv_working_alloca_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4783 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10535 "configure"
 #include "confdefs.h"
 #include <alloca.h>
-int main() {
-char *p = alloca(2 * sizeof(int));
-; return 0; }
-EOF
-if { (eval echo configure:4790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  ac_cv_header_alloca_h=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_header_alloca_h=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$ac_cv_header_alloca_h" 1>&6
-if test $ac_cv_header_alloca_h = yes; then
-  cat >> confdefs.h <<\EOF
+int
+main ()
+{
+char *p = (char *) alloca (2 * sizeof (int));
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10547: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10550: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10553: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10556: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_cv_working_alloca_h=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_working_alloca_h=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:10566: result: $ac_cv_working_alloca_h" >&5
+echo "${ECHO_T}$ac_cv_working_alloca_h" >&6
+if test $ac_cv_working_alloca_h = yes; then
+
+cat >>confdefs.h <<\EOF
 #define HAVE_ALLOCA_H 1
 EOF
 
 fi
 
-echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:4811: checking for alloca" >&5
-if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10576: checking for alloca" >&5
+echo $ECHO_N "checking for alloca... $ECHO_C" >&6
+if test "${ac_cv_func_alloca_works+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4816 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10582 "configure"
 #include "confdefs.h"
-
 #ifdef __GNUC__
 # define alloca __builtin_alloca
 #else
@@ -4836,48 +10602,62 @@ char *alloca ();
 # endif
 #endif
 
-int main() {
-char *p = (char *) alloca(1);
-; return 0; }
-EOF
-if { (eval echo configure:4844: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
+int
+main ()
+{
+char *p = (char *) alloca (1);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10614: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10617: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10620: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10623: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_func_alloca_works=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  ac_cv_func_alloca_works=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_alloca_works=no
 fi
-rm -f conftest*
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 fi
+echo "$as_me:10633: result: $ac_cv_func_alloca_works" >&5
+echo "${ECHO_T}$ac_cv_func_alloca_works" >&6
 
-echo "$ac_t""$ac_cv_func_alloca_works" 1>&6
 if test $ac_cv_func_alloca_works = yes; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define HAVE_ALLOCA 1
 EOF
 
-fi
-
-if test $ac_cv_func_alloca_works = no; then
+else
   # The SVR3 libPW and SVR4 libucb both contain incompatible functions
-  # that cause trouble.  Some versions do not even contain alloca or
-  # contain a buggy version.  If you still want to use their alloca,
-  # use ar to extract alloca.o from them instead of compiling alloca.c.
-  ALLOCA=alloca.${ac_objext}
-  cat >> confdefs.h <<\EOF
+# that cause trouble.  Some versions do not even contain alloca or
+# contain a buggy version.  If you still want to use their alloca,
+# use ar to extract alloca.o from them instead of compiling alloca.c.
+
+ALLOCA=alloca.$ac_objext
+
+cat >>confdefs.h <<\EOF
 #define C_ALLOCA 1
 EOF
 
-
-echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:4876: checking whether alloca needs Cray hooks" >&5
-if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10654: checking whether \`alloca.c' needs Cray hooks" >&5
+echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6
+if test "${ac_cv_os_cray+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4881 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10660 "configure"
 #include "confdefs.h"
 #if defined(CRAY) && ! defined(CRAY2)
 webecray
@@ -4885,88 +10665,103 @@ webecray
 wenotbecray
 #endif
 
-EOF
+_ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
   egrep "webecray" >/dev/null 2>&1; then
-  rm -rf conftest*
   ac_cv_os_cray=yes
 else
-  rm -rf conftest*
   ac_cv_os_cray=no
 fi
 rm -f conftest*
 
 fi
-
-echo "$ac_t""$ac_cv_os_cray" 1>&6
+echo "$as_me:10678: result: $ac_cv_os_cray" >&5
+echo "${ECHO_T}$ac_cv_os_cray" >&6
 if test $ac_cv_os_cray = yes; then
-for ac_func in _getb67 GETB67 getb67; do
-  echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:4906: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 4911 "configure"
+  for ac_func in _getb67 GETB67 getb67; do
+    as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:10683: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10689 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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
 #else
-$ac_func();
+f = $ac_func;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:4934: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<EOF
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10720: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10723: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10726: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10729: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:10739: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+
+cat >>confdefs.h <<EOF
 #define CRAY_STACKSEG_END $ac_func
 EOF
 
-  break
-else
-  echo "$ac_t""no" 1>&6
+    break
 fi
 
-done
+  done
 fi
 
-echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:4961: checking stack direction for C alloca" >&5
-if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10753: checking stack direction for C alloca" >&5
+echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6
+if test "${ac_cv_c_stack_direction+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test "$cross_compiling" = yes; then
   ac_cv_c_stack_direction=0
 else
-  cat > conftest.$ac_ext <<EOF
-#line 4969 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10762 "configure"
 #include "confdefs.h"
+int
 find_stack_direction ()
 {
   static char *addr = 0;
@@ -4979,139 +10774,172 @@ find_stack_direction ()
   else
     return (&dummy > addr) ? 1 : -1;
 }
+
+int
 main ()
 {
-  exit (find_stack_direction() < 0);
+  exit (find_stack_direction () < 0);
 }
-EOF
-if { (eval echo configure:4988: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:10785: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10788: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:10790: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10793: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_c_stack_direction=1
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_c_stack_direction=-1
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_c_stack_direction=-1
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 fi
+echo "$as_me:10805: result: $ac_cv_c_stack_direction" >&5
+echo "${ECHO_T}$ac_cv_c_stack_direction" >&6
 
-echo "$ac_t""$ac_cv_c_stack_direction" 1>&6
-cat >> confdefs.h <<EOF
+cat >>confdefs.h <<EOF
 #define STACK_DIRECTION $ac_cv_c_stack_direction
 EOF
 
 fi
 
-for ac_hdr in unistd.h
+for ac_header in stdlib.h unistd.h
 do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5013: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5018 "configure"
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:10817: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10823 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5023: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:10827: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:10833: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
+  eval "$as_ac_Header=no"
 fi
-rm -f conftest*
+rm -f conftest.err conftest.$ac_ext
 fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
+echo "$as_me:10852: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
 EOF
-else
-  echo "$ac_t""no" 1>&6
+
 fi
 done
 
 for ac_func in getpagesize
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5052: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5057 "configure"
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:10865: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10871 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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
 #else
-$ac_func();
+f = $ac_func;
 #endif
 
-; return 0; }
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:10902: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:10905: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:10908: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:10911: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:10921: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
-if { (eval echo configure:5080: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
 
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
 fi
 done
 
-echo $ac_n "checking for working mmap""... $ac_c" 1>&6
-echo "configure:5105: checking for working mmap" >&5
-if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:10931: checking for working mmap" >&5
+echo $ECHO_N "checking for working mmap... $ECHO_C" >&6
+if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test "$cross_compiling" = yes; then
   ac_cv_func_mmap_fixed_mapped=no
 else
-  cat > conftest.$ac_ext <<EOF
-#line 5113 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 10940 "configure"
 #include "confdefs.h"
-
+$ac_includes_default
 /* Thanks to Mike Haertel and Jim Avera for this test.
    Here is a matrix of mmap possibilities:
        mmap private not fixed
@@ -5124,7 +10952,7 @@ else
    back from the file, nor mmap's back from the file at a different
    address.  (There have been systems where private was not correctly
    implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the filesystem buffer cache
+   VM page cache was not coherent with the file system buffer cache
    like early versions of FreeBSD and possibly contemporary NetBSD.)
    For shared mappings, we should conversely verify that changes get
    propogated back to all the places they're supposed to be.
@@ -5133,25 +10961,25 @@ else
    The main things grep needs to know about mmap are:
    * does it exist and is it safe to write into the mmap'd area
    * how to use it (BSD variants)  */
-#include <sys/types.h>
+
 #include <fcntl.h>
 #include <sys/mman.h>
 
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-# endif
+#if !STDC_HEADERS && !HAVE_STDLIB_H
+char *malloc ();
+#endif
 
+/* This mess was copied from the GNU getpagesize.h.  */
+#if !HAVE_GETPAGESIZE
 /* Assume that all systems that can run configure have sys/param.h.  */
-# ifndef HAVE_SYS_PARAM_H
+# if !HAVE_SYS_PARAM_H
 #  define HAVE_SYS_PARAM_H 1
 # endif
 
 # ifdef _SC_PAGESIZE
 #  define getpagesize() sysconf(_SC_PAGESIZE)
 # else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
+#  if HAVE_SYS_PARAM_H
 #   include <sys/param.h>
 #   ifdef EXEC_PAGESIZE
 #    define getpagesize() EXEC_PAGESIZE
@@ -5178,863 +11006,773 @@ else
 
 #endif /* no HAVE_GETPAGESIZE */
 
-#ifdef __cplusplus
-extern "C" { void *malloc(unsigned); }
-#else
-char *malloc();
-#endif
-
 int
-main()
+main ()
 {
-       char *data, *data2, *data3;
-       int i, pagesize;
-       int fd;
-
-       pagesize = getpagesize();
-
-       /*
-        * First, make a file with some known garbage in it.
-        */
-       data = malloc(pagesize);
-       if (!data)
-               exit(1);
-       for (i = 0; i < pagesize; ++i)
-               *(data + i) = rand();
-       umask(0);
-       fd = creat("conftestmmap", 0600);
-       if (fd < 0)
-               exit(1);
-       if (write(fd, data, pagesize) != pagesize)
-               exit(1);
-       close(fd);
-
-       /*
-        * Next, try to mmap the file at a fixed address which
-        * already has something else allocated at it.  If we can,
-        * also make sure that we see the same garbage.
-        */
-       fd = open("conftestmmap", O_RDWR);
-       if (fd < 0)
-               exit(1);
-       data2 = malloc(2 * pagesize);
-       if (!data2)
-               exit(1);
-       data2 += (pagesize - ((int) data2 & (pagesize - 1))) & (pagesize - 1);
-       if (data2 != mmap(data2, pagesize, PROT_READ | PROT_WRITE,
-           MAP_PRIVATE | MAP_FIXED, fd, 0L))
-               exit(1);
-       for (i = 0; i < pagesize; ++i)
-               if (*(data + i) != *(data2 + i))
-                       exit(1);
-
-       /*
-        * Finally, make sure that changes to the mapped area
-        * do not percolate back to the file as seen by read().
-        * (This is a bug on some variants of i386 svr4.0.)
-        */
-       for (i = 0; i < pagesize; ++i)
-               *(data2 + i) = *(data2 + i) + 1;
-       data3 = malloc(pagesize);
-       if (!data3)
-               exit(1);
-       if (read(fd, data3, pagesize) != pagesize)
-               exit(1);
-       for (i = 0; i < pagesize; ++i)
-               if (*(data + i) != *(data3 + i))
-                       exit(1);
-       close(fd);
-       unlink("conftestmmap");
-       exit(0);
+  char *data, *data2, *data3;
+  int i, pagesize;
+  int fd;
+
+  pagesize = getpagesize ();
+
+  /* First, make a file with some known garbage in it. */
+  data = (char *) malloc (pagesize);
+  if (!data)
+    exit (1);
+  for (i = 0; i < pagesize; ++i)
+    *(data + i) = rand ();
+  umask (0);
+  fd = creat ("conftest.mmap", 0600);
+  if (fd < 0)
+    exit (1);
+  if (write (fd, data, pagesize) != pagesize)
+    exit (1);
+  close (fd);
+
+  /* Next, try to mmap the file at a fixed address which already has
+     something else allocated at it.  If we can, also make sure that
+     we see the same garbage.  */
+  fd = open ("conftest.mmap", O_RDWR);
+  if (fd < 0)
+    exit (1);
+  data2 = (char *) malloc (2 * pagesize);
+  if (!data2)
+    exit (1);
+  data2 += (pagesize - ((int) data2 & (pagesize - 1))) & (pagesize - 1);
+  if (data2 != mmap (data2, pagesize, PROT_READ | PROT_WRITE,
+                     MAP_PRIVATE | MAP_FIXED, fd, 0L))
+    exit (1);
+  for (i = 0; i < pagesize; ++i)
+    if (*(data + i) != *(data2 + i))
+      exit (1);
+
+  /* Finally, make sure that changes to the mapped area do not
+     percolate back to the file as seen by read().  (This is a bug on
+     some variants of i386 svr4.0.)  */
+  for (i = 0; i < pagesize; ++i)
+    *(data2 + i) = *(data2 + i) + 1;
+  data3 = (char *) malloc (pagesize);
+  if (!data3)
+    exit (1);
+  if (read (fd, data3, pagesize) != pagesize)
+    exit (1);
+  for (i = 0; i < pagesize; ++i)
+    if (*(data + i) != *(data3 + i))
+      exit (1);
+  close (fd);
+  exit (0);
 }
-
-EOF
-if { (eval echo configure:5253: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:11067: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11070: \$? = $ac_status" >&5
+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+  { (eval echo "$as_me:11072: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11075: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_func_mmap_fixed_mapped=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_func_mmap_fixed_mapped=no
+  echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_func_mmap_fixed_mapped=no
 fi
-rm -fr conftest*
+rm -f core core.* *.core conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
 fi
-
 fi
-
-echo "$ac_t""$ac_cv_func_mmap_fixed_mapped" 1>&6
+echo "$as_me:11087: result: $ac_cv_func_mmap_fixed_mapped" >&5
+echo "${ECHO_T}$ac_cv_func_mmap_fixed_mapped" >&6
 if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  cat >> confdefs.h <<\EOF
+
+cat >>confdefs.h <<\EOF
 #define HAVE_MMAP 1
 EOF
 
 fi
+rm -f conftest.mmap
 
-                              
-   for ac_hdr in argz.h limits.h locale.h nl_types.h malloc.h string.h \
-unistd.h sys/param.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5281: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5286 "configure"
-#include "confdefs.h"
-#include <$ac_hdr>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5291: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
-   for ac_func in getcwd munmap putenv setenv setlocale strchr strcasecmp \
-strdup __argz_count __argz_stringify __argz_next
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5321: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+    echo "$as_me:11098: checking whether we are using the GNU C Library 2.1 or newer" >&5
+echo $ECHO_N "checking whether we are using the GNU C Library 2.1 or newer... $ECHO_C" >&6
+if test "${ac_cv_gnu_library_2_1+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  cat > conftest.$ac_ext <<EOF
-#line 5326 "configure"
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11104 "configure"
 #include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
 
-int main() {
-
-/* 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
-#else
-$ac_func();
+#include <features.h>
+#ifdef __GNU_LIBRARY__
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
+  Lucky GNU user
+ #endif
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:5349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "Lucky GNU user" >/dev/null 2>&1; then
+  ac_cv_gnu_library_2_1=yes
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
+  ac_cv_gnu_library_2_1=no
 fi
 rm -f conftest*
-fi
 
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
 fi
-done
+echo "$as_me:11124: result: $ac_cv_gnu_library_2_1" >&5
+echo "${ECHO_T}$ac_cv_gnu_library_2_1" >&6
 
+    GLIBC21="$ac_cv_gnu_library_2_1"
 
-   if test "${ac_cv_func_stpcpy+set}" != "set"; then
-     for ac_func in stpcpy
+for ac_header in argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
+stdlib.h string.h unistd.h sys/param.h
 do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5378: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5383 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
-
-/* 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
-#else
-$ac_func();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo configure:5406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
-   fi
-   if test "${ac_cv_func_stpcpy}" = "yes"; then
-     cat >> confdefs.h <<\EOF
-#define HAVE_STPCPY 1
-EOF
-
-   fi
-
-   if test $ac_cv_header_locale_h = yes; then
-    echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
-echo "configure:5440: checking for LC_MESSAGES" >&5
-if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5445 "configure"
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:11133: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11139 "configure"
 #include "confdefs.h"
-#include <locale.h>
-int main() {
-return LC_MESSAGES
-; return 0; }
-EOF
-if { (eval echo configure:5452: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  am_cv_val_LC_MESSAGES=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  am_cv_val_LC_MESSAGES=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$am_cv_val_LC_MESSAGES" 1>&6
-    if test $am_cv_val_LC_MESSAGES = yes; then
-      cat >> confdefs.h <<\EOF
-#define HAVE_LC_MESSAGES 1
-EOF
-
-    fi
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:11143: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:11149: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
   fi
-   echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
-echo "configure:5473: checking whether NLS is requested" >&5
-        # Check whether --enable-nls or --disable-nls was given.
-if test "${enable_nls+set}" = set; then
-  enableval="$enable_nls"
-  USE_NLS=$enableval
-else
-  USE_NLS=yes
-fi
-
-    echo "$ac_t""$USE_NLS" 1>&6
-    
-
-    USE_INCLUDED_LIBINTL=no
-
-        if test "$USE_NLS" = "yes"; then
-      cat >> confdefs.h <<\EOF
-#define ENABLE_NLS 1
-EOF
-
-      echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6
-echo "configure:5493: checking whether included gettext is requested" >&5
-      # Check whether --with-included-gettext or --without-included-gettext was given.
-if test "${with_included_gettext+set}" = set; then
-  withval="$with_included_gettext"
-  nls_cv_force_use_gnu_gettext=$withval
-else
-  nls_cv_force_use_gnu_gettext=no
-fi
-
-      echo "$ac_t""$nls_cv_force_use_gnu_gettext" 1>&6
-
-      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
-      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
-                                       nls_cv_header_intl=
-       nls_cv_header_libgt=
-       CATOBJEXT=NONE
-
-       ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
-echo "configure:5512: checking for libintl.h" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5517 "configure"
-#include "confdefs.h"
-#include <libintl.h>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5522: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6
-echo "configure:5539: checking for gettext in libc" >&5
-if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5544 "configure"
-#include "confdefs.h"
-#include <libintl.h>
-int main() {
-return (int) gettext ("")
-; return 0; }
-EOF
-if { (eval echo configure:5551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  gt_cv_func_gettext_libc=yes
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  gt_cv_func_gettext_libc=no
-fi
-rm -f conftest*
-fi
-
-echo "$ac_t""$gt_cv_func_gettext_libc" 1>&6
-
-          if test "$gt_cv_func_gettext_libc" != "yes"; then
-            echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6
-echo "configure:5567: checking for bindtextdomain in -lintl" >&5
-ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-lintl  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5575 "configure"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char bindtextdomain();
-
-int main() {
-bindtextdomain()
-; return 0; }
-EOF
-if { (eval echo configure:5586: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6
-echo "configure:5602: checking for gettext in libintl" >&5
-if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6
-echo "configure:5607: checking for gettext in -lintl" >&5
-ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-lintl  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5615 "configure"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char gettext();
-
-int main() {
-gettext()
-; return 0; }
-EOF
-if { (eval echo configure:5626: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  gt_cv_func_gettext_libintl=yes
-else
-  echo "$ac_t""no" 1>&6
-gt_cv_func_gettext_libintl=no
-fi
-
-fi
-
-echo "$ac_t""$gt_cv_func_gettext_libintl" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-          fi
-
-          if test "$gt_cv_func_gettext_libc" = "yes" \
-             || test "$gt_cv_func_gettext_libintl" = "yes"; then
-             cat >> confdefs.h <<\EOF
-#define HAVE_GETTEXT 1
-EOF
-
-             # Extract the first word of "msgfmt", so it can be a program name with args.
-set dummy msgfmt; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5665: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
 else
-  case "$MSGFMT" in
-  /*)
-  ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
-  ;;
-  *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then
-       ac_cv_path_MSGFMT="$ac_dir/$ac_word"
-       break
-      fi
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no"
-  ;;
-esac
-fi
-MSGFMT="$ac_cv_path_MSGFMT"
-if test -n "$MSGFMT"; then
-  echo "$ac_t""$MSGFMT" 1>&6
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  eval "$as_ac_Header=yes"
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_ext
+fi
+echo "$as_me:11168: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+EOF
+
 fi
-             if test "$MSGFMT" != "no"; then
-               for ac_func in dcgettext
+done
+
+for ac_func in feof_unlocked fgets_unlocked getcwd getegid geteuid \
+getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \
+strdup strtoul tsearch __argz_count __argz_stringify __argz_next
 do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5699: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5704 "configure"
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:11183: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11189 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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
 #else
-$ac_func();
+f = $ac_func;
 #endif
 
-; return 0; }
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11220: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11223: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11226: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11229: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:11239: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
-if { (eval echo configure:5727: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
 
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
 fi
 done
 
-               # Extract the first word of "gmsgfmt", so it can be a program name with args.
-set dummy gmsgfmt; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5754: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  case "$GMSGFMT" in
-  /*|[A-z]:/*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
-  ;;
-  ?:/*)                         
-  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a dos path.
-  ;;
-  *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
-  ;;
-esac
-fi
-GMSGFMT="$ac_cv_path_GMSGFMT"
-if test -n "$GMSGFMT"; then
-  echo "$ac_t""$GMSGFMT" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
+# Check whether --with-libiconv-prefix or --without-libiconv-prefix was given.
+if test "${with_libiconv_prefix+set}" = set; then
+  withval="$with_libiconv_prefix"
 
-               # Extract the first word of "xgettext", so it can be a program name with args.
-set dummy xgettext; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5790: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+    for dir in `echo "$withval" | tr : ' '`; do
+      if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi
+      if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi
+    done
+
+fi;
+
+  echo "$as_me:11260: checking for iconv" >&5
+echo $ECHO_N "checking for iconv... $ECHO_C" >&6
+if test "${am_cv_func_iconv+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$XGETTEXT" in
-  /*)
-  ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path.
-  ;;
-  *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in $PATH; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      if test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"; then
-       ac_cv_path_XGETTEXT="$ac_dir/$ac_word"
-       break
-      fi
+
+    am_cv_func_iconv="no, consider installing GNU libiconv"
+    am_cv_lib_iconv=no
+    cat >conftest.$ac_ext <<_ACEOF
+#line 11269 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+#include <iconv.h>
+int
+main ()
+{
+iconv_t cd = iconv_open("","");
+       iconv(cd,NULL,NULL,NULL,NULL);
+       iconv_close(cd);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11284: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11287: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11290: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11293: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_func_iconv=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+    if test "$am_cv_func_iconv" != yes; then
+      am_save_LIBS="$LIBS"
+      LIBS="$LIBS -liconv"
+      cat >conftest.$ac_ext <<_ACEOF
+#line 11305 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+#include <iconv.h>
+int
+main ()
+{
+iconv_t cd = iconv_open("","");
+         iconv(cd,NULL,NULL,NULL,NULL);
+         iconv_close(cd);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11320: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11323: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11326: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11329: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_lib_iconv=yes
+        am_cv_func_iconv=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+      LIBS="$am_save_LIBS"
     fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":"
-  ;;
-esac
+
 fi
-XGETTEXT="$ac_cv_path_XGETTEXT"
-if test -n "$XGETTEXT"; then
-  echo "$ac_t""$XGETTEXT" 1>&6
+echo "$as_me:11342: result: $am_cv_func_iconv" >&5
+echo "${ECHO_T}$am_cv_func_iconv" >&6
+  if test "$am_cv_func_iconv" = yes; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_ICONV 1
+EOF
+
+    echo "$as_me:11350: checking for iconv declaration" >&5
+echo $ECHO_N "checking for iconv declaration... $ECHO_C" >&6
+    if test "${am_cv_proto_iconv+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  echo "$ac_t""no" 1>&6
-fi
 
-               cat > conftest.$ac_ext <<EOF
-#line 5822 "configure"
+      cat >conftest.$ac_ext <<_ACEOF
+#line 11357 "configure"
 #include "confdefs.h"
 
-int main() {
-extern int _nl_msg_cat_cntr;
-                              return _nl_msg_cat_cntr
-; return 0; }
+#include <stdlib.h>
+#include <iconv.h>
+extern
+#ifdef __cplusplus
+"C"
+#endif
+#if defined(__STDC__) || defined(__cplusplus)
+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
+#else
+size_t iconv();
+#endif
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:11381: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:11384: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:11387: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11390: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_proto_iconv_arg1=""
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_proto_iconv_arg1="const"
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+      am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"
+fi
+
+    am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
+    echo "$as_me:11403: result: ${ac_t:-
+         }$am_cv_proto_iconv" >&5
+echo "${ECHO_T}${ac_t:-
+         }$am_cv_proto_iconv" >&6
+
+cat >>confdefs.h <<EOF
+#define ICONV_CONST $am_cv_proto_iconv_arg1
 EOF
-if { (eval echo configure:5830: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  CATOBJEXT=.gmo
-                  DATADIRNAME=share
+
+  fi
+  LIBICONV=
+  if test "$am_cv_lib_iconv" = yes; then
+    LIBICONV="-liconv"
+  fi
+
+  echo "$as_me:11418: checking for nl_langinfo and CODESET" >&5
+echo $ECHO_N "checking for nl_langinfo and CODESET... $ECHO_C" >&6
+if test "${am_cv_langinfo_codeset+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  CATOBJEXT=.mo
-                  DATADIRNAME=lib
-fi
-rm -f conftest*
-               INSTOBJEXT=.mo
-             fi
-           fi
-       
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11424 "configure"
+#include "confdefs.h"
+#include <langinfo.h>
+int
+main ()
+{
+char* cs = nl_langinfo(CODESET);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11436: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11439: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11442: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11445: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_langinfo_codeset=yes
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_langinfo_codeset=no
 fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
 
+fi
+echo "$as_me:11456: result: $am_cv_langinfo_codeset" >&5
+echo "${ECHO_T}$am_cv_langinfo_codeset" >&6
+  if test $am_cv_langinfo_codeset = yes; then
 
-        if test "$CATOBJEXT" = "NONE"; then
-         echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6
-echo "configure:5853: checking whether catgets can be used" >&5
-         # Check whether --with-catgets or --without-catgets was given.
-if test "${with_catgets+set}" = set; then
-  withval="$with_catgets"
-  nls_cv_use_catgets=$withval
+cat >>confdefs.h <<\EOF
+#define HAVE_LANGINFO_CODESET 1
+EOF
+
+  fi
+
+   if test $ac_cv_header_locale_h = yes; then
+    echo "$as_me:11467: checking for LC_MESSAGES" >&5
+echo $ECHO_N "checking for LC_MESSAGES... $ECHO_C" >&6
+if test "${am_cv_val_LC_MESSAGES+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11473 "configure"
+#include "confdefs.h"
+#include <locale.h>
+int
+main ()
+{
+return LC_MESSAGES
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11485: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11488: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11491: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11494: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  am_cv_val_LC_MESSAGES=yes
 else
-  nls_cv_use_catgets=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+am_cv_val_LC_MESSAGES=no
 fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:11504: result: $am_cv_val_LC_MESSAGES" >&5
+echo "${ECHO_T}$am_cv_val_LC_MESSAGES" >&6
+    if test $am_cv_val_LC_MESSAGES = yes; then
 
-         echo "$ac_t""$nls_cv_use_catgets" 1>&6
+cat >>confdefs.h <<\EOF
+#define HAVE_LC_MESSAGES 1
+EOF
 
-         if test "$nls_cv_use_catgets" = "yes"; then
-                   echo $ac_n "checking for main in -li""... $ac_c" 1>&6
-echo "configure:5866: checking for main in -li" >&5
-ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+    fi
+  fi
+   echo "$as_me:11514: checking whether NLS is requested" >&5
+echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6
+        # Check whether --enable-nls or --disable-nls was given.
+if test "${enable_nls+set}" = set; then
+  enableval="$enable_nls"
+  USE_NLS=$enableval
 else
-  ac_save_LIBS="$LIBS"
-LIBS="-li  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5874 "configure"
-#include "confdefs.h"
+  USE_NLS=yes
+fi;
+    echo "$as_me:11523: result: $USE_NLS" >&5
+echo "${ECHO_T}$USE_NLS" >&6
 
-int main() {
-main()
-; return 0; }
+    BUILD_INCLUDED_LIBINTL=no
+    USE_INCLUDED_LIBINTL=no
+    INTLLIBS=
+
+        if test "$USE_NLS" = "yes"; then
+
+cat >>confdefs.h <<\EOF
+#define ENABLE_NLS 1
 EOF
-if { (eval echo configure:5881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
+
+      echo "$as_me:11536: checking whether included gettext is requested" >&5
+echo $ECHO_N "checking whether included gettext is requested... $ECHO_C" >&6
+
+# Check whether --with-included-gettext or --without-included-gettext was given.
+if test "${with_included_gettext+set}" = set; then
+  withval="$with_included_gettext"
+  nls_cv_force_use_gnu_gettext=$withval
+else
+  nls_cv_force_use_gnu_gettext=no
+fi;
+      echo "$as_me:11546: result: $nls_cv_force_use_gnu_gettext" >&5
+echo "${ECHO_T}$nls_cv_force_use_gnu_gettext" >&6
+
+      nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
+      if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
+                               CATOBJEXT=NONE
+
+       echo "$as_me:11553: checking for libintl.h" >&5
+echo $ECHO_N "checking for libintl.h... $ECHO_C" >&6
+if test "${ac_cv_header_libintl_h+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11559 "configure"
+#include "confdefs.h"
+#include <libintl.h>
+_ACEOF
+if { (eval echo "$as_me:11563: \"$ac_cpp conftest.$ac_ext\"") >&5
+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+  ac_status=$?
+  egrep -v '^ *\+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:11569: \$? = $ac_status" >&5
+  (exit $ac_status); } >/dev/null; then
+  if test -s conftest.err; then
+    ac_cpp_err=$ac_c_preproc_warn_flag
+  else
+    ac_cpp_err=
+  fi
+else
+  ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+  ac_cv_header_libintl_h=yes
 else
-  echo "configure: failed program was:" >&5
+  echo "$as_me: failed program was:" >&5
   cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
+  ac_cv_header_libintl_h=no
 fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
+rm -f conftest.err conftest.$ac_ext
 fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_lib=HAVE_LIB`echo i | sed -e 's/[^a-zA-Z0-9_]/_/g' \
-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_lib 1
+echo "$as_me:11588: result: $ac_cv_header_libintl_h" >&5
+echo "${ECHO_T}$ac_cv_header_libintl_h" >&6
+if test $ac_cv_header_libintl_h = yes; then
+  echo "$as_me:11591: checking for GNU gettext in libc" >&5
+echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6
+if test "${gt_cv_func_gnugettext1_libc+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11597 "configure"
+#include "confdefs.h"
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+int
+main ()
+{
+bindtextdomain ("", "");
+return (int) gettext ("") + _nl_msg_cat_cntr
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11611: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11614: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11617: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11620: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  gt_cv_func_gnugettext1_libc=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+gt_cv_func_gnugettext1_libc=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:11630: result: $gt_cv_func_gnugettext1_libc" >&5
+echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6
+
+          if test "$gt_cv_func_gnugettext1_libc" != "yes"; then
+            echo "$as_me:11634: checking for GNU gettext in libintl" >&5
+echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6
+if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  gt_save_LIBS="$LIBS"
+               LIBS="$LIBS -lintl $LIBICONV"
+               cat >conftest.$ac_ext <<_ACEOF
+#line 11642 "configure"
+#include "confdefs.h"
+#include <libintl.h>
+extern int _nl_msg_cat_cntr;
+int
+main ()
+{
+bindtextdomain ("", "");
+return (int) gettext ("") + _nl_msg_cat_cntr
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11656: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11659: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11662: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11665: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  gt_cv_func_gnugettext1_libintl=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+gt_cv_func_gnugettext1_libintl=no
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+               LIBS="$gt_save_LIBS"
+fi
+echo "$as_me:11676: result: $gt_cv_func_gnugettext1_libintl" >&5
+echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6
+          fi
+
+                                          if test "$gt_cv_func_gnugettext1_libc" = "yes" \
+             || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \
+                  && test "$PACKAGE" != gettext; }; then
+
+cat >>confdefs.h <<\EOF
+#define HAVE_GETTEXT 1
 EOF
 
-  LIBS="-li $LIBS"
+            if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then
+                                      INTLLIBS="-lintl $LIBICONV"
+            fi
 
-else
-  echo "$ac_t""no" 1>&6
-fi
+            gt_save_LIBS="$LIBS"
+            LIBS="$LIBS $INTLLIBS"
 
-           echo $ac_n "checking for catgets""... $ac_c" 1>&6
-echo "configure:5909: checking for catgets" >&5
-if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 5914 "configure"
+for ac_func in dcgettext
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:11698: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 11704 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char catgets(); below.  */
+    which can conflict with char $ac_func (); below.  */
 #include <assert.h>
 /* Override any gcc2 internal prototype to avoid an error.  */
+#ifdef __cplusplus
+extern "C"
+#endif
 /* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char catgets();
-
-int main() {
+   builtin and then its argument prototype would still apply.  */
+char $ac_func ();
+char (*f) ();
 
+int
+main ()
+{
 /* 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_catgets) || defined (__stub___catgets)
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
 choke me
 #else
-catgets();
+f = $ac_func;
 #endif
 
-; return 0; }
-EOF
-if { (eval echo configure:5937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_catgets=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_catgets=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'catgets`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<\EOF
-#define HAVE_CATGETS 1
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:11735: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:11738: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest$ac_exeext'
+  { (eval echo "$as_me:11741: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:11744: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+eval "$as_ac_var=no"
+fi
+rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:11754: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<EOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
 EOF
 
-              INTLOBJS="\$(CATOBJS)"
-              # Extract the first word of "gencat", so it can be a program name with args.
-set dummy gencat; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5959: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  case "$GENCAT" in
-  /*|[A-z]:/*)
-  ac_cv_path_GENCAT="$GENCAT" # Let the user override the test with a path.
-  ;;
-  ?:/*)                         
-  ac_cv_path_GENCAT="$GENCAT" # Let the user override the test with a dos path.
-  ;;
-  *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_path_GENCAT="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_GENCAT" && ac_cv_path_GENCAT="no"
-  ;;
-esac
-fi
-GENCAT="$ac_cv_path_GENCAT"
-if test -n "$GENCAT"; then
-  echo "$ac_t""$GENCAT" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-              if test "$GENCAT" != "no"; then
-                # Extract the first word of "gmsgfmt", so it can be a program name with args.
-set dummy gmsgfmt; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5995: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  case "$GMSGFMT" in
-  /*|[A-z]:/*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
-  ;;
-  ?:/*)                         
-  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a dos path.
-  ;;
-  *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="no"
-  ;;
-esac
-fi
-GMSGFMT="$ac_cv_path_GMSGFMT"
-if test -n "$GMSGFMT"; then
-  echo "$ac_t""$GMSGFMT" 1>&6
-else
-  echo "$ac_t""no" 1>&6
 fi
+done
 
-                if test "$GMSGFMT" = "no"; then
-                  # Extract the first word of "msgfmt", so it can be a program name with args.
+            LIBS="$gt_save_LIBS"
+
+            # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6032: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:11768: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_MSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$GMSGFMT" in
+  case "$MSGFMT" in
   /*)
-  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
+  ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path.
   ;;
   *)
   IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
@@ -6042,30 +11780,71 @@ else
     test -z "$ac_dir" && ac_dir=.
     if test -f $ac_dir/$ac_word; then
       if test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"; then
-       ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
+       ac_cv_path_MSGFMT="$ac_dir/$ac_word"
        break
       fi
     fi
   done
   IFS="$ac_save_ifs"
-  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="no"
+  test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT="no"
+  ;;
+esac
+fi
+MSGFMT="$ac_cv_path_MSGFMT"
+if test -n "$MSGFMT"; then
+  echo "$as_me:11795: result: $MSGFMT" >&5
+echo "${ECHO_T}$MSGFMT" >&6
+else
+  echo "$as_me:11798: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+            if test "$MSGFMT" != "no"; then
+              # Extract the first word of "gmsgfmt", so it can be a program name with args.
+set dummy gmsgfmt; ac_word=$2
+echo "$as_me:11804: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GMSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  case $GMSGFMT in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
+  ;;
+  *)
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
+   echo "$as_me:11821: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
+  test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
   ;;
 esac
 fi
-GMSGFMT="$ac_cv_path_GMSGFMT"
+GMSGFMT=$ac_cv_path_GMSGFMT
+
 if test -n "$GMSGFMT"; then
-  echo "$ac_t""$GMSGFMT" 1>&6
+  echo "$as_me:11833: result: $GMSGFMT" >&5
+echo "${ECHO_T}$GMSGFMT" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:11836: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-                fi
-                # Extract the first word of "xgettext", so it can be a program name with args.
+            fi
+
+            # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6067: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:11844: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_XGETTEXT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   case "$XGETTEXT" in
   /*)
@@ -6089,27 +11868,17 @@ esac
 fi
 XGETTEXT="$ac_cv_path_XGETTEXT"
 if test -n "$XGETTEXT"; then
-  echo "$ac_t""$XGETTEXT" 1>&6
+  echo "$as_me:11871: result: $XGETTEXT" >&5
+echo "${ECHO_T}$XGETTEXT" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:11874: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-                USE_INCLUDED_LIBINTL=yes
-                CATOBJEXT=.cat
-                INSTOBJEXT=.cat
-                DATADIRNAME=lib
-                INTLDEPS='$(top_builddir)/intl/libintl.a'
-                INTLLIBS=$INTLDEPS
-                LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-                nls_cv_header_intl=intl/libintl.h
-                nls_cv_header_libgt=intl/libgettext.h
-              fi
-else
-  echo "$ac_t""no" 1>&6
-fi
+            CATOBJEXT=.gmo
+          fi
 
-         fi
-        fi
+fi
 
         if test "$CATOBJEXT" = "NONE"; then
                          nls_cv_use_gnu_gettext=yes
                 INTLOBJS="\$(GETTOBJS)"
         # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6125: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:11892: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_MSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   case "$MSGFMT" in
   /*)
@@ -6147,53 +11916,57 @@ esac
 fi
 MSGFMT="$ac_cv_path_MSGFMT"
 if test -n "$MSGFMT"; then
-  echo "$ac_t""$MSGFMT" 1>&6
+  echo "$as_me:11919: result: $MSGFMT" >&5
+echo "${ECHO_T}$MSGFMT" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:11922: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
         # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6159: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:11928: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GMSGFMT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$GMSGFMT" in
-  /*|[A-z]:/*)
+  case $GMSGFMT in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path.
   ;;
-  ?:/*)                         
-  ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test $ac_x $ac_dir/$ac_word; then
-      ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GMSGFMT="$ac_dir/$ac_word"
+   echo "$as_me:11945: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT"
   ;;
 esac
 fi
-GMSGFMT="$ac_cv_path_GMSGFMT"
+GMSGFMT=$ac_cv_path_GMSGFMT
+
 if test -n "$GMSGFMT"; then
-  echo "$ac_t""$GMSGFMT" 1>&6
+  echo "$as_me:11957: result: $GMSGFMT" >&5
+echo "${ECHO_T}$GMSGFMT" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:11960: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
         # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6195: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:11966: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_XGETTEXT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   case "$XGETTEXT" in
   /*)
@@ -6217,48 +11990,92 @@ esac
 fi
 XGETTEXT="$ac_cv_path_XGETTEXT"
 if test -n "$XGETTEXT"; then
-  echo "$ac_t""$XGETTEXT" 1>&6
+  echo "$as_me:11993: result: $XGETTEXT" >&5
+echo "${ECHO_T}$XGETTEXT" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:11996: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-        
+       BUILD_INCLUDED_LIBINTL=yes
        USE_INCLUDED_LIBINTL=yes
         CATOBJEXT=.gmo
-        INSTOBJEXT=.mo
-        DATADIRNAME=share
-       INTLDEPS='$(top_builddir)/intl/libintl.a'
-       INTLLIBS=$INTLDEPS
-       LIBS=`echo $LIBS | sed -e 's/-lintl//'`
-        nls_cv_header_intl=intl/libintl.h
-        nls_cv_header_libgt=intl/libgettext.h
+       INTLLIBS="\$(top_builddir)/intl/libintl.a $LIBICONV"
+       LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
       fi
 
             if test "$XGETTEXT" != ":"; then
                        if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
          : ;
        else
-         echo "$ac_t""found xgettext program is not GNU xgettext; ignore it" 1>&6
+         echo "$as_me:12011: result: found xgettext program is not GNU xgettext; ignore it" >&5
+echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6
          XGETTEXT=":"
        fi
       fi
 
-      # We need to process the po/ directory.
-      POSUB=po
-    else
-      DATADIRNAME=share
-      nls_cv_header_intl=intl/libintl.h
-      nls_cv_header_libgt=intl/libgettext.h
+            POSUB=po
+    fi
+    ac_config_commands="$ac_config_commands default-2"
+
+            if test "$PACKAGE" = gettext; then
+      BUILD_INCLUDED_LIBINTL=yes
     fi
-    
-    
 
+                                            for ac_prog in bison
+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:12029: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_INTLBISON+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$INTLBISON"; then
+  ac_cv_prog_INTLBISON="$INTLBISON" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_INTLBISON="$ac_prog"
+echo "$as_me:12044: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+INTLBISON=$ac_cv_prog_INTLBISON
+if test -n "$INTLBISON"; then
+  echo "$as_me:12052: result: $INTLBISON" >&5
+echo "${ECHO_T}$INTLBISON" >&6
+else
+  echo "$as_me:12055: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$INTLBISON" && break
+done
 
-    # If this is used in GNU gettext we have to set USE_NLS to `yes'
-    # because some of the sources are only built for this goal.
-    if test "$PACKAGE" = gettext; then
-      USE_NLS=yes
-      USE_INCLUDED_LIBINTL=yes
+    if test -z "$INTLBISON"; then
+      ac_verc_fail=yes
+    else
+            echo "$as_me:12065: checking version of bison" >&5
+echo $ECHO_N "checking version of bison... $ECHO_C" >&6
+      ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison .* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+      case $ac_prog_version in
+        '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
+        1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
+           ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
+        *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
+      esac
+      echo "$as_me:12074: result: $ac_prog_version" >&5
+echo "${ECHO_T}$ac_prog_version" >&6
+    fi
+    if test $ac_verc_fail = yes; then
+      INTLBISON=:
     fi
 
                 for lang in $ALL_LINGUAS; do
       POFILES="$POFILES $lang.po"
     done
 
-        
-    
-    
-    
-    
-    
-    
-    
-    
-    
-    
-  
+        nls_cv_header_intl=
+    nls_cv_header_libgt=
+
+        DATADIRNAME=share
+
+        INSTOBJEXT=.mo
+
+        GENCAT=gencat
 
    if test "x$CATOBJEXT" != "x"; then
      if test "x$ALL_LINGUAS" = "x"; then
        LINGUAS=
      else
-       echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
-echo "configure:6288: checking for catalogs to be installed" >&5
+       echo "$as_me:12099: checking for catalogs to be installed" >&5
+echo $ECHO_N "checking for catalogs to be installed... $ECHO_C" >&6
        NEW_LINGUAS=
-       for lang in ${LINGUAS=$ALL_LINGUAS}; do
-         case "$ALL_LINGUAS" in
-          *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;;
-         esac
+       for presentlang in $ALL_LINGUAS; do
+         useit=no
+         for desiredlang in ${LINGUAS-$ALL_LINGUAS}; do
+           # Use the presentlang catalog if desiredlang is
+           #   a. equal to presentlang, or
+           #   b. a variant of presentlang (because in this case,
+           #      presentlang can be used as a fallback for messages
+           #      which are not translated in the desiredlang catalog).
+           case "$desiredlang" in
+             "$presentlang"*) useit=yes;;
+           esac
+         done
+         if test $useit = yes; then
+           NEW_LINGUAS="$NEW_LINGUAS $presentlang"
+         fi
        done
        LINGUAS=$NEW_LINGUAS
-       echo "$ac_t""$LINGUAS" 1>&6
+       echo "$as_me:12119: result: $LINGUAS" >&5
+echo "${ECHO_T}$LINGUAS" >&6
      fi
 
           if test -n "$LINGUAS"; then
@@ -6300,66 +12125,6 @@ echo "configure:6288: checking for catalogs to be installed" >&5
      fi
    fi
 
-            if test $ac_cv_header_locale_h = yes; then
-     INCLUDE_LOCALE_H="#include <locale.h>"
-   else
-     INCLUDE_LOCALE_H="\
-/* The system does not provide the header <locale.h>.  Take care yourself.  */"
-   fi
-   
-
-            test -d intl || mkdir intl
-   if test "$CATOBJEXT" = ".cat"; then
-     ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
-echo "configure:6316: checking for linux/version.h" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 6321 "configure"
-#include "confdefs.h"
-#include <linux/version.h>
-EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6326: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  msgformat=linux
-else
-  echo "$ac_t""no" 1>&6
-msgformat=xopen
-fi
-
-
-               sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
-   fi
-      sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
-     $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
-
-            if test "$PACKAGE" = "gettext"; then
-     GT_NO="#NO#"
-     GT_YES=
-   else
-     GT_NO=
-     GT_YES="#YES#"
-   fi
-   
-   
-
             MKINSTALLDIRS=
    if test -n "$ac_aux_dir"; then
      MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
    if test -z "$MKINSTALLDIRS"; then
      MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
    fi
-   
-
-      l=
-   
 
-         test -d po || mkdir po
-   if test "x$srcdir" != "x."; then
-     if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
-       posrcprefix="$srcdir/"
-     else
-       posrcprefix="../$srcdir/"
-     fi
-   else
-     posrcprefix="../"
-   fi
-   rm -f po/POTFILES
-   sed -e "/^#/d" -e "/^\$/d" -e "s,.*,        $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
-       < $srcdir/po/POTFILES.in > po/POTFILES
-  
+      INTL_LIBTOOL_SUFFIX_PREFIX=
 
-trap '' 1 2 15
-cat > confcache <<\EOF
+ac_config_files="$ac_config_files Makefile intl/Makefile po/Makefile.in doc/Makefile man/Makefile man/ja/Makefile man/pl/Makefile man/pt_BR/Makefile libmisc/Makefile lib/Makefile src/Makefile contrib/Makefile debian/Makefile etc/Makefile etc/pam.d/Makefile shadow-utils.spec"
+cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
 # tests run on this system so they can be shared between configure
-# scripts and configure runs.  It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
 #
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already.  You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
 #
-EOF
+# `ac_cv_env_foo' variables (set or unset) will be overriden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
 # The following way of writing the cache mishandles newlines in values,
 # but we know of no workaround that is simple, portable, and efficient.
 # So, don't put newlines in cache variables' values.
 # Ultrix sh set writes to stderr and can't be redirected directly,
 # and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
-  case `(ac_space=' '; set | grep ac_space) 2>&1` in
-  *ac_space=\ *)
-    # `set' does not quote correctly, so add quotes (double-quote substitution
-    # turns \\\\ into \\, and sed turns \\ into \).
-    sed -n \
-      -e "s/'/'\\\\''/g" \
-      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
-    ;;
-  *)
-    # `set' quotes correctly as required by POSIX, so do not add quotes.
-    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
-    ;;
-  esac >> confcache
-if cmp -s $cache_file confcache; then
-  :
-else
+{
+  (set) 2>&1 |
+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+        "s/'/'\\\\''/g;
+         s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;;
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n \
+        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} |
+  sed '
+     t clear
+     : clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     : end' >>confcache
+if cmp -s $cache_file confcache; then :; else
   if test -w $cache_file; then
-    echo "updating cache $cache_file"
-    cat confcache > $cache_file
+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+    cat confcache >$cache_file
   else
     echo "not updating unwritable cache $cache_file"
   fi
 fi
 rm -f confcache
 
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
 test "x$prefix" = xNONE && prefix=$ac_default_prefix
 # Let make expand exec_prefix.
 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
 
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
 if test "x$srcdir" = x.; then
-  ac_vpsub='/^[        ]*VPATH[        ]*=[^:]*$/d'
+  ac_vpsub='/^[        ]*VPATH[        ]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:*@srcdir@:*/:/;
+s/^\([^=]*=[   ]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[     ]*$//;
+}'
 fi
 
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
 DEFS=-DHAVE_CONFIG_H
 
-# Without the "./", some shells look in PATH for config.status.
 : ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:12218: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
 # Generated automatically by configure.
 # Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
 # Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
+# configure, is in config.log if it exists.
 
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
+debug=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+ac_cs_invocation="\$0 \$@"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+
+# Name of the executable.
+as_me=`echo "$0" |sed 's,.*[\\/],,'`
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+as_executable_p="test -f"
+
+# Support unset when possible.
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+# NLS nuisances.
+$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; }
+$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; }
+$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; }
+$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; }
+$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; }
+$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; }
+$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; }
+$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; }
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS="  $as_nl"
+
+# CDPATH.
+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+
+exec 6>&1
+
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\EOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number, then exit
+  -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
+
+Configuration files:
+$config_files
+
+Configuration headers:
+$config_headers
+
+Configuration commands:
+$config_commands
+
+Report bugs to <bug-autoconf@gnu.org>."
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+ac_cs_version="\\
+config.status
+configured by $0, generated by GNU Autoconf 2.52,
+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+INSTALL="$INSTALL"
+EOF
+
+cat >>$CONFIG_STATUS <<\EOF
+# 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.
+ac_need_defaults=:
+while test $# != 0
 do
-  case "\$ac_option" in
+  case $1 in
+  --*=*)
+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+    shift
+    set dummy "$ac_option" "$ac_optarg" ${1+"$@"}
+    shift
+    ;;
+  -*);;
+  *) # This is not an option, so the user has probably given explicit
+     # arguments.
+     ac_need_defaults=false;;
+  esac
+
+  case $1 in
+  # Handling of the options.
+EOF
+cat >>$CONFIG_STATUS <<EOF
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
-    exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
-    echo "$CONFIG_STATUS generated by autoconf version 2.13"
-    exit 0 ;;
-  -help | --help | --hel | --he | --h)
-    echo "\$ac_cs_usage"; exit 0 ;;
-  *) echo "\$ac_cs_usage"; exit 1 ;;
+    echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
+    exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+  --version | --vers* | -V )
+    echo "$ac_cs_version"; exit 0 ;;
+  --he | --h)
+    # Conflict between --help and --header
+    { { echo "$as_me:12394: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; };;
+  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit 0 ;;
+  --debug | --d* | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    shift
+    CONFIG_FILES="$CONFIG_FILES $1"
+    ac_need_defaults=false;;
+  --header | --heade | --head | --hea )
+    shift
+    CONFIG_HEADERS="$CONFIG_HEADERS $1"
+    ac_need_defaults=false;;
+
+  # This is an error.
+  -*) { { echo "$as_me:12413: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1" ;;
+
   esac
+  shift
 done
 
-ac_given_srcdir=$srcdir
-ac_given_INSTALL="$INSTALL"
+exec 5>>config.log
+cat >&5 << _ACEOF
 
-trap 'rm -fr `echo "libmisc/Makefile man/Makefile man/pl/Makefile
-       lib/Makefile src/Makefile Makefile
-       contrib/Makefile debian/Makefile doc/Makefile etc/Makefile
-       intl/Makefile intl/po2tbl.sed po/Makefile.in
-       etc/pam.d/Makefile shadow-utils.spec config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
+## ----------------------- ##
+## Running config.status.  ##
+## ----------------------- ##
 
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
-s%@INSTALL_DATA@%$INSTALL_DATA%g
-s%@PACKAGE@%$PACKAGE%g
-s%@VERSION@%$VERSION%g
-s%@ACLOCAL@%$ACLOCAL%g
-s%@AUTOCONF@%$AUTOCONF%g
-s%@AUTOMAKE@%$AUTOMAKE%g
-s%@AUTOHEADER@%$AUTOHEADER%g
-s%@MAKEINFO@%$MAKEINFO%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@CC@%$CC%g
-s%@LN_S@%$LN_S%g
-s%@YACC@%$YACC%g
-s%@CPP@%$CPP%g
-s%@U@%$U%g
-s%@ANSI2KNR@%$ANSI2KNR%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@RANLIB@%$RANLIB%g
-s%@LIBTOOL@%$LIBTOOL%g
-s%@LIBOBJS@%$LIBOBJS%g
-s%@LIBCRYPT@%$LIBCRYPT%g
-s%@LIBCRACK@%$LIBCRACK%g
-s%@LIBSKEY@%$LIBSKEY%g
-s%@LIBMD@%$LIBMD%g
-s%@LIBTCFS@%$LIBTCFS%g
-s%@LIBPAM@%$LIBPAM%g
-s%@LTLIBOBJS@%$LTLIBOBJS%g
-s%@ALLOCA@%$ALLOCA%g
-s%@USE_NLS@%$USE_NLS%g
-s%@MSGFMT@%$MSGFMT%g
-s%@GMSGFMT@%$GMSGFMT%g
-s%@XGETTEXT@%$XGETTEXT%g
-s%@GENCAT@%$GENCAT%g
-s%@USE_INCLUDED_LIBINTL@%$USE_INCLUDED_LIBINTL%g
-s%@CATALOGS@%$CATALOGS%g
-s%@CATOBJEXT@%$CATOBJEXT%g
-s%@DATADIRNAME@%$DATADIRNAME%g
-s%@GMOFILES@%$GMOFILES%g
-s%@INSTOBJEXT@%$INSTOBJEXT%g
-s%@INTLDEPS@%$INTLDEPS%g
-s%@INTLLIBS@%$INTLLIBS%g
-s%@INTLOBJS@%$INTLOBJS%g
-s%@POFILES@%$POFILES%g
-s%@POSUB@%$POSUB%g
-s%@INCLUDE_LOCALE_H@%$INCLUDE_LOCALE_H%g
-s%@GT_NO@%$GT_NO%g
-s%@GT_YES@%$GT_YES%g
-s%@MKINSTALLDIRS@%$MKINSTALLDIRS%g
-s%@l@%$l%g
+This file was extended by $as_me 2.52, executed with
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  > $ac_cs_invocation
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
 
-CEOF
+_ACEOF
 EOF
 
-cat >> $CONFIG_STATUS <<\EOF
+cat >>$CONFIG_STATUS <<EOF
+#
+# INIT-COMMANDS section.
+#
 
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
-  if test $ac_beg -gt 1; then
-    sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
-  else
-    sed "${ac_end}q" conftest.subs > conftest.s$ac_file
-  fi
-  if test ! -s conftest.s$ac_file; then
-    ac_more_lines=false
-    rm -f conftest.s$ac_file
-  else
-    if test -z "$ac_sed_cmds"; then
-      ac_sed_cmds="sed -f conftest.s$ac_file"
-    else
-      ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
-    fi
-    ac_file=`expr $ac_file + 1`
-    ac_beg=$ac_end
-    ac_end=`expr $ac_end + $ac_max_sed_cmds`
-  fi
+AMDEP_TRUE="$AMDEP_TRUE"
+ac_aux_dir="$ac_aux_dir"
+
+EOF
+
+cat >>$CONFIG_STATUS <<\EOF
+for ac_config_target in $ac_config_targets
+do
+  case "$ac_config_target" in
+  # Handling of arguments.
+  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+  "intl/Makefile" ) CONFIG_FILES="$CONFIG_FILES intl/Makefile" ;;
+  "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
+  "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+  "man/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/Makefile" ;;
+  "man/ja/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/ja/Makefile" ;;
+  "man/pl/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/pl/Makefile" ;;
+  "man/pt_BR/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/pt_BR/Makefile" ;;
+  "libmisc/Makefile" ) CONFIG_FILES="$CONFIG_FILES libmisc/Makefile" ;;
+  "lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;;
+  "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
+  "contrib/Makefile" ) CONFIG_FILES="$CONFIG_FILES contrib/Makefile" ;;
+  "debian/Makefile" ) CONFIG_FILES="$CONFIG_FILES debian/Makefile" ;;
+  "etc/Makefile" ) CONFIG_FILES="$CONFIG_FILES etc/Makefile" ;;
+  "etc/pam.d/Makefile" ) CONFIG_FILES="$CONFIG_FILES etc/pam.d/Makefile" ;;
+  "shadow-utils.spec" ) CONFIG_FILES="$CONFIG_FILES shadow-utils.spec" ;;
+  "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;;
+  "default-2" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-2" ;;
+  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
+  *) { { echo "$as_me:12477: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
 done
-if test -z "$ac_sed_cmds"; then
-  ac_sed_cmds=cat
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
+  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
 fi
+
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+: ${TMPDIR=/tmp}
+{
+  tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=$TMPDIR/cs$$-$RANDOM
+  (umask 077 && mkdir $tmp)
+} ||
+{
+   echo "$me: cannot create a temporary directory in $TMPDIR" >&2
+   { (exit 1); exit 1; }
+}
+
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+  # Protect against being on the right side of a sed subst in config.status.
+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s,@SHELL@,$SHELL,;t t
+s,@exec_prefix@,$exec_prefix,;t t
+s,@prefix@,$prefix,;t t
+s,@program_transform_name@,$program_transform_name,;t t
+s,@bindir@,$bindir,;t t
+s,@sbindir@,$sbindir,;t t
+s,@libexecdir@,$libexecdir,;t t
+s,@datadir@,$datadir,;t t
+s,@sysconfdir@,$sysconfdir,;t t
+s,@sharedstatedir@,$sharedstatedir,;t t
+s,@localstatedir@,$localstatedir,;t t
+s,@libdir@,$libdir,;t t
+s,@includedir@,$includedir,;t t
+s,@oldincludedir@,$oldincludedir,;t t
+s,@infodir@,$infodir,;t t
+s,@mandir@,$mandir,;t t
+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s,@build_alias@,$build_alias,;t t
+s,@host_alias@,$host_alias,;t t
+s,@target_alias@,$target_alias,;t t
+s,@ECHO_C@,$ECHO_C,;t t
+s,@ECHO_N@,$ECHO_N,;t t
+s,@ECHO_T@,$ECHO_T,;t t
+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s,@DEFS@,$DEFS,;t t
+s,@LIBS@,$LIBS,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@PACKAGE@,$PACKAGE,;t t
+s,@VERSION@,$VERSION,;t t
+s,@EXEEXT@,$EXEEXT,;t t
+s,@OBJEXT@,$OBJEXT,;t t
+s,@ACLOCAL@,$ACLOCAL,;t t
+s,@AUTOCONF@,$AUTOCONF,;t t
+s,@AUTOMAKE@,$AUTOMAKE,;t t
+s,@AUTOHEADER@,$AUTOHEADER,;t t
+s,@MAKEINFO@,$MAKEINFO,;t t
+s,@AMTAR@,$AMTAR,;t t
+s,@install_sh@,$install_sh,;t t
+s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
+s,@AWK@,$AWK,;t t
+s,@SET_MAKE@,$SET_MAKE,;t t
+s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
+s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
+s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
+s,@DEPDIR@,$DEPDIR,;t t
+s,@CC@,$CC,;t t
+s,@CFLAGS@,$CFLAGS,;t t
+s,@LDFLAGS@,$LDFLAGS,;t t
+s,@CPPFLAGS@,$CPPFLAGS,;t t
+s,@ac_ct_CC@,$ac_ct_CC,;t t
+s,@am__include@,$am__include,;t t
+s,@am__quote@,$am__quote,;t t
+s,@CCDEPMODE@,$CCDEPMODE,;t t
+s,@LN_S@,$LN_S,;t t
+s,@YACC@,$YACC,;t t
+s,@CPP@,$CPP,;t t
+s,@U@,$U,;t t
+s,@ANSI2KNR@,$ANSI2KNR,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@ECHO@,$ECHO,;t t
+s,@RANLIB@,$RANLIB,;t t
+s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
+s,@STRIP@,$STRIP,;t t
+s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
+s,@LIBTOOL@,$LIBTOOL,;t t
+s,@LIBOBJS@,$LIBOBJS,;t t
+s,@LIBCRYPT@,$LIBCRYPT,;t t
+s,@LIBCRACK@,$LIBCRACK,;t t
+s,@LIBSKEY@,$LIBSKEY,;t t
+s,@LIBMD@,$LIBMD,;t t
+s,@LIBTCFS@,$LIBTCFS,;t t
+s,@LIBPAM@,$LIBPAM,;t t
+s,@ALLOCA@,$ALLOCA,;t t
+s,@GLIBC21@,$GLIBC21,;t t
+s,@LIBICONV@,$LIBICONV,;t t
+s,@USE_NLS@,$USE_NLS,;t t
+s,@MSGFMT@,$MSGFMT,;t t
+s,@GMSGFMT@,$GMSGFMT,;t t
+s,@XGETTEXT@,$XGETTEXT,;t t
+s,@INTLBISON@,$INTLBISON,;t t
+s,@BUILD_INCLUDED_LIBINTL@,$BUILD_INCLUDED_LIBINTL,;t t
+s,@USE_INCLUDED_LIBINTL@,$USE_INCLUDED_LIBINTL,;t t
+s,@CATALOGS@,$CATALOGS,;t t
+s,@CATOBJEXT@,$CATOBJEXT,;t t
+s,@GMOFILES@,$GMOFILES,;t t
+s,@INTLLIBS@,$INTLLIBS,;t t
+s,@INTLOBJS@,$INTLOBJS,;t t
+s,@POFILES@,$POFILES,;t t
+s,@POSUB@,$POSUB,;t t
+s,@DATADIRNAME@,$DATADIRNAME,;t t
+s,@INSTOBJEXT@,$INSTOBJEXT,;t t
+s,@GENCAT@,$GENCAT,;t t
+s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t
+s,@INTL_LIBTOOL_SUFFIX_PREFIX@,$INTL_LIBTOOL_SUFFIX_PREFIX,;t t
+CEOF
+
 EOF
 
-cat >> $CONFIG_STATUS <<EOF
+  cat >>$CONFIG_STATUS <<\EOF
+  # Split the substitutions into bite-sized pieces for seds with
+  # small command number limits, like on Digital OSF/1 and HP-UX.
+  ac_max_sed_lines=48
+  ac_sed_frag=1 # Number of current file.
+  ac_beg=1 # First line for current file.
+  ac_end=$ac_max_sed_lines # Line after last line for current file.
+  ac_more_lines=:
+  ac_sed_cmds=
+  while $ac_more_lines; do
+    if test $ac_beg -gt 1; then
+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    else
+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+    fi
+    if test ! -s $tmp/subs.frag; then
+      ac_more_lines=false
+    else
+      # The purpose of the label and of the branching condition is to
+      # speed up the sed processing (if there are no `@' at all, there
+      # is no need to browse any of the substitutions).
+      # These are the two extra sed commands mentioned above.
+      (echo ':t
+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
+      if test -z "$ac_sed_cmds"; then
+       ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+      else
+       ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+      fi
+      ac_sed_frag=`expr $ac_sed_frag + 1`
+      ac_beg=$ac_end
+      ac_end=`expr $ac_end + $ac_max_sed_lines`
+    fi
+  done
+  if test -z "$ac_sed_cmds"; then
+    ac_sed_cmds=cat
+  fi
+fi # test -n "$CONFIG_FILES"
 
-CONFIG_FILES=\${CONFIG_FILES-"libmisc/Makefile man/Makefile man/pl/Makefile
-       lib/Makefile src/Makefile Makefile
-       contrib/Makefile debian/Makefile doc/Makefile etc/Makefile
-       intl/Makefile intl/po2tbl.sed po/Makefile.in
-       etc/pam.d/Makefile shadow-utils.spec"}
 EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
+cat >>$CONFIG_STATUS <<\EOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case "$ac_file" in
-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-  *) ac_file_in="${ac_file}.in" ;;
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+        cat >$tmp/stdin
+        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
   esac
 
-  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
-  # Remove last slash and all that follows it.  Not all systems have dirname.
-  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+  ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+         X"$ac_file" : 'X\(//\)[^/]' \| \
+         X"$ac_file" : 'X\(//\)$' \| \
+         X"$ac_file" : 'X\(/\)' \| \
+         .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
   if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
-    # The file is in a subdirectory.
-    test ! -d "$ac_dir" && mkdir "$ac_dir"
-    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+    { case "$ac_dir" in
+  [\\/]* | ?:[\\/]* ) as_incr_dir=;;
+  *)                      as_incr_dir=.;;
+esac
+as_dummy="$ac_dir"
+for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
+  case $as_mkdir_dir in
+    # Skip DOS drivespec
+    ?:) as_incr_dir=$as_mkdir_dir ;;
+    *)
+      as_incr_dir=$as_incr_dir/$as_mkdir_dir
+      test -d "$as_incr_dir" || mkdir "$as_incr_dir"
+    ;;
+  esac
+done; }
+
+    ac_dir_suffix="/`echo $ac_dir|sed 's,^\./,,'`"
     # A "../" for each directory in $ac_dir_suffix.
-    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+    ac_dots=`echo "$ac_dir_suffix" | sed 's,/[^/]*,../,g'`
   else
     ac_dir_suffix= ac_dots=
   fi
 
-  case "$ac_given_srcdir" in
-  .)  srcdir=.
-      if test -z "$ac_dots"; then top_srcdir=.
-      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
-  /*|[A-z]:/*)
-    srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
+  case $srcdir in
+  .)  ac_srcdir=.
+      if test -z "$ac_dots"; then
+         ac_top_srcdir=.
+      else
+         ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'`
+      fi ;;
+  [\\/]* | ?:[\\/]* )
+      ac_srcdir=$srcdir$ac_dir_suffix;
+      ac_top_srcdir=$srcdir ;;
   *) # Relative path.
-    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
-    top_srcdir="$ac_dots$ac_given_srcdir" ;;
+    ac_srcdir=$ac_dots$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_dots$srcdir ;;
   esac
 
-  case "$ac_given_INSTALL" in
-  [/$]*|[A-z]:/*) INSTALL="$ac_given_INSTALL" ;;
-  *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
+  case $INSTALL in
+  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+  *) ac_INSTALL=$ac_dots$INSTALL ;;
   esac
 
-  echo creating "$ac_file"
-  rm -f "$ac_file"
-  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
-  case "$ac_file" in
-  *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
-  *) ac_comsub= ;;
-  esac
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:12750: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated automatically by config.status.  */
+  configure_input="Generated automatically from `echo $ac_file_in |
+                                                 sed 's,.*/,,'` by configure."
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+         # Absolute (can't be DOS-style, as IFS=:)
+         test -f "$f" || { { echo "$as_me:12768: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         echo $f;;
+      *) # Relative
+         if test -f "$f"; then
+           # Build tree
+           echo $f
+         elif test -f "$srcdir/$f"; then
+           # Source tree
+           echo $srcdir/$f
+         else
+           # /dev/null tree
+           { { echo "$as_me:12781: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+EOF
+cat >>$CONFIG_STATUS <<EOF
+  sed "$ac_vpsub
+$extrasub
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s,@configure_input@,$configure_input,;t t
+s,@srcdir@,$ac_srcdir,;t t
+s,@top_srcdir@,$ac_top_srcdir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+  rm -f $tmp/stdin
+  if test x"$ac_file" != x-; then
+    mv $tmp/out $ac_file
+  else
+    cat $tmp/out
+    rm -f $tmp/out
+  fi
+
+done
+EOF
+cat >>$CONFIG_STATUS <<\EOF
 
-  ac_file_inputs=`echo $ac_file_in|sed -e "s%:% $ac_given_srcdir/%g" -e "s%^%$ac_given_srcdir/%"`
-  sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-s%@INSTALL@%$INSTALL%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
+#
+# CONFIG_HEADER section.
+#
 
 # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
 # NAME is the cpp macro being defined and VALUE is the value it is being given.
 #
 # ac_d sets the value in "#define NAME VALUE" lines.
-ac_dA='s%^\([  ]*\)#\([        ]*define[       ][      ]*\)'
-ac_dB='\([     ][      ]*\)[^  ]*%\1#\2'
-ac_dC='\3'
-ac_dD='%g'
-# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
-ac_uA='s%^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
-ac_uB='\([     ]\)%\1#\2define\3'
+ac_dA='s,^\([  ]*\)#\([        ]*define[       ][      ]*\)'
+ac_dB='[       ].*$,\1#\2'
+ac_dC=' '
+ac_dD=',;t'
+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+ac_uA='s,^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
+ac_uB='$,\1#\2define\3'
 ac_uC=' '
-ac_uD='\4%g'
-# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
-ac_eA='s%^\([  ]*\)#\([        ]*\)undef\([    ][      ]*\)'
-ac_eB='$%\1#\2define\3'
-ac_eC=' '
-ac_eD='%g'
+ac_uD=',;t'
 
-if test "${CONFIG_HEADERS+set}" != set; then
-EOF
-cat >> $CONFIG_STATUS <<EOF
-  CONFIG_HEADERS="config.h"
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-fi
-for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case "$ac_file" in
-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-  *) ac_file_in="${ac_file}.in" ;;
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+        cat >$tmp/stdin
+        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
   esac
 
-  echo creating $ac_file
-
-  rm -f conftest.frag conftest.in conftest.out
-  ac_file_inputs=`echo $ac_file_in|sed -e "s%:% $ac_given_srcdir/%g" -e "s%^%$ac_given_srcdir/%"`
-  cat $ac_file_inputs > conftest.in
-
-EOF
-
-# Transform confdefs.h into a sed script conftest.vals that substitutes
-# the proper values into config.h.in to produce config.h.  And first:
-# Protect against being on the right side of a sed subst in config.status.
-# Protect against being in an unquoted here document in config.status.
-rm -f conftest.vals
-cat > conftest.hdr <<\EOF
-s/[\\&%]/\\&/g
-s%[\\$`]%\\&%g
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp
-s%ac_d%ac_u%gp
-s%ac_u%ac_e%gp
-EOF
-sed -n -f conftest.hdr confdefs.h > conftest.vals
-rm -f conftest.hdr
+  test x"$ac_file" != x- && { echo "$as_me:12842: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+         # Absolute (can't be DOS-style, as IFS=:)
+         test -f "$f" || { { echo "$as_me:12853: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         echo $f;;
+      *) # Relative
+         if test -f "$f"; then
+           # Build tree
+           echo $f
+         elif test -f "$srcdir/$f"; then
+           # Source tree
+           echo $srcdir/$f
+         else
+           # /dev/null tree
+           { { echo "$as_me:12866: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+  # Remove the trailing spaces.
+  sed 's/[     ]*$//' $ac_file_inputs >$tmp/in
+
+EOF
+
+# Transform confdefs.h into two sed scripts, `conftest.defines' and
+# `conftest.undefs', that substitutes the proper values into
+# config.h.in to produce config.h.  The first handles `#define'
+# templates, and the second `#undef' templates.
+# And first: Protect against being on the right side of a sed subst in
+# config.status.  Protect against being in an unquoted here document
+# in config.status.
+rm -f conftest.defines conftest.undefs
+# Using a here document instead of a string reduces the quoting nightmare.
+# Putting comments in sed scripts is not portable.
+#
+# `end' is used to avoid that the second main sed command (meant for
+# 0-ary CPP macros) applies to n-ary macro definitions.
+# See the Autoconf documentation for `clear'.
+cat >confdef2sed.sed <<\EOF
+s/[\\&,]/\\&/g
+s,[\\$`],\\&,g
+t clear
+: clear
+s,^[   ]*#[    ]*define[       ][      ]*\(\([^        (][^    (]*\)([^)]*)\)[         ]*\(.*\)$,${ac_dA}\2${ac_dB}\1${ac_dC}\3${ac_dD},gp
+t end
+s,^[   ]*#[    ]*define[       ][      ]*\([^  ][^     ]*\)[   ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+: end
+EOF
+# If some macros were called several times there might be several times
+# the same #defines, which is useless.  Nevertheless, we may not want to
+# sort them, since we want the *last* AC-DEFINE to be honored.
+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
+rm -f confdef2sed.sed
 
 # This sed command replaces #undef with comments.  This is necessary, for
 # example, in the case of _POSIX_SOURCE, which is predefined and required
 # on some systems where configure will not decide to define it.
-cat >> conftest.vals <<\EOF
-s%^[   ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
+cat >>conftest.undefs <<\EOF
+s,^[   ]*#[    ]*undef[        ][      ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
 EOF
 
-# Break up conftest.vals because some shells have a limit on
-# the size of here documents, and old seds have small limits too.
-
+# Break up conftest.defines because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
+echo '  if egrep "^[   ]*#[    ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
+echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
+echo '  :' >>$CONFIG_STATUS
 rm -f conftest.tail
-while :
+while grep . conftest.defines >/dev/null
 do
-  ac_lines=`grep -c . conftest.vals`
-  # grep -c gives empty output for an empty file on some AIX systems.
-  if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi
-  # Write a limited-size here document to conftest.frag.
-  echo '  cat > conftest.frag <<CEOF' >> $CONFIG_STATUS
-  sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS
+  # Write a limited-size here document to $tmp/defines.sed.
+  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#define' lines.
+  echo '/^[    ]*#[    ]*define/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
   echo 'CEOF
-  sed -f conftest.frag conftest.in > conftest.out
-  rm -f conftest.in
-  mv conftest.out conftest.in
-' >> $CONFIG_STATUS
-  sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
-  rm -f conftest.vals
-  mv conftest.tail conftest.vals
+  sed -f $tmp/defines.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
+  rm -f conftest.defines
+  mv conftest.tail conftest.defines
 done
-rm -f conftest.vals
-
-cat >> $CONFIG_STATUS <<\EOF
-  rm -f conftest.frag conftest.h
-  echo "/* $ac_file.  Generated automatically by configure.  */" > conftest.h
-  cat conftest.in >> conftest.h
-  rm -f conftest.in
-  if cmp -s $ac_file conftest.h 2>/dev/null; then
-    echo "$ac_file is unchanged"
-    rm -f conftest.h
-  else
-    # Remove last slash and all that follows it.  Not all systems have dirname.
-      ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
-      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
-      # The file is in a subdirectory.
-      test ! -d "$ac_dir" && mkdir "$ac_dir"
-    fi
-    rm -f $ac_file
-    mv conftest.h $ac_file
-  fi
-fi; done
-
-EOF
+rm -f conftest.defines
+echo '  fi # egrep' >>$CONFIG_STATUS
+echo >>$CONFIG_STATUS
 
-cat >> $CONFIG_STATUS <<EOF
-ac_sources="$nls_cv_header_libgt"
-ac_dests="$nls_cv_header_intl"
-EOF
-
-cat >> $CONFIG_STATUS <<\EOF
-srcdir=$ac_given_srcdir
-while test -n "$ac_sources"; do
-  set $ac_dests; ac_dest=$1; shift; ac_dests=$*
-  set $ac_sources; ac_source=$1; shift; ac_sources=$*
-
-  echo "linking $srcdir/$ac_source to $ac_dest"
-
-  if test ! -r $srcdir/$ac_source; then
-    { echo "configure: error: $srcdir/$ac_source: File not found" 1>&2; exit 1; }
-  fi
-  rm -f $ac_dest
-
-  # Make relative symlinks.
-  # Remove last slash and all that follows it.  Not all systems have dirname.
-  ac_dest_dir=`echo $ac_dest|sed 's%/[^/][^/]*$%%'`
-  if test "$ac_dest_dir" != "$ac_dest" && test "$ac_dest_dir" != .; then
-    # The dest file is in a subdirectory.
-    test ! -d "$ac_dest_dir" && mkdir "$ac_dest_dir"
-    ac_dest_dir_suffix="/`echo $ac_dest_dir|sed 's%^\./%%'`"
-    # A "../" for each directory in $ac_dest_dir_suffix.
-    ac_dots=`echo $ac_dest_dir_suffix|sed 's%/[^/]*%../%g'`
+# Break up conftest.undefs because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.undefs >/dev/null
+do
+  # Write a limited-size here document to $tmp/undefs.sed.
+  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+  # Speed up: don't consider the non `#undef'
+  echo '/^[    ]*#[    ]*undef/!b' >>$CONFIG_STATUS
+  # Work around the forget-to-reset-the-flag bug.
+  echo 't clr' >>$CONFIG_STATUS
+  echo ': clr' >>$CONFIG_STATUS
+  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
+  echo 'CEOF
+  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
+  rm -f $tmp/in
+  mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
+  rm -f conftest.undefs
+  mv conftest.tail conftest.undefs
+done
+rm -f conftest.undefs
+
+cat >>$CONFIG_STATUS <<\EOF
+  # 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 automatically by config.status.  */
+  if test x"$ac_file" = x-; then
+    echo "/* Generated automatically by configure.  */" >$tmp/config.h
   else
-    ac_dest_dir_suffix= ac_dots=
+    echo "/* $ac_file.  Generated automatically by configure.  */" >$tmp/config.h
   fi
-
-  case "$srcdir" in
-  [/$]*|[A-z]:/*) ac_rel_source="$srcdir/$ac_source" ;;
-  *) ac_rel_source="$ac_dots$srcdir/$ac_source" ;;
+  cat $tmp/in >>$tmp/config.h
+  rm -f $tmp/in
+  if test x"$ac_file" != x-; then
+    if cmp -s $ac_file $tmp/config.h 2>/dev/null; then
+      { echo "$as_me:12983: $ac_file is unchanged" >&5
+echo "$as_me: $ac_file is unchanged" >&6;}
+    else
+      ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+         X"$ac_file" : 'X\(//\)[^/]' \| \
+         X"$ac_file" : 'X\(//\)$' \| \
+         X"$ac_file" : 'X\(/\)' \| \
+         .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+         /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+         /^X\(\/\/\)$/{ s//\1/; q; }
+         /^X\(\/\).*/{ s//\1/; q; }
+         s/.*/./; q'`
+      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+        { case "$ac_dir" in
+  [\\/]* | ?:[\\/]* ) as_incr_dir=;;
+  *)                      as_incr_dir=.;;
+esac
+as_dummy="$ac_dir"
+for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
+  case $as_mkdir_dir in
+    # Skip DOS drivespec
+    ?:) as_incr_dir=$as_mkdir_dir ;;
+    *)
+      as_incr_dir=$as_incr_dir/$as_mkdir_dir
+      test -d "$as_incr_dir" || mkdir "$as_incr_dir"
+    ;;
   esac
+done; }
 
-  # Make a symlink if possible; otherwise try a hard link.
-  if ln -s $ac_rel_source $ac_dest 2>/dev/null ||
-    ln $srcdir/$ac_source $ac_dest; then :
+      fi
+      rm -f $ac_file
+      mv $tmp/config.h $ac_file
+    fi
   else
-    { echo "configure: error: can not link $ac_dest to $srcdir/$ac_source" 1>&2; exit 1; }
+    cat $tmp/config.h
+    rm -f $tmp/config.h
   fi
+  # Run the commands associated with the file.
+  case $ac_file in
+    config.h ) # update the timestamp
+echo timestamp >"./stamp-h1"
+ ;;
+  esac
 done
 EOF
-cat >> $CONFIG_STATUS <<EOF
+cat >>$CONFIG_STATUS <<\EOF
 
+#
+# CONFIG_COMMANDS section.
+#
+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
+  ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+  ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+
+  case $ac_dest in
+    default-1 )
+test x"$AMDEP_TRUE" != x"" ||
+for mf in $CONFIG_FILES; do
+  case "$mf" in
+  Makefile) dirpart=.;;
+  */Makefile) dirpart=`echo "$mf" | sed -e 's|/[^/]*$||'`;;
+  *) continue;;
+  esac
+  grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
+  # Extract the definition of DEP_FILES from the Makefile without
+  # running `make'.
+  DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n -e '/^U = / s///p' < "$mf"`
+  test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
+  # 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 -e '
+    /^DEP_FILES = .*\\\\$/ {
+      s/^DEP_FILES = //
+      :loop
+       s/\\\\$//
+       p
+       n
+       /\\\\$/ b loop
+      p
+    }
+    /^DEP_FILES = / s/^DEP_FILES = //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=`echo "$file" | sed -e 's|/[^/]*$||'`
+    $ac_aux_dir/mkinstalldirs "$dirpart/$fdir" > /dev/null 2>&1
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+ ;;
+    default-2 ) for ac_file in $CONFIG_FILES; do
+        # Support "outfile[:infile[:infile...]]"
+        case "$ac_file" in
+          *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+        esac
+        # PO directories have a Makefile.in generated from Makefile.in.in.
+        case "$ac_file" in */Makefile.in)
+          # Adjust a relative srcdir.
+          ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
+          ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
+          ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
+          case "$srcdir" in
+            .)  top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
+            /*) top_srcdir="$srcdir" ;;
+            *)  top_srcdir="$ac_dots$srcdir" ;;
+          esac
+          if test -f "$srcdir/$ac_dir/POTFILES.in"; then
+            rm -f "$ac_dir/POTFILES"
+            echo creating "$ac_dir/POTFILES"
+            sed -e "/^#/d" -e "/^[     ]*\$/d" -e "s,.*,     $top_srcdir/& \\\\," -e "\$s/\(.*\) \\\\/\1/" < "$srcdir/$ac_dir/POTFILES.in" > "$ac_dir/POTFILES"
+            echo creating "$ac_dir/Makefile"
+            sed -e "/POTFILES =/r $ac_dir/POTFILES" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
+          fi
+          ;;
+        esac
+      done ;;
+  esac
+done
+EOF
 
+cat >>$CONFIG_STATUS <<\EOF
 
-EOF
-cat >> $CONFIG_STATUS <<\EOF
-test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
-case "$CONFIG_FILES" in *po/Makefile.in*)
-        sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
-      esac
-echo timestamp > stamp-h
-exit 0
+{ (exit 0); exit 0; }
 EOF
 chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
+ac_clean_files=$ac_clean_files_save
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded.  So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status.  When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+  ac_cs_success=:
+  exec 5>/dev/null
+  $SHELL $CONFIG_STATUS || ac_cs_success=false
+  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; }
+fi
 
index 86f7250ef35b17a54a1f765bf9270691f5b3eabe..0ea298261964fd43e697cd872e8cefbcd9e5bfe5 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 AC_INIT(lib/dialchk.c)
-AM_INIT_AUTOMAKE(shadow, 20001016)
+AM_INIT_AUTOMAKE(shadow, 4.0.0)
 AM_CONFIG_HEADER(config.h)
 
 dnl Some hacks...
@@ -9,14 +9,14 @@ test "$prefix" = "/usr" && exec_prefix=""
 test "$CFLAGS" = "" && CFLAGS="-O2 -Wall"
 test "$LDFLAGS" = "" && LDFLAGS="-s"
 
+AM_DISABLE_SHARED
+AM_ENABLE_STATIC
+
 dnl Checks for programs.
 AC_PROG_CC
 AC_ISC_POSIX
-dnl AC_PROG_INSTALL
 AC_PROG_LN_S
-dnl AC_PROG_MAKE_SET
 AC_PROG_YACC
-dnl AC_ARG_PROGRAM
 AM_C_PROTOTYPES
 AM_PROG_LIBTOOL
 
@@ -26,10 +26,15 @@ dnl Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
 AC_HEADER_SYS_WAIT
-AC_CHECK_HEADERS(fcntl.h limits.h unistd.h sys/time.h utmp.h utmpx.h)
-AC_CHECK_HEADERS(termios.h termio.h sgtty.h sys/ioctl.h syslog.h)
-AC_CHECK_HEADERS(paths.h usersec.h utime.h ulimit.h sys/resource.h)
-AC_CHECK_HEADERS(gshadow.h shadow.h lastlog.h rpc/key_prot.h)
+
+AC_CHECK_HEADERS(fcntl.h limits.h unistd.h sys/time.h utmp.h utmpx.h \
+       termios.h termio.h sgtty.h sys/ioctl.h syslog.h paths.h usersec.h \
+       utime.h ulimit.h sys/resource.h gshadow.h shadow.h lastlog.h \
+       rpc/key_prot.h)
+
+AC_CHECK_FUNCS(a64l fchmod fchown fsync getgroups gethostname getspnam \
+       gettimeofday getusershell getutent initgroups lchown lckpwdf lstat \
+       memcpy memset mkstemp setgroups sigaction strchr updwtmp updwtmpx)
 
 dnl Checks for typedefs, structures, and compiler characteristics.
 AC_C_CONST
@@ -106,12 +111,6 @@ AC_PROG_GCC_TRADITIONAL
 AC_TYPE_SIGNAL
 AC_FUNC_UTIME_NULL
 AC_FUNC_STRFTIME
-dnl Disabled for now, strtoday.c has problems with year 2000 or later
-dnl AC_CHECK_FUNCS(strptime)
-AC_CHECK_FUNCS(a64l fchmod fchown fsync getgroups gethostname getspnam)
-AC_CHECK_FUNCS(gettimeofday getusershell getutent initgroups lchown lckpwdf)
-AC_CHECK_FUNCS(lstat memcpy memset setgroups sigaction strchr updwtmp updwtmpx)
-
 AC_REPLACE_FUNCS(mkdir putgrent putpwent putspent rename rmdir)
 AC_REPLACE_FUNCS(sgetgrent sgetpwent sgetspent)
 AC_REPLACE_FUNCS(snprintf strcasecmp strdup strerror strstr)
@@ -198,8 +197,6 @@ AC_DEFINE(AGING)
 AC_DEFINE(USE_SYSLOG)
 AC_DEFINE(RLOGIN)
 AC_DEFINE(RUSEROK, 0)
-AC_DEFINE(LOGIN_ACCESS)
-AC_DEFINE(SU_ACCESS)
 
 dnl Use our own version of getpass(), which handles long passwords
 dnl (unlike many systems which have a limit of 8 characters), and can
@@ -207,15 +204,14 @@ dnl be interrupted with Ctrl-C (unlike Linux libc).
 AC_DEFINE(getpass, libshadow_getpass)
 
 AC_ARG_ENABLE(desrpc, [  --enable-desrpc         try to use secure RPC in login (default if found)])
-dnl AC_ARG_ENABLE(md5crypt, [  --enable-md5crypt       include MD5-compatible crypt function])
 AC_ARG_ENABLE(shadowgrp, [  --enable-shadowgrp      enable shadow group support [default=yes]])
 
 AC_ARG_WITH(libcrack, [  --with-libcrack         try to use libcrack (default if found)])
 AC_ARG_WITH(libcrypt, [  --with-libcrypt         try to use libcrypt (default if found)])
-AC_ARG_WITH(libopie, [  --with-libopie          use libopie for OPIE support])
-AC_ARG_WITH(libpam, [  --with-libpam           use libpam for PAM support])
-AC_ARG_WITH(libskey, [  --with-libskey          use libskey for S/Key support])
-AC_ARG_WITH(libtcfs, [  --with-libtcfs          use libtcfs for TCFS support])
+AC_ARG_WITH(libopie,  [  --with-libopie          use libopie for OPIE support])
+AC_ARG_WITH(libpam,   [  --with-libpam           use libpam for PAM support])
+AC_ARG_WITH(libskey,  [  --with-libskey          use libskey for S/Key support])
+AC_ARG_WITH(libtcfs,  [  --with-libtcfs          use libtcfs for TCFS support])
 
 dnl Check for some functions in libc first, only if not found check for
 dnl other libraries.  This should prevent linking libnsl if not really
@@ -243,11 +239,6 @@ if test "$with_libcrypt" != "no"; then
        AC_CHECK_LIB(crypt, crypt, [AC_DEFINE(HAVE_LIBCRYPT) LIBCRYPT=-lcrypt])
 fi
 
-if test "$enable_md5crypt" = "yes"; then
-       LIBOBJS="$LIBOBJS md5.o md5crypt.o"
-       AC_DEFINE(MD5_CRYPT)
-fi
-
 AC_SUBST(LIBCRACK)
 if test "$with_libcrack" != "no"; then
        echo "checking cracklib flavour, don't be surprised by the results"
@@ -272,36 +263,43 @@ fi
 
 AC_SUBST(LIBPAM)
 if test "$with_libpam" = "yes"; then
-       dnl AC_CHECK_LIB(pam, pam_start, AC_DEFINE(USE_PAM) LIBPAM=-lpam)
-       dnl the above doesn't work as there is no libpam.a (only .so)
-       dnl XXX - libpam_misc is probably Linux-PAM specific
-       LIBPAM="-lpam -lpam_misc -ldl"
-       AC_DEFINE(USE_PAM)
-       AC_CACHE_CHECK(whether pam_strerror needs two arguments,
-               ac_cv_pam_strerror_needs_two_args,
-               AC_TRY_COMPILE(
-                       [#include <security/pam_appl.h>],
-                       [ pam_handle_t *pamh; pam_strerror(pamh, PAM_SUCCESS); ],
-                       ac_cv_pam_strerror_needs_two_args=yes,
-                       ac_cv_pam_strerror_needs_two_args=no
-               )
+       AC_CHECK_LIB(pam, pam_start,
+               [AC_DEFINE(USE_PAM)
+               LIBPAM="-lpam"
+               AC_CHECK_LIB(pam_misc, main,
+                       LIBPAM="$LIBPAM -lpam_misc", ,
+                       AC_MSG_ERROR(libpam_misc is missing)
+               )]
+               [AC_MSG_CHECKING(use login access checking if PAM not used)
+               AC_DEFINE(LOGIN_ACCESS)
+               AC_MSG_RESULT(yes)]
        )
-       if test "$ac_cv_pam_strerror_needs_two_args" = "yes"; then
-               AC_DEFINE(PAM_STRERROR_NEEDS_TWO_ARGS)
-       fi
+       AC_MSG_CHECKING(use login and su access checking if PAM not used)
+       AC_MSG_RESULT(no)
+else
+       AC_MSG_CHECKING(use login and su access checking if PAM not used)
+       AC_DEFINE(LOGIN_ACCESS)
+       AC_DEFINE(SU_ACCESS)
+       AC_MSG_RESULT(yes)
 fi
 
-LTLIBOBJS=`echo "$LIBOBJS" | sed 's/\.o/.lo/g'`
-AC_SUBST(LTLIBOBJS)
-dnl LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'`
-dnl AC_SUBST(LTALLOCA)
-
-ALL_LINGUAS="cs el fr pl sv"
+ALL_LINGUAS="cs el fr pl sv uk"
 AM_GNU_GETTEXT
 
-AC_OUTPUT(libmisc/Makefile man/Makefile man/pl/Makefile
-       lib/Makefile src/Makefile Makefile
-       contrib/Makefile debian/Makefile doc/Makefile etc/Makefile
-       intl/Makefile intl/po2tbl.sed po/Makefile.in
-       etc/pam.d/Makefile shadow-utils.spec,
-       echo timestamp > stamp-h)
+AC_OUTPUT([
+       Makefile
+       intl/Makefile
+       po/Makefile.in
+       doc/Makefile
+       man/Makefile
+       man/ja/Makefile
+       man/pl/Makefile
+       man/pt_BR/Makefile
+       libmisc/Makefile
+       lib/Makefile
+       src/Makefile
+       contrib/Makefile
+       debian/Makefile
+       etc/Makefile
+       etc/pam.d/Makefile
+       shadow-utils.spec])
index 063a4d803ef761a7eed877418c662f0161c6f8d1..8eda788ad23647c078cab19907bee9922a037ab1 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
+
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-
 SHELL = @SHELL@
 
 srcdir = @srcdir@
@@ -34,13 +36,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -52,9 +50,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -63,148 +60,184 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
-EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh  atudel groupmems.shar pwdauth.c shadow-anonftp.patch  udbachk.tgz
+EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh \
+ atudel groupmems.shar pwdauth.c shadow-anonftp.patch \
+ udbachk.tgz
 
+subdir = contrib
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-DIST_COMMON =  README Makefile.am Makefile.in
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DIST_COMMON = README Makefile.am Makefile.in
+all: all-am
 
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps contrib/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  contrib/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
 tags: TAGS
 TAGS:
 
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = contrib
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
+all-am: Makefile
 
-install-data-am:
-install-data: install-data-am
+installdirs:
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am:
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-generic distclean-libtool
 
-distclean-am:  distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am
 
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool uninstall uninstall-am uninstall-info-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.
index 5ada805147ebefa2162b7c5447e21878ff398d3b..4450bc6e19a937a0e484f8ce896cc83b1bbdfddf 100644 (file)
@@ -2,8 +2,8 @@
 # and also cooperate to make a distribution for `make dist'
 
 EXTRA_DIST = changelog checksums control control.gnu control.linux \
- login.conffiles login.copyright login.postinst login.postrm login.preinst \
- login.prerm logoutd.init passwd.conffiles passwd.copyright \
- passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules \
- secure-su.README secure-su.conffiles secure-su.copyright secure-su.postrm \
secure-su.preinst securetty tar.c
      login.conffiles login.copyright login.postinst login.postrm login.preinst \
      login.prerm logoutd.init passwd.conffiles passwd.copyright \
      passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules \
      secure-su.README secure-su.conffiles secure-su.copyright secure-su.postrm \
      secure-su.preinst securetty shadowconfig.sh tar.c
index e5b717f4b602c435c78ee2406ac0a0b9840ccc54..90b78fad085f38a1759e0530737f1e7fb327334e 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
+
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-
 SHELL = @SHELL@
 
 srcdir = @srcdir@
@@ -34,13 +36,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -52,9 +50,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -63,148 +60,187 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
-EXTRA_DIST = changelog checksums control control.gnu control.linux  login.conffiles login.copyright login.postinst login.postrm login.preinst  login.prerm logoutd.init passwd.conffiles passwd.copyright  passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules  secure-su.README secure-su.conffiles secure-su.copyright secure-su.postrm  secure-su.preinst securetty tar.c
+EXTRA_DIST = changelog checksums control control.gnu control.linux \
+       login.conffiles login.copyright login.postinst login.postrm login.preinst \
+       login.prerm logoutd.init passwd.conffiles passwd.copyright \
+       passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules \
+       secure-su.README secure-su.conffiles secure-su.copyright secure-su.postrm \
+       secure-su.preinst securetty shadowconfig.sh tar.c
 
+subdir = debian
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-DIST_COMMON =  Makefile.am Makefile.in
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DIST_COMMON = Makefile.am Makefile.in
+all: all-am
 
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps debian/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  debian/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
 tags: TAGS
 TAGS:
 
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = debian
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
+all-am: Makefile
 
-install-data-am:
-install-data: install-data-am
+installdirs:
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am:
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-generic distclean-libtool
 
-distclean-am:  distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am
 
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool uninstall uninstall-am uninstall-info-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.
similarity index 100%
rename from src/shadowconfig.sh
rename to debian/shadowconfig.sh
diff --git a/depcomp b/depcomp
new file mode 100755 (executable)
index 0000000..6589965
--- /dev/null
+++ b/depcomp
@@ -0,0 +1,411 @@
+#! /bin/sh
+
+# depcomp - compile a program generating dependencies as side-effects
+# Copyright 1999, 2000 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
+# the Free Software Foundation; either version 2, 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.
+
+# 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 Alexandre Oliva <oliva@dcc.unicamp.br>.
+
+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
+fi
+# `libtool' can also be set to `yes' or `no'.
+
+depfile=${depfile-`echo "$object" | sed 's,\([^/]*\)$,.deps/\1,;s/\.\([^.]*\)$/.P\1/'`}
+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
+
+rm -f "$tmpdepfile"
+
+# Some modes work just like other modes, but use different flags.  We
+# parameterize here, but still list the modes in the big case below,
+# to make depend.m4 easier to write.  Note that we *cannot* use a case
+# here, because this file can only contain one case statement.
+if test "$depmode" = hp; then
+  # HP compiler uses -M and no extra arg.
+  gccflag=-M
+  depmode=gcc
+fi
+
+if test "$depmode" = dashXmstdout; then
+   # This is just like dashmstdout with a different argument.
+   dashmflag=-xM
+   depmode=dashmstdout
+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"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  mv "$tmpdepfile" "$depfile"
+  ;;
+
+gcc)
+## There are various ways to get dependency output from gcc.  Here's
+## why we pick this rather obscure method:
+## - Don't want to use -MD because we'd like the dependencies to end
+##   up in a subdir.  Having to rename by hand is ugly.
+##   (We might end up doing this anyway to support other compilers.)
+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
+##   -MM, not -M (despite what the docs say).
+## - Using -M directly means running the compiler twice (even worse
+##   than renaming).
+  if test -z "$gccflag"; then
+    gccflag=-MD,
+  fi
+  "$@" -Wp,"$gccflag$tmpdepfile"
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
+## 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.
+## 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
+## that the space means something, we add a space to the output as
+## well.
+## 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"
+  rm -f "$tmpdepfile"
+  ;;
+
+hp)
+  # 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
+  ;;
+
+sgi)
+  if test "$libtool" = yes; then
+    "$@" "-Wp,-MDupdate,$tmpdepfile"
+  else
+    "$@" -MDupdate "$tmpdepfile"
+  fi
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+  rm -f "$depfile"
+
+  if test -f "$tmpdepfile"; then  # yes, the sourcefile depend on other files
+    echo "$object : \\" > "$depfile"
+
+    # Clip off the initial element (the dependent).  Don't try to be
+    # 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
+    # dependency line.
+    tr ' ' '
+' < "$tmpdepfile" \
+    | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
+    tr '
+' ' ' >> $depfile
+    echo >> $depfile
+
+    # The second pass generates a dummy entry for each header file.
+    tr ' ' '
+' < "$tmpdepfile" \
+   | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+   >> $depfile
+  else
+    # The sourcefile does not contain any dependencies, so just
+    # store a dummy comment line, to avoid errors with the Makefile
+    # "include basename.Plo" scheme.
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile"
+  ;;
+
+aix)
+  # The C for AIX Compiler uses -M and outputs the dependencies
+  # in a .u file.  This file always lives in the current directory.
+  # Also, the AIX compiler puts `$object:' at the start of each line;
+  # $object doesn't have directory information.
+  stripped=`echo "$object" | sed -e 's,^.*/,,' -e 's/\(.*\)\..*$/\1/'`
+  tmpdepfile="$stripped.u"
+  outname="$stripped.o"
+  if test "$libtool" = yes; then
+    "$@" -Wc,-M
+  else
+    "$@" -M
+  fi
+
+  stat=$?
+  if test $stat -eq 0; then :
+  else
+    rm -f "$tmpdepfile"
+    exit $stat
+  fi
+
+  if test -f "$tmpdepfile"; then
+    # 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"
+  else
+    # The sourcefile does not contain any dependencies, so just
+    # store a dummy comment line, to avoid errors with the Makefile
+    # "include basename.Plo" scheme.
+    echo "#dummy" > "$depfile"
+  fi
+  rm -f "$tmpdepfile"
+  ;;
+
+tru64)
+   # The Tru64 AIX compiler uses -MD to generate dependencies as a side
+   # 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.
+   # Subdirectories are respected.
+
+   tmpdepfile1="$object.d"
+   tmpdepfile2=`echo "$object" | sed -e 's/.o$/.d/'` 
+   if test "$libtool" = yes; then
+      "$@" -Wc,-MD
+   else
+      "$@" -MD
+   fi
+
+   stat=$?
+   if test $stat -eq 0; then :
+   else
+      rm -f "$tmpdepfile1" "$tmpdepfile2"
+      exit $stat
+   fi
+
+   if test -f "$tmpdepfile1"; then
+      tmpdepfile="$tmpdepfile1"
+   else
+      tmpdepfile="$tmpdepfile2"
+   fi
+   if test -f "$tmpdepfile"; then
+      sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+      # That's a space and a tab in the [].
+      sed -e 's,^.*\.[a-z]*:[  ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+   else
+      echo "#dummy" > "$depfile"
+   fi
+   rm -f "$tmpdepfile"
+   ;;
+
+#nosideeffect)
+  # This comment above is used by automake to tell side-effect
+  # dependency tracking mechanisms from slower ones.
+
+dashmstdout)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the proprocessed file to stdout, regardless of -o,
+  # because we must use -o when running libtool.
+  test -z "$dashmflag" && dashmflag=-M
+  ( IFS=" "
+    case " $* " in
+    *" --mode=compile "*) # this is libtool, let us make it quiet
+      for arg
+      do # cycle over the arguments
+        case "$arg" in
+       "--mode=compile")
+         # insert --quiet before "--mode=compile"
+         set fnord "$@" --quiet
+         shift # fnord
+         ;;
+       esac
+       set fnord "$@" "$arg"
+       shift # fnord
+       shift # "$arg"
+      done
+      ;;
+    esac
+    "$@" $dashmflag | sed 's:^[^:]*\:[         ]*:'"$object"'\: :' > "$tmpdepfile"
+  ) &
+  proc=$!
+  "$@"
+  stat=$?
+  wait "$proc"
+  if test "$stat" != 0; then exit $stat; fi
+  rm -f "$depfile"
+  cat < "$tmpdepfile" > "$depfile"
+  tr ' ' '
+' < "$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"
+  rm -f "$tmpdepfile"
+  ;;
+
+dashXmstdout)
+  # This case only exists to satisfy depend.m4.  It is never actually
+  # run, as this mode is specially recognized in the preamble.
+  exit 1
+  ;;
+
+makedepend)
+  # X makedepend
+  (
+    shift
+    cleared=no
+    for arg in "$@"; do
+      case $cleared in no)
+        set ""; shift
+       cleared=yes
+      esac
+      case "$arg" in
+        -D*|-I*)
+         set fnord "$@" "$arg"; shift;;
+       -*)
+         ;;
+       *)
+         set fnord "$@" "$arg"; shift;;
+      esac
+    done
+    obj_suffix="`echo $object | sed 's/^.*\././'`"
+    touch "$tmpdepfile"
+    ${MAKEDEPEND-makedepend} 2>/dev/null -o"$obj_suffix" -f"$tmpdepfile" "$@"
+  ) &
+  proc=$!
+  "$@"
+  stat=$?
+  wait "$proc"
+  if test "$stat" != 0; then exit $stat; fi
+  rm -f "$depfile"
+  cat < "$tmpdepfile" > "$depfile"
+  tail +3 "$tmpdepfile" | tr ' ' '
+' | \
+## 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"
+  rm -f "$tmpdepfile" "$tmpdepfile".bak
+  ;;
+
+cpp)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the proprocessed file to stdout, regardless of -o,
+  # because we must use -o when running libtool.
+  ( IFS=" "
+    case " $* " in
+    *" --mode=compile "*)
+      for arg
+      do # cycle over the arguments
+        case $arg in
+       "--mode=compile")
+         # insert --quiet before "--mode=compile"
+         set fnord "$@" --quiet
+         shift # fnord
+         ;;
+       esac
+       set fnord "$@" "$arg"
+       shift # fnord
+       shift # "$arg"
+      done
+      ;;
+    esac
+    "$@" -E |
+    sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+    sed '$ s: \\$::' > "$tmpdepfile"
+  ) &
+  proc=$!
+  "$@"
+  stat=$?
+  wait "$proc"
+  if test "$stat" != 0; then exit $stat; fi
+  rm -f "$depfile"
+  echo "$object : \\" > "$depfile"
+  cat < "$tmpdepfile" >> "$depfile"
+  sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
+  rm -f "$tmpdepfile"
+  ;;
+
+msvisualcpp)
+  # Important note: in order to support this mode, a compiler *must*
+  # always write the proprocessed file to stdout, regardless of -o,
+  # because we must use -o when running libtool.
+  ( IFS=" "
+    case " $* " in
+    *" --mode=compile "*)
+      for arg
+      do # cycle over the arguments
+        case $arg in
+       "--mode=compile")
+         # insert --quiet before "--mode=compile"
+         set fnord "$@" --quiet
+         shift # fnord
+         ;;
+       esac
+       set fnord "$@" "$arg"
+       shift # fnord
+       shift # "$arg"
+      done
+      ;;
+    esac
+    "$@" -E |
+    sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+  ) &
+  proc=$!
+  "$@"
+  stat=$?
+  wait "$proc"
+  if test "$stat" != 0; then exit $stat; fi
+  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"
+  rm -f "$tmpdepfile"
+  ;;
+
+none)
+  exec "$@"
+  ;;
+
+*)
+  echo "Unknown depmode $depmode" 1>&2
+  exit 1
+  ;;
+esac
+
+exit 0
index ce368d6da10b8e5802b5384a486beff46f3b5d8a..2ff3887d44758a0c7f942bb08954def4a88a9884 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
+
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-
 SHELL = @SHELL@
 
 srcdir = @srcdir@
@@ -34,13 +36,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -52,9 +50,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -63,148 +60,184 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
-EXTRA_DIST = ANNOUNCE HOWTO LICENSE LSM README  README.limits README.linux README.mirrors README.nls README.pam  README.platforms README.sun4 WISHLIST console.c.spec.txt cracklib26.diff
+EXTRA_DIST = ANNOUNCE HOWTO LICENSE LSM README \
+ README.limits README.linux README.mirrors README.nls README.pam \
+ README.platforms README.sun4 WISHLIST console.c.spec.txt cracklib26.diff
 
+subdir = doc
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-DIST_COMMON =  README INSTALL Makefile.am Makefile.in
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DIST_COMMON = README INSTALL Makefile.am Makefile.in
+all: all-am
 
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps doc/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  doc/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
 tags: TAGS
 TAGS:
 
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = doc
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
+all-am: Makefile
 
-install-data-am:
-install-data: install-data-am
+installdirs:
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am:
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-generic distclean-libtool
 
-distclean-am:  distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am
 
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool uninstall uninstall-am uninstall-info-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.
index fbc599525e8ab7fa345065a2c17c8ddb7e2e6f58..ebc91c990aa8707ebf9b1e0c1a367337e020d26b 100644 (file)
@@ -1,6 +1,12 @@
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux
+EXTRA_DIST = \
+       limits \
+       login.access \
+       login.defs \
+       login.defs.hurd \
+       login.defs.linux
+       useradd
 
 SUBDIRS = pam.d
index 8798a199f32123161ef99bf79175e588348eea62..3b41b4580fe995daa3b4804abd404d50ec91d1d9 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
+
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-
 SHELL = @SHELL@
 
 srcdir = @srcdir@
@@ -34,13 +36,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -52,9 +50,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -63,69 +60,97 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
+
+EXTRA_DIST = \
+       limits \
+       login.access \
+       login.defs \
+       login.defs.hurd \
+       login.defs.linux
 
-EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux
 
 SUBDIRS = pam.d
+subdir = etc
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-DIST_COMMON =  Makefile.am Makefile.in
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+
+RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \
+       uninstall-info-recursive all-recursive install-data-recursive \
+       install-exec-recursive installdirs-recursive install-recursive \
+       uninstall-recursive check-recursive installcheck-recursive
+DIST_COMMON = Makefile.am Makefile.in
+DIST_SUBDIRS = $(SUBDIRS)
+all: all-recursive
 
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps etc/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  etc/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
@@ -133,12 +158,7 @@ Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
 # (1) if the variable is set in `config.status', edit `config.status'
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
-
-@SET_MAKE@
-
-all-recursive install-data-recursive install-exec-recursive \
-installdirs-recursive install-recursive uninstall-recursive  \
-check-recursive installcheck-recursive info-recursive dvi-recursive:
+$(RECURSIVE_TARGETS):
        @set fnord $(MAKEFLAGS); amf=$$2; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
@@ -161,11 +181,16 @@ mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
        @set fnord $(MAKEFLAGS); amf=$$2; \
        dot_seen=no; \
-       rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
-         rev="$$subdir $$rev"; \
-         test "$$subdir" = "." && dot_seen=yes; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
        done; \
-       test "$$dot_seen" = "no" && rev=". $$rev"; \
+       rev="$$rev ."; \
        target=`echo $@ | sed s/-recursive//`; \
        for subdir in $$rev; do \
          echo "Making $$target in $$subdir"; \
@@ -184,51 +209,60 @@ tags-recursive:
 
 tags: TAGS
 
-ID: $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(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; }'`; \
-       here=`pwd` && cd $(srcdir) \
-         && mkid -f$$here/ID $$unique $(LISP)
+       mkid -fID $$unique $(LISP)
 
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP)
+TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
        tags=; \
        here=`pwd`; \
        list='$(SUBDIRS)'; for subdir in $$list; do \
-   if test "$$subdir" = .; then :; else \
+         if test "$$subdir" = .; then :; else \
            test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
-   fi; \
+         fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+       list='$(SOURCES) $(HEADERS) $(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 "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-         || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
+         || etags $(ETAGS_ARGS) $$tags  $$unique $(LISP)
 
-mostlyclean-tags:
-
-clean-tags:
+GTAGS:
+       here=`CDPATH=: && cd $(top_builddir) && pwd` \
+         && cd $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) $$here
 
 distclean-tags:
-       -rm -f TAGS ID
-
-maintainer-clean-tags:
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = etc
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
        for subdir in $(SUBDIRS); do \
@@ -236,81 +270,98 @@ distdir: $(DISTFILES)
            test -d $(distdir)/$$subdir \
            || mkdir $(distdir)/$$subdir \
            || exit 1; \
-           chmod 777 $(distdir)/$$subdir; \
-           (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \
+           (cd $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$(top_distdir)" \
+               distdir=../$(distdir)/$$subdir \
+               distdir) \
              || exit 1; \
          fi; \
        done
-info-am:
-info: info-recursive
-dvi-am:
-dvi: dvi-recursive
 check-am: all-am
 check: check-recursive
-installcheck-am:
-installcheck: installcheck-recursive
-install-exec-am:
-install-exec: install-exec-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
 
-install-data-am:
+install: install-recursive
+install-exec: install-exec-recursive
 install-data: install-data-recursive
+uninstall: uninstall-recursive
 
 install-am: all-am
        @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-recursive
-uninstall-am:
-uninstall: uninstall-recursive
-all-am: Makefile
-all-redirect: all-recursive
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs: installdirs-recursive
-installdirs-am:
-
 
+installcheck: installcheck-recursive
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-tags mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
 
-mostlyclean: mostlyclean-recursive
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-tags clean-generic mostlyclean-am
+distclean: distclean-recursive
 
-clean: clean-recursive
+distclean-am: clean-am distclean-generic distclean-libtool \
+       distclean-tags
 
-distclean-am:  distclean-tags distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-recursive
 
-distclean: distclean-recursive
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-tags maintainer-clean-generic \
-               distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
 
-.PHONY: install-data-recursive uninstall-data-recursive \
-install-exec-recursive uninstall-exec-recursive installdirs-recursive \
-uninstalldirs-recursive all-recursive check-recursive \
-installcheck-recursive info-recursive dvi-recursive \
-mostlyclean-recursive distclean-recursive clean-recursive \
-maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
-distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
-dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
-install-exec install-data-am install-data install-am install \
-uninstall-am uninstall all-redirect all-am all installdirs-am \
-installdirs mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
 
+.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \
+       clean-generic clean-libtool clean-recursive distclean \
+       distclean-generic distclean-libtool distclean-recursive \
+       distclean-tags distdir dvi dvi-am dvi-recursive info info-am \
+       info-recursive install install-am install-data install-data-am \
+       install-data-recursive install-exec install-exec-am \
+       install-exec-recursive install-info install-info-am \
+       install-info-recursive install-man install-recursive \
+       install-strip installcheck installcheck-am installdirs \
+       installdirs-am installdirs-recursive maintainer-clean \
+       maintainer-clean-generic maintainer-clean-recursive mostlyclean \
+       mostlyclean-generic mostlyclean-libtool mostlyclean-recursive \
+       tags tags-recursive uninstall uninstall-am uninstall-info-am \
+       uninstall-info-recursive uninstall-recursive
 
+       useradd
 # 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 1e79d504064c8e8a7604cfc63dfaa3705b19e7c9..282f5c04dad47310bf90f39020a047c336966323 100644 (file)
@@ -1,4 +1,5 @@
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-EXTRA_DIST = passwd su shadow
+EXTRA_DIST = passwd su shadow useradd
+
index 58b97d6b7e414444b7649030180d7a530ed1f1c5..c43e8d19b21e35dd0fffcc542f3708b9cff9343d 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
+
 # This is a dummy Makefile.am to get automake work flawlessly,
 # and also cooperate to make a distribution for `make dist'
 
-
 SHELL = @SHELL@
 
 srcdir = @srcdir@
@@ -34,13 +36,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ../..
 
 ACLOCAL = @ACLOCAL@
@@ -52,9 +50,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -63,147 +60,181 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
-EXTRA_DIST = passwd su shadow
+EXTRA_DIST = passwd su shadow useradd
+subdir = etc/pam.d
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../../config.h
-CONFIG_CLEAN_FILES = 
-DIST_COMMON =  Makefile.am Makefile.in
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+DIST_COMMON = Makefile.am Makefile.in
+all: all-am
 
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
-
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps etc/pam.d/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  etc/pam.d/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
 tags: TAGS
 TAGS:
 
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = etc/pam.d
+top_distdir = ../..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
+all-am: Makefile
 
-install-data-am:
-install-data: install-data-am
+installdirs:
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am:
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-generic distclean-libtool
 
-distclean-am:  distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am
 
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool uninstall uninstall-am uninstall-info-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/etc/pam.d/useradd b/etc/pam.d/useradd
new file mode 100644 (file)
index 0000000..4abdad9
--- /dev/null
@@ -0,0 +1,4 @@
+#%PAM-1.0 
+auth           sufficient      /lib/security/pam_rootok.so
+auth           required        /lib/security/pam_unix.so
+account                required        /lib/security/pam_permit.so
index 198950159daa5b498c5571ca5f937ac218feb52d..df904de3736bf40000be3d35cf76fd7f641d5e92 100644 (file)
-1998-04-29  Ulrich Drepper  <drepper@cygnus.com>
+2001-05-23  GNU  <bug-gnu-utils@gnu.org>
 
-       * intl/localealias.c (read_alias_file): Use unsigned char for
-       local variables.  Remove unused variable tp.
-       * intl/l10nflist.c (_nl_normalize_codeset): Use unsigned char *
-       for type of codeset.  For loosing Solaris systems.
-       * intl/loadinfo.h: Adapt prototype of _nl_normalize_codeset.
-       * intl/bindtextdom.c (BINDTEXTDOMAIN): Don't define local variable
-       len if not needed.
-       Patches by Jim Meyering.
+       * Version 0.10.38 released.
 
-1998-04-28  Ulrich Drepper  <drepper@cygnus.com>
-
-       * loadmsgcat.c (_nl_load_domain): Don't assign the element use_mmap if
-       mmap is not supported.
-
-       * hash-string.h: Don't include <values.h>.
-
-1998-04-27  Ulrich Drepper  <drepper@cygnus.com>
-
-       * textdomain.c: Use strdup is available.
-
-       * localealias.c: Define HAVE_MEMPCPY so that we can use this
-       function.  Define and use semapahores to protect modfication of
-       global objects when compiling for glibc.  Add code to allow
-       freeing alias table.
-
-       * l10nflist.c: Don't assume stpcpy not being a macro.
-
-       * gettextP.h: Define internal_function macri if not already done.
-       Use glibc byte-swap macros instead of defining SWAP when compiled
-       for glibc.
-       (struct loaded_domain): Add elements to allow unloading.
-
-       * Makefile.in (distclean): Don't remove libintl.h here.
-
-       * bindtextdomain.c: Carry over changes from glibc.  Use strdup if
-       available.
-
-       * dcgettext.c: Don't assume stpcpy not being a macro.  Mark internal
-       functions.  Add memory freeing code for glibc.
-
-       * dgettext.c: Update copyright.
-
-       * explodename.c: Include stdlib.h and string.h only if they exist.
-       Use strings.h eventually.
-
-       * finddomain.c: Mark internal functions.  Use strdup if available.
-       Add memory freeing code for glibc.
-
-1997-10-10 20:00  Ulrich Drepper  <drepper@cygnus.com>
-
-       * libgettext.h: Fix dummy textdomain and bindtextdomain macros.
-       They should return reasonable values.
-       Reported by Tom Tromey <tromey@cygnus.com>.
-
-1997-09-16 03:33  Ulrich Drepper  <drepper@cygnus.com>
-
-       * libgettext.h: Define PARAMS also to `args' if __cplusplus is defined.
-       * intlh.inst.in: Likewise.
-       Reported by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>.
-
-       * libintl.glibc: Update from current glibc version.
-
-1997-09-06 02:10  Ulrich Drepper  <drepper@cygnus.com>
-
-       * intlh.inst.in: Reformat copyright.
-
-1997-08-19 15:22  Ulrich Drepper  <drepper@cygnus.com>
-
-       * dcgettext.c (DCGETTEXT): Remove wrong comment.
-
-1997-08-16 00:13  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (install-data): Don't change directory to install.
-
-1997-08-01 14:30  Ulrich Drepper  <drepper@cygnus.com>
-
-       * cat-compat.c: Fix copyright.
-
-       * localealias.c: Don't define strchr unless !HAVE_STRCHR.
-
-       * loadmsgcat.c: Update copyright.  Fix typos.
-
-       * l10nflist.c: Don't define strchr unless !HAVE_STRCHR.
-       (_nl_make_l10nflist): Handle sponsor and revision correctly.
-
-       * gettext.c: Update copyright.
-       * gettext.h: Likewise.
-       * hash-string.h: Likewise.
-
-       * finddomain.c: Remoave dead code.  Define strchr only if
-       !HAVE_STRCHR.
-
-       * explodename.c: Include <sys/types.h>.
-
-       * explodename.c: Reformat copyright text.
-       (_nl_explode_name): Fix typo.
-
-       * dcgettext.c: Define and use __set_errno.
-       (guess_category_value): Don't use setlocale if HAVE_LC_MESSAGES is
-       not defined.
-
-       * bindtextdom.c: Pretty printing.
-
-1997-05-01 02:25  Ulrich Drepper  <drepper@cygnus.com>
-
-       * dcgettext.c (guess_category_value): Don't depend on
-       HAVE_LC_MESSAGES.  We don't need the macro here.
-       Patch by Bruno Haible <haible@ilog.fr>.
-
-       * cat-compat.c (textdomain): DoN't refer to HAVE_SETLOCALE_NULL
-       macro.  Instead use HAVE_LOCALE_NULL and define it when using
-       glibc, as in dcgettext.c.
-       Patch by Bruno Haible <haible@ilog.fr>.
-
-       * Makefile.in (CPPFLAGS): New variable.  Reported by Franc,ois
-       Pinard.
-
-Mon Mar 10 06:51:17 1997  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in: Implement handling of libtool.
-
-       * gettextP.h: Change data structures for use of generic lowlevel
-       i18n file handling.
-
-Wed Dec  4 20:21:18 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * textdomain.c: Put parentheses around arguments of memcpy macro
-       definition.
-       * localealias.c: Likewise.
-       * l10nflist.c: Likewise.
-       * finddomain.c: Likewise.
-       * bindtextdom.c: Likewise.
-       Reported by Thomas Esken.
-
-Mon Nov 25 22:57:51 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * textdomain.c: Move definition of `memcpy` macro to right
-       position.
-
-Fri Nov 22 04:01:58 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * finddomain.c [!HAVE_STRING_H && !_LIBC]: Define memcpy using
-       bcopy if not already defined.  Reported by Thomas Esken.
-       * bindtextdom.c: Likewise.
-       * l10nflist.c: Likewise.
-       * localealias.c: Likewise.
-       * textdomain.c: Likewise.
-
-Tue Oct 29 11:10:27 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (libdir): Change to use exec_prefix instead of
-       prefix.  Reported by Knut-HåvardAksnes <etokna@eto.ericsson.se>.
-
-Sat Aug 31 03:07:09 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * l10nflist.c (_nl_normalize_codeset): We convert to lower case,
-       so don't prepend uppercase `ISO' for only numeric arg.
-
-Fri Jul 19 00:15:46 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * l10nflist.c: Move inclusion of argz.h, ctype.h, stdlib.h after
-       definition of _GNU_SOURCE.  Patch by Roland McGrath.
-
-       * Makefile.in (uninstall): Fix another bug with `for' loop and
-       empty arguments.  Patch by Jim Meyering.  Correct name os
-       uninstalled files: no intl- prefix anymore.
-
-       * Makefile.in (install-data): Again work around shells which
-       cannot handle mpty for list.  Reported by Jim Meyering.
-
-Sat Jul 13 18:11:35 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (install): Split goal.  Now depend on install-exec
-        and install-data.
-       (install-exec, install-data): New goals.  Created from former
-       install goal.
-       Reported by Karl Berry.
-
-Sat Jun 22 04:58:14 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (MKINSTALLDIRS): New variable.  Path to
-        mkinstalldirs script.
-       (install): use MKINSTALLDIRS variable or if the script is not present
-       try to find it in the $top_scrdir).
-
-Wed Jun 19 02:56:56 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * l10nflist.c: Linux libc *partly* includes the argz_* functions.
-       Grr.  Work around by renaming the static version and use macros
-       for renaming.
-
-Tue Jun 18 20:11:17 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * l10nflist.c: Correct presence test macros of __argz_* functions.
-
-       * l10nflist.c: Include <argz.h> based on test of it instead when
-       __argz_* functions are available.
-       Reported by Andreas Schwab.
-
-Thu Jun 13 15:17:44 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * explodename.c, l10nflist.c: Define NULL for dumb systems.
-
-Tue Jun 11 17:05:13 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * intlh.inst.in, libgettext.h (dcgettext): Rename local variable
-       result to __result to prevent name clash.
-
-       * l10nflist.c, localealias.c, dcgettext.c: Define _GNU_SOURCE to
-        get prototype for stpcpy and strcasecmp.
-
-       * intlh.inst.in, libgettext.h: Move declaration of
-       `_nl_msg_cat_cntr' outside __extension__ block to prevent warning
-       from gcc's -Wnested-extern option.
-
-Fri Jun  7 01:58:00 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (install): Remove comment.
-
-Thu Jun  6 17:28:17 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (install): Work around for another Buglix stupidity.
-       Always use an `else' close for `if's.  Reported by Nelson Beebe.
-
-       * Makefile.in (intlh.inst): Correct typo in phony rule.
-       Reported by Nelson Beebe.
-
-Thu Jun  6 01:49:52 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * dcgettext.c (read_alias_file): Rename variable alloca_list to
-       block_list as the macro calls assume.
-       Patch by Eric Backus.
-
-       * localealias.c [!HAVE_ALLOCA]: Define alloca as macro using
-        malloc.
-       (read_alias_file): Rename varriabe alloca_list to block_list as the
-       macro calls assume.
-       Patch by Eric Backus.
-
-       * l10nflist.c: Correct conditional for <argz.h> inclusion.
-       Reported by Roland McGrath.
-
-       * Makefile.in (all): Depend on all-@USE_INCLUDED_LIBINTL@, not
-        all-@USE_NLS@.
-
-       * Makefile.in (install): intlh.inst comes from local dir, not
-        $(srcdir).
-
-       * Makefile.in (intlh.inst): Special handling of this goal.  If
-       used in gettext, this is really a rul to construct this file.  If
-       used in any other package it is defined as a .PHONY rule with
-       empty body.
-
-       * finddomain.c: Extract locale file information handling into
-       l10nfile.c.  Rename local stpcpy__ function to stpcpy.
-
-       * dcgettext.c (stpcpy): Add local definition.
-
-       * l10nflist.c: Solve some portability problems.  Patches partly by
-       Thomas Esken.  Add local definition of stpcpy.
-
-Tue Jun  4 02:47:49 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * intlh.inst.in: Don't depend including <locale.h> on
-       HAVE_LOCALE_H.  Instead configure must rewrite this fiile
-       depending on the result of the configure run.
-
-       * Makefile.in (install): libintl.inst is now called intlh.inst.
-       Add rules for updating intlh.inst from intlh.inst.in.
-
-       * libintl.inst: Renamed to intlh.inst.in.
-
-       * localealias.c, dcgettext.c [__GNUC__]: Define HAVE_ALLOCA to 1
-        because gcc has __buitlin_alloca.
-       Reported by Roland McGrath.
-
-Mon Jun  3 00:32:16 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * Makefile.in (installcheck): New goal to fulfill needs of
-        automake's distcheck.
-
-       * Makefile.in (install): Reorder commands so that VERSION is
-        found.
-
-       * Makefile.in (gettextsrcdir): Now use subdirectory intl/ in
-        @datadir@/gettext.
-       (COMSRCS): Add l10nfile.c.
-       (OBJECTS): Add l10nfile.o.
-       (DISTFILES): Rename to DISTFILE.normal.  Remove $(DISTFILES.common).
-       (DISTFILE.gettext): Remove $(DISTFILES.common).
-       (all-gettext): Remove goal.
-       (install): If $(PACKAGE) = gettext install, otherwose do nothing.  No
-       package but gettext itself should install libintl.h + headers.
-       (dist): Extend goal to work for gettext, too.
-       (dist-gettext): Remove goal.
-
-       * dcgettext.c [!HAVE_ALLOCA]: Define macro alloca by using malloc.
-
-Sun Jun  2 17:33:06 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * loadmsgcat.c (_nl_load_domain): Parameter is now comes from
-        find_l10nfile.
-
-Sat Jun  1 02:23:03 1996  Ulrich Drepper  <drepper@cygnus.com>
-
-       * l10nflist.c (__argz_next): Add definition.
-
-       * dcgettext.c [!HAVE_ALLOCA]: Add code for handling missing alloca
-       code.  Use new l10nfile handling.
-
-       * localealias.c [!HAVE_ALLOCA]: Add code for handling missing
-        alloca code.
-
-       * l10nflist.c: Initial revision.
-
-Tue Apr  2 18:51:18 1996  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (all-gettext): New goal.  Same as all-yes.
-
-Thu Mar 28 23:01:22 1996  Karl Eichwalder  <ke@ke.central.de>
-
-       * Makefile.in (gettextsrcdir): Define using @datadir@.
-
-Tue Mar 26 12:39:14 1996  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c: Include <ctype.h>.  Reported by Roland McGrath.
-
-Sat Mar 23 02:00:35 1996  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (stpcpy): Rename to stpcpy__ to prevent clashing
-        with external declaration.
-
-Sat Mar  2 00:47:09 1996  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (all-no): Rename from all_no.
-
-Sat Feb 17 00:25:59 1996  Ulrich Drepper  <drepper@myware>
-
-       * gettextP.h [loaded_domain]: Array `successor' must now contain up
-        to 63 elements (because of codeset name normalization).
-
-       * finddomain.c: Implement codeset name normalization.
-
-Thu Feb 15 04:39:09 1996  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (all): Define to `all-@USE_NLS@'.
-       (all-yes, all_no): New goals.  `all-no' is noop, `all-yes'
-       is former all.
-
-Mon Jan 15 21:46:01 1996  Howard Gayle  <howard@hal.com>
-
-       * localealias.c (alias_compare): Increment string pointers in loop
-        of strcasecmp replacement.
-
-Fri Dec 29 21:16:34 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (install-src): Who commented this goal out ? :-)
-
-Fri Dec 29 15:08:16 1995  Ulrich Drepper  <drepper@myware>
-
-       * dcgettext.c (DCGETTEXT): Save `errno'.  Failing system calls
-       should not effect it because a missing catalog is no error.
-       Reported by Harald K<o:>nig <koenig@tat.physik.uni-tuebingen.de>.
-
-Tue Dec 19 22:09:13 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (Makefile): Explicitly use $(SHELL) for running
-        shell scripts.
-
-Fri Dec 15 17:34:59 1995  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
-
-       * Makefile.in (install-src): Only install library and header when
-       we use the own implementation.  Don't do it when using the
-       system's gettext or catgets functions.
-
-       * dcgettext.c (find_msg): Must not swap domain->hash_size here.
-
-Sat Dec  9 16:24:37 1995  Ulrich Drepper  <drepper@myware>
-
-       * localealias.c, libintl.inst, libgettext.h, hash-string.h,
-       gettextP.h, finddomain.c, dcgettext.c, cat-compat.c:
-       Use PARAMS instead of __P.  Suggested by Roland McGrath.
-
-Tue Dec  5 11:39:14 1995  Larry Schwimmer  <rosebud@cyclone.stanford.edu>
-
-       * libgettext.h: Use `#if !defined (_LIBINTL_H)' instead of `#if
-       !_LIBINTL_H' because Solaris defines _LIBINTL_H as empty.
-
-Mon Dec  4 15:42:07 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (install-src):
-       Install libintl.inst instead of libintl.h.install.
-
-Sat Dec  2 22:51:38 1995  Marcus Daniels  <marcus@sysc.pdx.edu>
-
-       * cat-compat.c (textdomain):
-       Reverse order in which files are tried you load.  First
-       try local file, when this failed absolute path.
-
-Wed Nov 29 02:03:53 1995  Nelson H. F. Beebe  <beebe@math.utah.edu>
-
-       * cat-compat.c (bindtextdomain): Add missing { }.
-
-Sun Nov 26 18:21:41 1995  Ulrich Drepper  <drepper@myware>
-
-       * libintl.inst: Add missing __P definition.  Reported by Nelson Beebe.
-
-       * Makefile.in:
-       Add dummy `all' and `dvi' goals.  Reported by Tom Tromey.
-
-Sat Nov 25 16:12:01 1995  Franc,ois Pinard  <pinard@iro.umontreal.ca>
-
-       * hash-string.h: Capitalize arguments of macros.
-
-Sat Nov 25 12:01:36 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (DISTFILES): Prevent files names longer than 13
-       characters.  libintl.h.glibc->libintl.glibc,
-       libintl.h.install->libintl.inst.  Reported by Joshua R. Poulson.
-
-Sat Nov 25 11:31:12 1995  Eric Backus  <ericb@lsid.hp.com>
-
-       * dcgettext.c: Fix bug in preprocessor conditionals.
-
-Sat Nov 25 02:35:27 1995  Nelson H. F. Beebe  <beebe@math.utah.edu>
-
-       * libgettext.h: Solaris cc does not understand
-        #if !SYMBOL1 && !SYMBOL2.  Sad but true.
-
-Thu Nov 23 16:22:14 1995  Ulrich Drepper  <drepper@myware>
-
-       * hash-string.h (hash_string):
-       Fix for machine with >32 bit `unsigned long's.
-
-       * dcgettext.c (DCGETTEXT):
-       Fix horrible bug in loop for alternative translation.
-
-Thu Nov 23 01:45:29 1995  Ulrich Drepper  <drepper@myware>
-
-       * po2tbl.sed.in, linux-msg.sed, xopen-msg.sed:
-       Some further simplifications in message number generation.
-
-Mon Nov 20 21:08:43 1995  Ulrich Drepper  <drepper@myware>
-
-       * libintl.h.glibc: Use __const instead of const in prototypes.
-
-       * Makefile.in (install-src):
-       Install libintl.h.install instead of libintl.h.  This
-       is a stripped-down version.  Suggested by Peter Miller.
-
-       * libintl.h.install, libintl.h.glibc: Initial revision.
-
-       * localealias.c (_nl_expand_alias, read_alias_file):
-       Protect prototypes in type casts by __P.
-
-Tue Nov 14 16:43:58 1995  Ulrich Drepper  <drepper@myware>
-
-       * hash-string.h: Correct prototype for hash_string.
-
-Sun Nov 12 12:42:30 1995  Ulrich Drepper  <drepper@myware>
-
-       * hash-string.h (hash_string): Add prototype.
-
-       * gettextP.h: Fix copyright.
-       (SWAP): Add prototype.
-
-Wed Nov  8 22:56:33 1995  Ulrich Drepper  <drepper@myware>
-
-       * localealias.c (read_alias_file): Forgot sizeof.
-       Avoid calling *printf function.  This introduces a big overhead.
-       Patch by Roland McGrath.
-
-Tue Nov  7 14:21:08 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c, cat-compat.c: Wrong indentation in #if for stpcpy.
-
-       * finddomain.c (stpcpy):
-       Define substitution function local.  The macro was to flaky.
-
-       * cat-compat.c: Fix typo.
-
-       * xopen-msg.sed, linux-msg.sed:
-       While bringing message number to right place only accept digits.
-
-       * linux-msg.sed, xopen-msg.sed: Now that the counter does not have
-       leading 0s we don't need to remove them.  Reported by Marcus
-       Daniels.
-
-       * Makefile.in (../po/cat-id-tbl.o): Use $(top_srdir) in
-       dependency.  Reported by Marcus Daniels.
-
-       * cat-compat.c: (stpcpy) [!_LIBC && !HAVE_STPCPY]: Define replacement.
-       Generally cleanup using #if instead of #ifndef.
-
-       * Makefile.in: Correct typos in comment.  By Franc,ois Pinard.
-
-Mon Nov  6 00:27:02 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (install-src): Don't install libintl.h and libintl.a
-       if we use an available gettext implementation.
-
-Sun Nov  5 22:02:08 1995  Ulrich Drepper  <drepper@myware>
-
-       * libgettext.h: Fix typo: HAVE_CATGETTS -> HAVE_CATGETS.  Reported
-       by Franc,ois Pinard.
-
-       * libgettext.h: Use #if instead of #ifdef/#ifndef.
-
-       * finddomain.c:
-       Comments describing what has to be done should start with FIXME.
-
-Sun Nov  5 19:38:01 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (DISTFILES): Split.  Use DISTFILES with normal meaning.
-       DISTFILES.common names the files common to both dist goals.
-       DISTFILES.gettext are the files only distributed in GNU gettext.
-
-Sun Nov  5 17:32:54 1995  Ulrich Drepper  <drepper@myware>
-
-       * dcgettext.c (DCGETTEXT): Correct searching in derived locales.
-       This was necessary since a change in _nl_find_msg several weeks
-       ago.  I really don't know this is still not fixed.
-
-Sun Nov  5 12:43:12 1995  Ulrich Drepper  <drepper@myware>
-
-       * loadmsgcat.c (_nl_load_domain): Test for FILENAME == NULL.  This
-       might mark a special condition.
-
-       * finddomain.c (make_entry_rec): Don't make illegal entry as decided.
-
-       * Makefile.in (dist): Suppress error message when ln failed.
-       Get files from $(srcdir) explicitly.
-
-       * libgettext.h (gettext_const): Rename to gettext_noop.
-
-Fri Nov  3 07:36:50 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (make_entry_rec):
-       Protect against wrong locale names by testing mask.
-
-       * libgettext.h (gettext_const): Add macro definition.
-       Capitalize macro arguments.
-
-Thu Nov  2 23:15:51 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (_nl_find_domain):
-       Test for pointer != NULL before accessing value.
-       Reported by Tom Tromey.
-
-       * gettext.c (NULL):
-       Define as (void*)0 instad of 0.  Reported by Franc,ois Pinard.
-
-Mon Oct 30 21:28:52 1995  Ulrich Drepper  <drepper@myware>
-
-       * po2tbl.sed.in: Serious typo bug fixed by Jim Meyering.
-
-Sat Oct 28 23:20:47 1995  Ulrich Drepper  <drepper@myware>
-
-       * libgettext.h: Disable dcgettext optimization for Solaris 2.3.
-
-       * localealias.c (alias_compare):
-       Peter Miller reported that tolower in some systems is
-       even dumber than I thought.  Protect call by `isupper'.
-
-Fri Oct 27 22:22:51 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (libdir, includedir): New variables.
-       (install-src): Install libintl.a and libintl.h in correct dirs.
-
-Fri Oct 27 22:07:29 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (SOURCES): Fix typo: intrl.compat.c -> intl-compat.c.
-
-       * po2tbl.sed.in: Patch for buggy SEDs by Christian von Roques.
-
-       * localealias.c:
-       Fix typo and superflous test.  Reported by Christian von Roques.
-
-Fri Oct  6 11:52:05 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (_nl_find_domain):
-       Correct some remainder from the pre-CEN syntax.  Now
-       we don't have a constant number of successors anymore.
-
-Wed Sep 27 21:41:13 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (DISTFILES): Add libintl.h.glibc.
-
-       * Makefile.in (dist-libc): Add goal for packing sources for glibc.
-       (COMSRCS, COMHDRS): Splitted to separate sources shared with glibc.
-
-       * loadmsgcat.c: Forget to continue #if line.
-
-       * localealias.c:
-       [_LIBC]: Rename strcasecmp to __strcasecmp to keep ANSI C name
-       space clean.
-
-       * dcgettext.c, finddomain.c: Better comment to last change.
-
-       * loadmsgcat.c:
-       [_LIBC]: Rename fstat, open, close, read, mmap, and munmap to
-       __fstat, __open, __close, __read, __mmap, and __munmap resp
-       to keep ANSI C name space clean.
-
-       * finddomain.c:
-       [_LIBC]: Rename stpcpy to __stpcpy to keep ANSI C name space clean.
-
-       * dcgettext.c:
-       [_LIBC]: Rename getced and stpcpy to __getcwd and __stpcpy resp to
-       keep ANSI C name space clean.
-
-       * libgettext.h:
-       Include sys/types.h for those old SysV systems out there.
-       Reported by Francesco Potorti`.
-
-       * loadmsgcat.c (use_mmap): Define if compiled for glibc.
-
-       * bindtextdom.c: Include all those standard headers
-       unconditionally if _LIBC is defined.
-
-       * finddomain.c: Fix 2 times defiend -> defined.
-
-       * textdomain.c: Include libintl.h instead of libgettext.h when
-       compiling for glibc.  Include all those standard headers
-       unconditionally if _LIBC is defined.
-
-       * localealias.c, loadmsgcat.c: Prepare to be compiled in glibc.
-
-       * gettext.c:
-       Include libintl.h instead of libgettext.h when compiling for glibc.
-       Get NULL from stddef.h if we compile for glibc.
-
-       * finddomain.c: Include libintl.h instead of libgettext.h when
-       compiling for glibc.  Include all those standard headers
-       unconditionally if _LIBC is defined.
-
-       * dcgettext.c: Include all those standard headers unconditionally
-       if _LIBC is defined.
-
-       * dgettext.c: If compiled in glibc include libintl.h instead of
-       libgettext.h.
-       (locale.h): Don't rely on HAVE_LOCALE_H when compiling for glibc.
-
-       * dcgettext.c: If compiled in glibc include libintl.h instead of
-       libgettext.h.
-       (getcwd): Don't rely on HAVE_GETCWD when compiling for glibc.
-
-       * bindtextdom.c:
-       If compiled in glibc include libintl.h instead of libgettext.h.
-
-Mon Sep 25 22:23:06 1995  Ulrich Drepper  <drepper@myware>
-
-       * localealias.c (_nl_expand_alias): Don't call bsearch if NMAP <= 0.
-       Reported by Marcus Daniels.
-
-       * cat-compat.c (bindtextdomain):
-       String used in putenv must not be recycled.
-       Reported by Marcus Daniels.
-
-       * libgettext.h (__USE_GNU_GETTEXT):
-       Additional symbol to signal that we use GNU gettext
-       library.
-
-       * cat-compat.c (bindtextdomain):
-       Fix bug with the strange stpcpy replacement.
-       Reported by Nelson Beebe.
-
-Sat Sep 23 08:23:51 1995  Ulrich Drepper  <drepper@myware>
-
-       * cat-compat.c: Include <string.h> for stpcpy prototype.
-
-       * localealias.c (read_alias_file):
-       While expand strdup code temporary variable `cp' hided
-       higher level variable with same name.  Rename to `tp'.
-
-       * textdomain.c (textdomain):
-       Avoid warning by using temporary variable in strdup code.
-
-       * finddomain.c (_nl_find_domain): Remove unused variable `application'.
-
-Thu Sep 21 15:51:44 1995  Ulrich Drepper  <drepper@myware>
-
-       * localealias.c (alias_compare):
-       Use strcasecmp() only if available.  Else use
-       implementation in place.
-
-       * intl-compat.c:
-       Wrapper functions now call *__ functions instead of __*.
-
-       * libgettext.h: Declare prototypes for *__ functions instead for __*.
-
-       * cat-compat.c, loadmsgcat.c:
-       Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
-       of the standard libc and so prevent libintl.a from being used
-       standalone.
-
-       * bindtextdom.c:
-       Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
-       of the standard libc and so prevent libintl.a from being used
-       standalone.
-       Rename to bindtextdomain__ if not used in GNU C Library.
-
-       * dgettext.c:
-       Rename function to dgettext__ if not used in GNU C Library.
-
-       * gettext.c:
-       Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
-       of the standard libc and so prevent libintl.a from being used
-       standalone.
-       Functions now called gettext__ if not used in GNU C Library.
-
-       * dcgettext.c, localealias.c, textdomain.c, finddomain.c:
-       Don't use xmalloc, xstrdup, and stpcpy.  These functions are not part
-       of the standard libc and so prevent libintl.a from being used
-       standalone.
-
-Sun Sep 17 23:14:49 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c: Correct some bugs in handling of CEN standard
-       locale definitions.
-
-Thu Sep  7 01:49:28 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c: Implement CEN syntax.
-
-       * gettextP.h (loaded_domain): Extend number of successors to 31.
-
-Sat Aug 19 19:25:29 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (aliaspath): Remove path to X11 locale dir.
-
-       * Makefile.in: Make install-src depend on install.  This helps
-       gettext to install the sources and other packages can use the
-       install goal.
-
-Sat Aug 19 15:19:33 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (uninstall): Remove stuff installed by install-src.
-
-Tue Aug 15 13:13:53 1995  Ulrich Drepper  <drepper@myware>
-
-       * VERSION.in: Initial revision.
-
-       * Makefile.in (DISTFILES):
-       Add VERSION file.  This is not necessary for gettext, but
-       for other packages using this library.
-
-Tue Aug 15 06:16:44 1995  Ulrich Drepper  <drepper@myware>
-
-       * gettextP.h (_nl_find_domain):
-       New prototype after changing search strategy.
-
-       * finddomain.c (_nl_find_domain):
-       We now try only to find a specified catalog.  Fall back to other
-       catalogs listed in the locale list is now done in __dcgettext.
-
-       * dcgettext.c (__dcgettext):
-       Now we provide message fall back even to different languages.
-       I.e. if a message is not available in one language all the other
-       in the locale list a tried.  Formerly fall back was only possible
-       within one language.  Implemented by moving one loop from
-       _nl_find_domain to here.
-
-Mon Aug 14 23:45:50 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (gettextsrcdir):
-       Directory where source of GNU gettext library are made
-       available.
-       (INSTALL, INSTALL_DATA): Programs used for installing sources.
-       (gettext-src): New.  Rule to install GNU gettext sources for use in
-       gettextize shell script.
-
-Sun Aug 13 14:40:48 1995  Ulrich Drepper  <drepper@myware>
-
-       * loadmsgcat.c (_nl_load_domain):
-       Use mmap for loading only when munmap function is
-       also available.
-
-       * Makefile.in (install): Depend on `all' goal.
-
-Wed Aug  9 11:04:33 1995  Ulrich Drepper  <drepper@myware>
-
-       * localealias.c (read_alias_file):
-       Do not overwrite '\n' when terminating alias value string.
-
-       * localealias.c (read_alias_file):
-       Handle long lines.  Ignore the rest not fitting in
-       the buffer after the initial `fgets' call.
-
-Wed Aug  9 00:54:29 1995  Ulrich Drepper  <drepper@myware>
-
-       * gettextP.h (_nl_load_domain):
-       Add prototype, replacing prototype for _nl_load_msg_cat.
-
-       * finddomain.c (_nl_find_domain):
-       Remove unneeded variable filename and filename_len.
-       (expand_alias): Remove prototype because functions does not
-       exist anymore.
-
-       * localealias.c (read_alias_file):
-       Change type of fname_len parameter to int.
-       (xmalloc): Add prototype.
-
-       * loadmsgcat.c: Better prototypes for xmalloc.
-
-Tue Aug  8 22:30:39 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (_nl_find_domain):
-       Allow alias name to be constructed from the four components.
-
-       * Makefile.in (aliaspath): New variable.  Set to preliminary value.
-       (SOURCES): Add localealias.c.
-       (OBJECTS): Add localealias.o.
-
-       * gettextP.h: Add prototype for _nl_expand_alias.
-
-       * finddomain.c: Aliasing handled in intl/localealias.c.
-
-       * localealias.c: Aliasing for locale names.
-
-       * bindtextdom.c: Better prototypes for xmalloc and xstrdup.
-
-Mon Aug  7 23:47:42 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (DISTFILES): gettext.perl is now found in misc/.
-
-       * cat-compat.c (bindtextdomain):
-       Correct implementation.  dirname parameter was not used.
-       Reported by Marcus Daniels.
-
-       * gettextP.h (loaded_domain):
-       New fields `successor' and `decided' for oo, lazy
-       message handling implementation.
-
-       * dcgettext.c:
-       Adopt for oo, lazy message handliing.
-       Now we can inherit translations from less specific locales.
-       (find_msg): New function.
-
-       * loadmsgcat.c, finddomain.c:
-       Complete rewrite.  Implement oo, lazy message handling :-).
-       We now have an additional environment variable `LANGUAGE' with
-       a higher priority than LC_ALL for the LC_MESSAGE locale.
-       Here we can set a colon separated list of specifications each
-       of the form `language[_territory[.codeset]][@modifier]'.
-
-Sat Aug  5 09:55:42 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (unistd.h):
-       Include to get _PC_PATH_MAX defined on system having it.
-
-Fri Aug  4 22:42:00 1995  Ulrich Drepper  <drepper@myware>
-
-       * finddomain.c (stpcpy): Include prototype.
-
-       * Makefile.in (dist): Remove `copying instead' message.
-
-Wed Aug  2 18:52:03 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (ID, TAGS): Do not use $^.
-
-Tue Aug  1 20:07:11 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (TAGS, ID): Use $^ as command argument.
-       (TAGS): Give etags -o option t write to current directory,
-       not $(srcdir).
-       (ID): Use $(srcdir) instead os $(top_srcdir)/src.
-       (distclean): Remove ID.
-
-Sun Jul 30 11:51:46 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (gnulocaledir):
-       New variable, always using share/ for data directory.
-       (DEFS): Add GNULOCALEDIR, used in finddomain.c.
-
-       * finddomain.c (_nl_default_dirname):
-       Set to GNULOCALEDIR, because it always has to point
-       to the directory where GNU gettext Library writes it to.
-
-       * intl-compat.c (textdomain, bindtextdomain):
-       Undefine macros before function definition.
-
-Sat Jul 22 01:10:02 1995  Ulrich Drepper  <drepper@myware>
-
-       * libgettext.h (_LIBINTL_H):
-       Protect definition in case where this file is included as
-       libgettext.h on Solaris machines.  Add comment about this.
-
-Wed Jul 19 02:36:42 1995  Ulrich Drepper  <drepper@myware>
-
-       * intl-compat.c (textdomain): Correct typo.
-
-Wed Jul 19 01:51:35 1995  Ulrich Drepper  <drepper@myware>
-
-       * dcgettext.c (dcgettext): Function now called __dcgettext.
-
-       * dgettext.c (dgettext): Now called __dgettext and calls
-       __dcgettext.
-
-       * gettext.c (gettext):
-       Function now called __gettext and calls __dgettext.
-
-       * textdomain.c (textdomain): Function now called __textdomain.
-
-       * bindtextdom.c (bindtextdomain): Function now called
-       __bindtextdomain.
-
-       * intl-compat.c: Initial revision.
-
-       * Makefile.in (SOURCES): Add intl-compat.c.
-       (OBJECTS): We always compile the GNU gettext library functions.
-       OBJECTS contains all objects but cat-compat.o, ../po/cat-if-tbl.o,
-       and intl-compat.o.
-       (GETTOBJS): Contains now only intl-compat.o.
-
-       * libgettext.h:
-       Re-include protection matches dualistic character of libgettext.h.
-       For all functions in GNU gettext library define __ counter part.
-
-       * finddomain.c (strchr): Define as index if not found in C library.
-       (_nl_find_domain): For relative paths paste / in between.
-
-Tue Jul 18 16:37:45 1995  Ulrich Drepper  <drepper@myware>
-
-       * loadmsgcat.c, finddomain.c: Add inclusion of sys/types.h.
-
-       * xopen-msg.sed: Fix bug with `msgstr ""' lines.
-       A little bit better comments.
-
-Tue Jul 18 01:18:27 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in:
-       po-mode.el, makelinks, combine-sh are now found in ../misc.
-
-       * po-mode.el, makelinks, combine-sh, elisp-comp:
-       Moved to ../misc/.
-
-       * libgettext.h, gettextP.h, gettext.h: Uniform test for __STDC__.
-
-Sun Jul 16 22:33:02 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (INSTALL, INSTALL_DATA): New variables.
-       (install-data, uninstall): Install/uninstall .elc file.
-
-       * po-mode.el (Installation comment):
-       Add .pox as possible extension of .po files.
-
-Sun Jul 16 13:23:27 1995  Ulrich Drepper  <drepper@myware>
-
-       * elisp-comp: Complete new version by Franc,ois: This does not
-       fail when not compiling in the source directory.
-
-Sun Jul 16 00:12:17 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (../po/cat-id-tbl.o):
-       Use $(MAKE) instead of make for recursive make.
-
-       * Makefile.in (.el.elc): Use $(SHELL) instead of /bin/sh.
-       (install-exec): Add missing dummy goal.
-       (install-data, uninstall): @ in multi-line shell command at
-       beginning, not in front of echo.  Reported by Eric Backus.
-
-Sat Jul 15 00:21:28 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (DISTFILES):
-       Rename libgettext.perl to gettext.perl to fit in 14 chars
-       file systems.
-
-       * gettext.perl:
-       Rename to gettext.perl to fit in 14 chars file systems.
-
-Thu Jul 13 23:17:20 1995  Ulrich Drepper  <drepper@myware>
-
-       * cat-compat.c: If !STDC_HEADERS try to include malloc.h.
-
-Thu Jul 13 20:55:02 1995  Ulrich Drepper  <drepper@myware>
-
-       * po2tbl.sed.in: Pretty printing.
-
-       * linux-msg.sed, xopen-msg.sed:
-       Correct bugs with handling substitute flags in branches.
-
-       * hash-string.h (hash_string):
-       Old K&R compilers don't under stand `unsigned char'.
-
-       * gettext.h (nls_uint32):
-       Some old K&R compilers (eg HP) don't understand `unsigned int'.
-
-       * cat-compat.c (msg_to_cat_id): De-ANSI-fy prototypes.
-
-Thu Jul 13 01:34:33 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (ELCFILES): New variable.
-       (DISTFILES): Add elisp-comp.
-       Add implicit rule for .el -> .elc compilation.
-       (install-data): install $ELCFILES
-       (clean): renamed po-to-tbl and po-to-msg to po2tbl and po2msg resp.
-
-       * elisp-comp: Initial revision
-
-Wed Jul 12 16:14:52 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in:
-       cat-id-tbl.c is now found in po/.  This enables us to use an identical
-       intl/ directory in all packages.
-
-       * dcgettext.c (dcgettext): hashing does not work for table size <= 2.
-
-       * textdomain.c: fix typo (#if def -> #if defined)
-
-Tue Jul 11 18:44:43 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in (stamp-cat-id): use top_srcdir to address source files
-       (DISTFILES,distclean): move tupdate.perl to src/
-
-       * po-to-tbl.sed.in:
-       add additional jump to clear change flag to recognize multiline strings
-
-Tue Jul 11 01:32:50 1995  Ulrich Drepper  <drepper@myware>
-
-       * textdomain.c: Protect inclusion of stdlib.h and string.h.
-
-       * loadmsgcat.c: Protect inclusion of stdlib.h.
-
-       * libgettext.h: Protect inclusion of locale.h.
-       Allow use in C++ programs.
-       Define NULL is not happened already.
-
-       * Makefile.in (DISTFILES): ship po-to-tbl.sed.in instead of
-       po-to-tbl.sed.
-       (distclean): remove po-to-tbl.sed and tupdate.perl.
-
-       * tupdate.perl.in: Substitute Perl path even in exec line.
-       Don't include entries without translation from old .po file.
-
-Tue Jul  4 00:41:51 1995  Ulrich Drepper  <drepper@myware>
-
-       * tupdate.perl.in: use "Updated: " in msgid "".
-
-       * cat-compat.c: Fix typo (LOCALDIR -> LOCALEDIR).
-       Define getenv if !__STDC__.
-
-       * bindtextdom.c: Protect stdlib.h and string.h inclusion.
-       Define free if !__STDC__.
-
-       * finddomain.c: Change DEF_MSG_DOM_DIR to LOCALEDIR.
-       Define free if !__STDC__.
-
-       * cat-compat.c: Change DEF_MSG_DOM_DIR to LOCALEDIR.
-
-Mon Jul  3 23:56:30 1995  Ulrich Drepper  <drepper@myware>
-
-       * Makefile.in: Use LOCALEDIR instead of DEF_MSG_DOM_DIR.
-       Remove unneeded $(srcdir) from Makefile.in dependency.
-
-       * makelinks: Add copyright and short description.
-
-       * po-mode.el: Last version for 0.7.
-
-       * tupdate.perl.in: Fix die message.
-
-       * dcgettext.c: Protect include of string.h.
-
-       * gettext.c: Protect include of stdlib.h and further tries to get NULL.
-
-       * finddomain.c: Some corrections in includes.
-
-       * Makefile.in (INCLUDES): Prune list correct path to Makefile.in.
-
-       * po-to-tbl.sed: Adopt for new .po file format.
-
-       * linux-msg.sed, xopen-msg.sed: Adopt for new .po file format.
-
-Sun Jul  2 23:55:03 1995  Ulrich Drepper  <drepper@myware>
-
-       * tupdate.perl.in: Complete rewrite for new .po file format.
-
-Sun Jul  2 02:06:50 1995  Ulrich Drepper  <drepper@myware>
-
-       * First official release.  This directory contains all the code
-       needed to internationalize own packages.  It provides functions
-       which allow to use the X/Open catgets function with an interface
-       like the Uniforum gettext function.  For system which does not
-       have neither of those a complete implementation is provided.
index 41dbec5f174b19b3d928e2ca26832bf1d9fc33de..889ba23923c09a3b0c056b2593cb92d168db5b67 100644 (file)
@@ -1,5 +1,5 @@
 # Makefile for directory with message catalog handling in GNU NLS Utilities.
-# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1995-1998, 2000, 2001 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
@@ -28,75 +28,106 @@ VPATH = @srcdir@
 prefix = @prefix@
 exec_prefix = @exec_prefix@
 transform = @program_transform_name@
-libdir = $(exec_prefix)/lib
-includedir = $(prefix)/include
-datadir = $(prefix)/@DATADIRNAME@
+libdir = @libdir@
+includedir = @includedir@
+datadir = @datadir@
 localedir = $(datadir)/locale
-gnulocaledir = $(prefix)/share/locale
-gettextsrcdir = @datadir@/gettext/intl
-aliaspath = $(localedir):.
+gettextsrcdir = $(datadir)/gettext/intl
+aliaspath = $(localedir)
 subdir = intl
 
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 MKINSTALLDIRS = @MKINSTALLDIRS@
+mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
 
-l = @l@
+l = @INTL_LIBTOOL_SUFFIX_PREFIX@
 
 AR = ar
 CC = @CC@
 LIBTOOL = @LIBTOOL@
 RANLIB = @RANLIB@
+YACC = @INTLBISON@ -y -d
+YFLAGS = --name-prefix=__gettext
 
-DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \
--DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@
+DEFS = -DLOCALEDIR=\"$(localedir)\" -DLOCALE_ALIAS_PATH=\"$(aliaspath)\" \
+-DLIBDIR=\"$(libdir)\" @DEFS@
 CPPFLAGS = @CPPFLAGS@
 CFLAGS = @CFLAGS@
 LDFLAGS = @LDFLAGS@
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
-HEADERS = $(COMHDRS) libgettext.h loadinfo.h
+HEADERS = $(COMHDRS) libgnuintl.h libgettext.h loadinfo.h
 COMHDRS = gettext.h gettextP.h hash-string.h
-SOURCES = $(COMSRCS) intl-compat.c cat-compat.c
+SOURCES = $(COMSRCS) intl-compat.c
 COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \
 finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \
-explodename.c
+explodename.c dcigettext.c dcngettext.c dngettext.c ngettext.c plural.y \
+localcharset.c
 OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \
 finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \
-explodename.$lo
-CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo
+explodename.$lo dcigettext.$lo dcngettext.$lo dngettext.$lo ngettext.$lo \
+plural.$lo localcharset.$lo
 GETTOBJS = intl-compat.$lo
-DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \
-xopen-msg.sed $(HEADERS) $(SOURCES)
+DISTFILES.common = Makefile.in \
+config.charset locale.alias ref-add.sin ref-del.sin $(HEADERS) $(SOURCES)
+DISTFILES.generated = plural.c
 DISTFILES.normal = VERSION
-DISTFILES.gettext = libintl.glibc intlh.inst.in
+DISTFILES.gettext = libintl.glibc
+DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c
+
+# Libtool's library version information for libintl.
+# Before making a gettext release, the gettext maintainer must change this
+# according to the libtool documentation, section "Library interface versions".
+# Maintainers of other packages that include the intl directory must *not*
+# change these values.
+LTV_CURRENT=1
+LTV_REVISION=1
+LTV_AGE=0
 
 .SUFFIXES:
-.SUFFIXES: .c .o .lo
+.SUFFIXES: .c .y .o .lo .sin .sed
 .c.o:
        $(COMPILE) $<
 .c.lo:
        $(LIBTOOL) --mode=compile $(COMPILE) $<
 
-INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib
+.y.c:
+       $(YACC) $(YFLAGS) --output $@ $<
+       rm -f $*.h
 
-all: all-@USE_INCLUDED_LIBINTL@
+.sin.sed:
+       sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > t-$@
+       mv t-$@ $@
+
+INCLUDES = -I.. -I. -I$(top_srcdir)/intl
 
-all-yes: libintl.$la intlh.inst
-all-no:
+all: all-@USE_INCLUDED_LIBINTL@
+all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed
+all-no: all-no-@BUILD_INCLUDED_LIBINTL@
+all-no-yes: libgnuintl.$la
+all-no-no:
 
-libintl.a: $(OBJECTS)
+libintl.a libgnuintl.a: $(OBJECTS)
        rm -f $@
        $(AR) cru $@ $(OBJECTS)
        $(RANLIB) $@
 
-libintl.la: $(OBJECTS)
-       $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \
-                  -version-info 1:0 -rpath $(libdir)
+libintl.la libgnuintl.la: $(OBJECTS)
+       $(LIBTOOL) --mode=link \
+         $(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \
+         $(OBJECTS) @LIBICONV@ \
+         -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \
+         -rpath $(libdir) \
+         -no-undefined
 
-../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot
-       cd ../po && $(MAKE) cat-id-tbl.$lo
+libintl.h: libgnuintl.h
+       cp $(srcdir)/libgnuintl.h libintl.h
+
+charset.alias: config.charset
+       $(SHELL) $(srcdir)/config.charset '@host@' > t-$@
+       mv t-$@ $@
 
 check: all
 
@@ -104,36 +135,70 @@ check: all
 # only use the library should use install instead.
 
 # We must not install the libintl.h/libintl.a files if we are on a
-# system which has the gettext() function in its C library or in a
-# separate library or use the catgets interface.  A special case is
-# where configure found a previously installed GNU gettext library.
+# system which has the GNU gettext() function in its C library or in a
+# separate library.
 # If you want to use the one which comes with this version of the
 # package, you have to use `configure --with-included-gettext'.
 install: install-exec install-data
 install-exec: all
        if test "$(PACKAGE)" = "gettext" \
           && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
-         if test -r $(MKINSTALLDIRS); then \
-           $(MKINSTALLDIRS) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
+         $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
+         $(INSTALL_DATA) libintl.h $(DESTDIR)$(includedir)/libintl.h; \
+         $(LIBTOOL) --mode=install \
+           $(INSTALL_DATA) libintl.$la $(DESTDIR)$(libdir)/libintl.$la; \
+       else \
+         : ; \
+       fi
+       if test '@USE_INCLUDED_LIBINTL@' = yes; then \
+         $(mkinstalldirs) $(DESTDIR)$(libdir); \
+         temp=$(DESTDIR)$(libdir)/t-charset.alias; \
+         dest=$(DESTDIR)$(libdir)/charset.alias; \
+         if test -f $(DESTDIR)$(libdir)/charset.alias; then \
+           orig=$(DESTDIR)$(libdir)/charset.alias; \
+           sed -f ref-add.sed $$orig > $$temp; \
+           $(INSTALL_DATA) $$temp $$dest; \
+           rm -f $$temp; \
          else \
-           $(top_srcdir)/mkinstalldirs $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
+           if test @GLIBC21@ = no; then \
+             orig=charset.alias; \
+             sed -f ref-add.sed $$orig > $$temp; \
+             $(INSTALL_DATA) $$temp $$dest; \
+             rm -f $$temp; \
+           fi; \
          fi; \
-         $(INSTALL_DATA) intlh.inst $(DESTDIR)$(includedir)/libintl.h; \
-         $(INSTALL_DATA) libintl.a $(DESTDIR)$(libdir)/libintl.a; \
+         $(mkinstalldirs) $(DESTDIR)$(localedir); \
+         test -f $(DESTDIR)$(localedir)/locale.alias \
+           && orig=$(DESTDIR)$(localedir)/locale.alias \
+           || orig=$(srcdir)/locale.alias; \
+         temp=$(DESTDIR)$(localedir)/t-locale.alias; \
+         dest=$(DESTDIR)$(localedir)/locale.alias; \
+         sed -f ref-add.sed $$orig > $$temp; \
+         $(INSTALL_DATA) $$temp $$dest; \
+         rm -f $$temp; \
        else \
          : ; \
        fi
 install-data: all
        if test "$(PACKAGE)" = "gettext"; then \
-         if test -r $(MKINSTALLDIRS); then \
-           $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \
-         else \
-           $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \
-         fi; \
+         $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
          $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \
+         $(INSTALL_DATA) ChangeLog.inst $(DESTDIR)$(gettextsrcdir)/ChangeLog; \
          dists="$(DISTFILES.common)"; \
          for file in $$dists; do \
-           $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$(gettextsrcdir)/$$file; \
+           $(INSTALL_DATA) $(srcdir)/$$file \
+                           $(DESTDIR)$(gettextsrcdir)/$$file; \
+         done; \
+         chmod a+x $(DESTDIR)$(gettextsrcdir)/config.charset; \
+         dists="$(DISTFILES.generated)"; \
+         for file in $$dists; do \
+           if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
+           $(INSTALL_DATA) $$dir/$$file \
+                           $(DESTDIR)$(gettextsrcdir)/$$file; \
+         done; \
+         dists="$(DISTFILES.obsolete)"; \
+         for file in $$dists; do \
+           rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
          done; \
        else \
          : ; \
@@ -143,14 +208,51 @@ install-data: all
 installcheck:
 
 uninstall:
-       dists="$(DISTFILES.common)"; \
-       for file in $$dists; do \
-         rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
-       done
+       if test "$(PACKAGE)" = "gettext" \
+          && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
+         rm -f $(DESTDIR)$(includedir)/libintl.h; \
+         $(LIBTOOL) --mode=uninstall \
+           rm -f $(DESTDIR)$(libdir)/libintl.$la; \
+       else \
+         : ; \
+       fi
+       if test '@USE_INCLUDED_LIBINTL@' = yes; then \
+         if test -f $(DESTDIR)$(libdir)/charset.alias; then \
+           temp=$(DESTDIR)$(libdir)/t-charset.alias; \
+           dest=$(DESTDIR)$(libdir)/charset.alias; \
+           sed -f ref-del.sed $$dest > $$temp; \
+           if grep '^# Packages using this file: $$' $$temp > /dev/null; then \
+             rm -f $$dest; \
+           else \
+             $(INSTALL_DATA) $$temp $$dest; \
+           fi; \
+           rm -f $$temp; \
+         fi; \
+         if test -f $(DESTDIR)$(localedir)/locale.alias; then \
+           temp=$(DESTDIR)$(localedir)/t-locale.alias; \
+           dest=$(DESTDIR)$(localedir)/locale.alias; \
+           sed -f ref-del.sed $$dest > $$temp; \
+           if grep '^# Packages using this file: $$' $$temp > /dev/null; then \
+             rm -f $$dest; \
+           else \
+             $(INSTALL_DATA) $$temp $$dest; \
+           fi; \
+           rm -f $$temp; \
+         fi; \
+       else \
+         : ; \
+       fi
+       if test "$(PACKAGE)" = "gettext"; then \
+         for file in VERSION ChangeLog $(DISTFILES.common) $(DISTFILES.generated); do \
+           rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
+         done; \
+       else \
+         : ; \
+       fi
 
 info dvi:
 
-$(OBJECTS): ../config.h libgettext.h
+$(OBJECTS): ../config.h libgnuintl.h
 bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h
 dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h
 
@@ -166,12 +268,19 @@ ID: $(HEADERS) $(SOURCES)
 
 
 mostlyclean:
-       rm -f *.a *.o *.lo core core.*
+       rm -f *.a *.la *.o *.lo core core.*
+       rm -f libintl.h charset.alias ref-add.sed ref-del.sed
+       rm -f -r .libs _libs
 
 clean: mostlyclean
 
 distclean: clean
-       rm -f Makefile ID TAGS po2msg.sed po2tbl.sed
+       rm -f Makefile ID TAGS
+       if test "$(PACKAGE)" = gettext; then \
+         rm -f ChangeLog.inst $(DISTFILES.normal); \
+       else \
+         : ; \
+       fi
 
 maintainer-clean: distclean
        @echo "This command is intended for maintainers to use;"
@@ -181,34 +290,23 @@ maintainer-clean: distclean
 # GNU gettext needs not contain the file `VERSION' but contains some
 # other files which should not be distributed in other packages.
 distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
-dist distdir: Makefile $(DISTFILES)
+dist distdir: Makefile
        if test "$(PACKAGE)" = gettext; then \
          additional="$(DISTFILES.gettext)"; \
        else \
          additional="$(DISTFILES.normal)"; \
        fi; \
-       for file in $(DISTFILES.common) $$additional; do \
-         ln $(srcdir)/$$file $(distdir) 2> /dev/null \
-           || cp -p $(srcdir)/$$file $(distdir); \
+       $(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \
+       for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \
+         if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
+         ln $$dir/$$file $(distdir) 2> /dev/null \
+           || cp -p $$dir/$$file $(distdir); \
        done
 
-dist-libc:
-       tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc
-
 Makefile: Makefile.in ../config.status
        cd .. \
          && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
 
-# The dependency for intlh.inst is different in gettext and all other
-# packages.  Because we cannot you GNU make features we have to solve
-# the problem while rewriting Makefile.in.
-@GT_YES@intlh.inst: intlh.inst.in ../config.status
-@GT_YES@       cd .. \
-@GT_YES@       && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \
-@GT_YES@         $(SHELL) ./config.status
-@GT_NO@.PHONY: intlh.inst
-@GT_NO@intlh.inst:
-
 # Tell versions [3.59,3.63) of GNU make not to export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT:
index ee66b0612bc4e684ea5d5958a0dfc402254d09de..268da64a59e9ff82cd4866808e0b100545c2b694 100644 (file)
@@ -1 +1 @@
-GNU gettext library from gettext-0.10.35
+GNU gettext library from gettext-0.10.38
index d9c3f349e04dee8aad8a06ecc76cacc4ccc187ba..7e5a74a43bf2ae94182246249274291269a30f0e 100644 (file)
@@ -1,5 +1,5 @@
 /* Implementation of the bindtextdomain(3) function
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1995-1998, 2000, 2001 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
 # include <config.h>
 #endif
 
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#else
-# ifdef HAVE_MALLOC_H
-#  include <malloc.h>
-# else
-void free ();
-# endif
-#endif
+#include <stddef.h>
+#include <stdlib.h>
+#include <string.h>
 
-#if defined HAVE_STRING_H || defined _LIBC
-# include <string.h>
+#ifdef _LIBC
+# include <libintl.h>
 #else
-# include <strings.h>
-# ifndef memcpy
-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
-# endif
+# include "libgnuintl.h"
 #endif
+#include "gettextP.h"
 
 #ifdef _LIBC
-# include <libintl.h>
+/* We have to handle multi-threaded applications.  */
+# include <bits/libc-lock.h>
 #else
-# include "libgettext.h"
+/* Provide dummy implementation if this is outside glibc.  */
+# define __libc_rwlock_define(CLASS, NAME)
+# define __libc_rwlock_wrlock(NAME)
+# define __libc_rwlock_unlock(NAME)
+#endif
+
+/* The internal variables in the standalone libintl.a must have different
+   names than the internal variables in GNU libc, otherwise programs
+   using libintl.a cannot be linked statically.  */
+#if !defined _LIBC
+# define _nl_default_dirname _nl_default_dirname__
+# define _nl_domain_bindings _nl_domain_bindings__
+#endif
+
+/* Some compilers, like SunOS4 cc, don't have offsetof in <stddef.h>.  */
+#ifndef offsetof
+# define offsetof(type,ident) ((size_t)&(((type*)0)->ident))
 #endif
-#include "gettext.h"
-#include "gettextP.h"
 
 /* @@ end of prolog @@ */
 
@@ -54,6 +61,9 @@ extern const char _nl_default_dirname[];
 /* List with bindings of specific domains.  */
 extern struct binding *_nl_domain_bindings;
 
+/* Lock variable to protect the global data in the gettext implementation.  */
+__libc_rwlock_define (extern, _nl_state_lock)
+
 
 /* Names for the libintl functions are a problem.  They must not clash
    with existing names and they should follow ANSI C.  But this source
@@ -61,25 +71,48 @@ extern struct binding *_nl_domain_bindings;
    prefix.  So we have to make a difference here.  */
 #ifdef _LIBC
 # define BINDTEXTDOMAIN __bindtextdomain
+# define BIND_TEXTDOMAIN_CODESET __bind_textdomain_codeset
 # ifndef strdup
 #  define strdup(str) __strdup (str)
 # endif
 #else
 # define BINDTEXTDOMAIN bindtextdomain__
+# define BIND_TEXTDOMAIN_CODESET bind_textdomain_codeset__
 #endif
 
-/* Specify that the DOMAINNAME message catalog will be found
-   in DIRNAME rather than in the system locale data base.  */
-char *
-BINDTEXTDOMAIN (domainname, dirname)
+/* Prototypes for local functions.  */
+static void set_binding_values PARAMS ((const char *domainname,
+                                       const char **dirnamep,
+                                       const char **codesetp));
+     
+/* Specifies the directory name *DIRNAMEP and the output codeset *CODESETP
+   to be used for the DOMAINNAME message catalog.
+   If *DIRNAMEP or *CODESETP is NULL, the corresponding attribute is not
+   modified, only the current value is returned.
+   If DIRNAMEP or CODESETP is NULL, the corresponding attribute is neither
+   modified nor returned.  */
+static void
+set_binding_values (domainname, dirnamep, codesetp)
      const char *domainname;
-     const char *dirname;
+     const char **dirnamep;
+     const char **codesetp;
 {
   struct binding *binding;
+  int modified;
 
   /* Some sanity checks.  */
   if (domainname == NULL || domainname[0] == '\0')
-    return NULL;
+    {
+      if (dirnamep)
+       *dirnamep = NULL;
+      if (codesetp)
+       *codesetp = NULL;
+      return;
+    }
+
+  __libc_rwlock_wrlock (_nl_state_lock);
+
+  modified = 0;
 
   for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)
     {
@@ -95,83 +128,173 @@ BINDTEXTDOMAIN (domainname, dirname)
        }
     }
 
-  if (dirname == NULL)
-    /* The current binding has be to returned.  */
-    return binding == NULL ? (char *) _nl_default_dirname : binding->dirname;
-
   if (binding != NULL)
     {
-      /* The domain is already bound.  If the new value and the old
-        one are equal we simply do nothing.  Otherwise replace the
-        old binding.  */
-      if (strcmp (dirname, binding->dirname) != 0)
+      if (dirnamep)
        {
-         char *new_dirname;
+         const char *dirname = *dirnamep;
 
-         if (strcmp (dirname, _nl_default_dirname) == 0)
-           new_dirname = (char *) _nl_default_dirname;
+         if (dirname == NULL)
+           /* The current binding has be to returned.  */
+           *dirnamep = binding->dirname;
          else
            {
+             /* The domain is already bound.  If the new value and the old
+                one are equal we simply do nothing.  Otherwise replace the
+                old binding.  */
+             char *result = binding->dirname;
+             if (strcmp (dirname, result) != 0)
+               {
+                 if (strcmp (dirname, _nl_default_dirname) == 0)
+                   result = (char *) _nl_default_dirname;
+                 else
+                   {
 #if defined _LIBC || defined HAVE_STRDUP
-             new_dirname = strdup (dirname);
-             if (new_dirname == NULL)
-               return NULL;
+                     result = strdup (dirname);
 #else
-             size_t len = strlen (dirname) + 1;
-             new_dirname = (char *) malloc (len);
-             if (new_dirname == NULL)
-               return NULL;
-
-             memcpy (new_dirname, dirname, len);
+                     size_t len = strlen (dirname) + 1;
+                     result = (char *) malloc (len);
+                     if (__builtin_expect (result != NULL, 1))
+                       memcpy (result, dirname, len);
 #endif
+                   }
+
+                 if (__builtin_expect (result != NULL, 1))
+                   {
+                     if (binding->dirname != _nl_default_dirname)
+                       free (binding->dirname);
+
+                     binding->dirname = result;
+                     modified = 1;
+                   }
+               }
+             *dirnamep = result;
            }
+       }
 
-         if (binding->dirname != _nl_default_dirname)
-           free (binding->dirname);
+      if (codesetp)
+       {
+         const char *codeset = *codesetp;
 
-         binding->dirname = new_dirname;
+         if (codeset == NULL)
+           /* The current binding has be to returned.  */
+           *codesetp = binding->codeset;
+         else
+           {
+             /* The domain is already bound.  If the new value and the old
+                one are equal we simply do nothing.  Otherwise replace the
+                old binding.  */
+             char *result = binding->codeset;
+             if (result == NULL || strcmp (codeset, result) != 0)
+               {
+#if defined _LIBC || defined HAVE_STRDUP
+                 result = strdup (codeset);
+#else
+                 size_t len = strlen (codeset) + 1;
+                 result = (char *) malloc (len);
+                 if (__builtin_expect (result != NULL, 1))
+                   memcpy (result, codeset, len);
+#endif
+
+                 if (__builtin_expect (result != NULL, 1))
+                   {
+                     if (binding->codeset != NULL)
+                       free (binding->codeset);
+
+                     binding->codeset = result;
+                     binding->codeset_cntr++;
+                     modified = 1;
+                   }
+               }
+             *codesetp = result;
+           }
        }
     }
+  else if ((dirnamep == NULL || *dirnamep == NULL)
+          && (codesetp == NULL || *codesetp == NULL))
+    {
+      /* Simply return the default values.  */
+      if (dirnamep)
+       *dirnamep = _nl_default_dirname;
+      if (codesetp)
+       *codesetp = NULL;
+    }
   else
     {
       /* We have to create a new binding.  */
-#if !defined _LIBC && !defined HAVE_STRDUP
-      size_t len;
-#endif
+      size_t len = strlen (domainname) + 1;
       struct binding *new_binding =
-       (struct binding *) malloc (sizeof (*new_binding));
+       (struct binding *) malloc (offsetof (struct binding, domainname) + len);
+
+      if (__builtin_expect (new_binding == NULL, 0))
+       goto failed;
 
-      if (new_binding == NULL)
-       return NULL;
+      memcpy (new_binding->domainname, domainname, len);
+
+      if (dirnamep)
+       {
+         const char *dirname = *dirnamep;
 
+         if (dirname == NULL)
+           /* The default value.  */
+           dirname = _nl_default_dirname;
+         else
+           {
+             if (strcmp (dirname, _nl_default_dirname) == 0)
+               dirname = _nl_default_dirname;
+             else
+               {
+                 char *result;
 #if defined _LIBC || defined HAVE_STRDUP
-      new_binding->domainname = strdup (domainname);
-      if (new_binding->domainname == NULL)
-       return NULL;
+                 result = strdup (dirname);
+                 if (__builtin_expect (result == NULL, 0))
+                   goto failed_dirname;
 #else
-      len = strlen (domainname) + 1;
-      new_binding->domainname = (char *) malloc (len);
-      if (new_binding->domainname == NULL)
-       return NULL;
-      memcpy (new_binding->domainname, domainname, len);
+                 size_t len = strlen (dirname) + 1;
+                 result = (char *) malloc (len);
+                 if (__builtin_expect (result == NULL, 0))
+                   goto failed_dirname;
+                 memcpy (result, dirname, len);
 #endif
-
-      if (strcmp (dirname, _nl_default_dirname) == 0)
-       new_binding->dirname = (char *) _nl_default_dirname;
+                 dirname = result;
+               }
+           }
+         *dirnamep = dirname;
+         new_binding->dirname = (char *) dirname;
+       }
       else
+       /* The default value.  */
+       new_binding->dirname = (char *) _nl_default_dirname;
+
+      new_binding->codeset_cntr = 0;
+
+      if (codesetp)
        {
+         const char *codeset = *codesetp;
+
+         if (codeset != NULL)
+           {
+             char *result;
+
 #if defined _LIBC || defined HAVE_STRDUP
-         new_binding->dirname = strdup (dirname);
-         if (new_binding->dirname == NULL)
-           return NULL;
+             result = strdup (codeset);
+             if (__builtin_expect (result == NULL, 0))
+               goto failed_codeset;
 #else
-         len = strlen (dirname) + 1;
-         new_binding->dirname = (char *) malloc (len);
-         if (new_binding->dirname == NULL)
-           return NULL;
-         memcpy (new_binding->dirname, dirname, len);
+             size_t len = strlen (codeset) + 1;
+             result = (char *) malloc (len);
+             if (__builtin_expect (result == NULL, 0))
+               goto failed_codeset;
+             memcpy (result, codeset, len);
 #endif
+             codeset = result;
+             new_binding->codeset_cntr++;
+           }
+         *codesetp = codeset;
+         new_binding->codeset = (char *) codeset;
        }
+      else
+       new_binding->codeset = NULL;
 
       /* Now enqueue it.  */
       if (_nl_domain_bindings == NULL
@@ -191,13 +314,55 @@ BINDTEXTDOMAIN (domainname, dirname)
          binding->next = new_binding;
        }
 
-      binding = new_binding;
+      modified = 1;
+
+      /* Here we deal with memory allocation failures.  */
+      if (0)
+       {
+       failed_codeset:
+         if (new_binding->dirname != _nl_default_dirname)
+           free (new_binding->dirname);
+       failed_dirname:
+         free (new_binding);
+       failed:
+         if (dirnamep)
+           *dirnamep = NULL;
+         if (codesetp)
+           *codesetp = NULL;
+       }
     }
 
-  return binding->dirname;
+  /* If we modified any binding, we flush the caches.  */
+  if (modified)
+    ++_nl_msg_cat_cntr;
+
+  __libc_rwlock_unlock (_nl_state_lock);
+}
+
+/* Specify that the DOMAINNAME message catalog will be found
+   in DIRNAME rather than in the system locale data base.  */
+char *
+BINDTEXTDOMAIN (domainname, dirname)
+     const char *domainname;
+     const char *dirname;
+{
+  set_binding_values (domainname, &dirname, NULL);
+  return (char *) dirname;
+}
+
+/* Specify the character encoding in which the messages from the
+   DOMAINNAME message catalog will be returned.  */
+char *
+BIND_TEXTDOMAIN_CODESET (domainname, codeset)
+     const char *domainname;
+     const char *codeset;
+{
+  set_binding_values (domainname, NULL, &codeset);
+  return (char *) codeset;
 }
 
 #ifdef _LIBC
-/* Alias for function name in GNU C Library.  */
+/* Aliases for function names in GNU C Library.  */
 weak_alias (__bindtextdomain, bindtextdomain);
+weak_alias (__bind_textdomain_codeset, bind_textdomain_codeset);
 #endif
diff --git a/intl/cat-compat.c b/intl/cat-compat.c
deleted file mode 100644 (file)
index 867d901..0000000
+++ /dev/null
@@ -1,262 +0,0 @@
-/* Compatibility code for gettext-using-catgets interface.
-   Copyright (C) 1995, 1997 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
-   the Free Software Foundation; either version 2, 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.  */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef STDC_HEADERS
-# include <stdlib.h>
-# include <string.h>
-#else
-char *getenv ();
-# ifdef HAVE_MALLOC_H
-#  include <malloc.h>
-# endif
-#endif
-
-#ifdef HAVE_NL_TYPES_H
-# include <nl_types.h>
-#endif
-
-#include "libgettext.h"
-
-/* @@ end of prolog @@ */
-
-/* XPG3 defines the result of `setlocale (category, NULL)' as:
-   ``Directs `setlocale()' to query `category' and return the current
-     setting of `local'.''
-   However it does not specify the exact format.  And even worse: POSIX
-   defines this not at all.  So we can use this feature only on selected
-   system (e.g. those using GNU C Library).  */
-#ifdef _LIBC
-# define HAVE_LOCALE_NULL
-#endif
-
-/* The catalog descriptor.  */
-static nl_catd catalog = (nl_catd) -1;
-
-/* Name of the default catalog.  */
-static const char default_catalog_name[] = "messages";
-
-/* Name of currently used catalog.  */
-static const char *catalog_name = default_catalog_name;
-
-/* Get ID for given string.  If not found return -1.  */
-static int msg_to_cat_id PARAMS ((const char *msg));
-
-/* Substitution for systems lacking this function in their C library.  */
-#if !_LIBC && !HAVE_STPCPY
-static char *stpcpy PARAMS ((char *dest, const char *src));
-#endif
-
-
-/* Set currently used domain/catalog.  */
-char *
-textdomain (domainname)
-     const char *domainname;
-{
-  nl_catd new_catalog;
-  char *new_name;
-  size_t new_name_len;
-  char *lang;
-
-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES \
-    && defined HAVE_LOCALE_NULL
-  lang = setlocale (LC_MESSAGES, NULL);
-#else
-  lang = getenv ("LC_ALL");
-  if (lang == NULL || lang[0] == '\0')
-    {
-      lang = getenv ("LC_MESSAGES");
-      if (lang == NULL || lang[0] == '\0')
-       lang = getenv ("LANG");
-    }
-#endif
-  if (lang == NULL || lang[0] == '\0')
-    lang = "C";
-
-  /* See whether name of currently used domain is asked.  */
-  if (domainname == NULL)
-    return (char *) catalog_name;
-
-  if (domainname[0] == '\0')
-    domainname = default_catalog_name;
-
-  /* Compute length of added path element.  */
-  new_name_len = sizeof (LOCALEDIR) - 1 + 1 + strlen (lang)
-                + sizeof ("/LC_MESSAGES/") - 1 + sizeof (PACKAGE) - 1
-                + sizeof (".cat");
-
-  new_name = (char *) malloc (new_name_len);
-  if (new_name == NULL)
-    return NULL;
-
-  strcpy (new_name, PACKAGE);
-  new_catalog = catopen (new_name, 0);
-
-  if (new_catalog == (nl_catd) -1)
-    {
-      /* NLSPATH search didn't work, try absolute path */
-      sprintf (new_name, "%s/%s/LC_MESSAGES/%s.cat", LOCALEDIR, lang,
-              PACKAGE);
-      new_catalog = catopen (new_name, 0);
-
-      if (new_catalog == (nl_catd) -1)
-       {
-         free (new_name);
-         return (char *) catalog_name;
-       }
-    }
-
-  /* Close old catalog.  */
-  if (catalog != (nl_catd) -1)
-    catclose (catalog);
-  if (catalog_name != default_catalog_name)
-    free ((char *) catalog_name);
-
-  catalog = new_catalog;
-  catalog_name = new_name;
-
-  return (char *) catalog_name;
-}
-
-char *
-bindtextdomain (domainname, dirname)
-     const char *domainname;
-     const char *dirname;
-{
-#if HAVE_SETENV || HAVE_PUTENV
-  char *old_val, *new_val, *cp;
-  size_t new_val_len;
-
-  /* This does not make much sense here but to be compatible do it.  */
-  if (domainname == NULL)
-    return NULL;
-
-  /* Compute length of added path element.  If we use setenv we don't need
-     the first byts for NLSPATH=, but why complicate the code for this
-     peanuts.  */
-  new_val_len = sizeof ("NLSPATH=") - 1 + strlen (dirname)
-               + sizeof ("/%L/LC_MESSAGES/%N.cat");
-
-  old_val = getenv ("NLSPATH");
-  if (old_val == NULL || old_val[0] == '\0')
-    {
-      old_val = NULL;
-      new_val_len += 1 + sizeof (LOCALEDIR) - 1
-                    + sizeof ("/%L/LC_MESSAGES/%N.cat");
-    }
-  else
-    new_val_len += strlen (old_val);
-
-  new_val = (char *) malloc (new_val_len);
-  if (new_val == NULL)
-    return NULL;
-
-# if HAVE_SETENV
-  cp = new_val;
-# else
-  cp = stpcpy (new_val, "NLSPATH=");
-# endif
-
-  cp = stpcpy (cp, dirname);
-  cp = stpcpy (cp, "/%L/LC_MESSAGES/%N.cat:");
-
-  if (old_val == NULL)
-    {
-# if __STDC__
-      stpcpy (cp, LOCALEDIR "/%L/LC_MESSAGES/%N.cat");
-# else
-
-      cp = stpcpy (cp, LOCALEDIR);
-      stpcpy (cp, "/%L/LC_MESSAGES/%N.cat");
-# endif
-    }
-  else
-    stpcpy (cp, old_val);
-
-# if HAVE_SETENV
-  setenv ("NLSPATH", new_val, 1);
-  free (new_val);
-# else
-  putenv (new_val);
-  /* Do *not* free the environment entry we just entered.  It is used
-     from now on.   */
-# endif
-
-#endif
-
-  return (char *) domainname;
-}
-
-#undef gettext
-char *
-gettext (msg)
-     const char *msg;
-{
-  int msgid;
-
-  if (msg == NULL || catalog == (nl_catd) -1)
-    return (char *) msg;
-
-  /* Get the message from the catalog.  We always use set number 1.
-     The message ID is computed by the function `msg_to_cat_id'
-     which works on the table generated by `po-to-tbl'.  */
-  msgid = msg_to_cat_id (msg);
-  if (msgid == -1)
-    return (char *) msg;
-
-  return catgets (catalog, 1, msgid, (char *) msg);
-}
-
-/* Look through the table `_msg_tbl' which has `_msg_tbl_length' entries
-   for the one equal to msg.  If it is found return the ID.  In case when
-   the string is not found return -1.  */
-static int
-msg_to_cat_id (msg)
-     const char *msg;
-{
-  int cnt;
-
-  for (cnt = 0; cnt < _msg_tbl_length; ++cnt)
-    if (strcmp (msg, _msg_tbl[cnt]._msg) == 0)
-      return _msg_tbl[cnt]._msg_number;
-
-  return -1;
-}
-
-
-/* @@ begin of epilog @@ */
-
-/* We don't want libintl.a to depend on any other library.  So we
-   avoid the non-standard function stpcpy.  In GNU C Library this
-   function is available, though.  Also allow the symbol HAVE_STPCPY
-   to be defined.  */
-#if !_LIBC && !HAVE_STPCPY
-static char *
-stpcpy (dest, src)
-     char *dest;
-     const char *src;
-{
-  while ((*dest++ = *src++) != '\0')
-    /* Do nothing. */ ;
-  return dest - 1;
-}
-#endif
diff --git a/intl/config.charset b/intl/config.charset
new file mode 100644 (file)
index 0000000..d6f3695
--- /dev/null
@@ -0,0 +1,438 @@
+#! /bin/sh
+# Output a system dependent table of character encoding aliases.
+#
+#   Copyright (C) 2000-2001 Free Software Foundation, Inc.
+#
+#   This program is free software; you can redistribute it and/or modify it
+#   under the terms of the GNU Library General Public License as published
+#   by the Free Software Foundation; either version 2, 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
+#   Library General Public License for more details.
+#
+#   You should have received a copy of the GNU Library 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.
+#
+# The table consists of lines of the form
+#    ALIAS  CANONICAL
+#
+# ALIAS is the (system dependent) result of "nl_langinfo (CODESET)".
+# ALIAS is compared in a case sensitive way.
+#
+# CANONICAL is the GNU canonical name for this character encoding.
+# It must be an encoding supported by libiconv. Support by GNU libc is
+# also desirable. CANONICAL is case insensitive. Usually an upper case
+# MIME charset name is preferred.
+# The current list of GNU canonical charset names is as follows.
+#
+#       name                         used by which systems         a MIME name?
+#   ASCII, ANSI_X3.4-1968     glibc solaris freebsd
+#   ISO-8859-1                glibc aix hpux irix osf solaris freebsd   yes
+#   ISO-8859-2                glibc aix hpux irix osf solaris freebsd   yes
+#   ISO-8859-3                glibc                                     yes
+#   ISO-8859-4                osf solaris freebsd                       yes
+#   ISO-8859-5                glibc aix hpux irix osf solaris freebsd   yes
+#   ISO-8859-6                glibc aix hpux solaris                    yes
+#   ISO-8859-7                glibc aix hpux irix osf solaris           yes
+#   ISO-8859-8                glibc aix hpux osf solaris                yes
+#   ISO-8859-9                glibc aix hpux irix osf solaris           yes
+#   ISO-8859-13               glibc
+#   ISO-8859-15               glibc aix osf solaris freebsd
+#   KOI8-R                    glibc solaris freebsd                     yes
+#   KOI8-U                    glibc freebsd                             yes
+#   CP437                     dos
+#   CP775                     dos
+#   CP850                     aix osf dos
+#   CP852                     dos
+#   CP855                     dos
+#   CP856                     aix
+#   CP857                     dos
+#   CP861                     dos
+#   CP862                     dos
+#   CP864                     dos
+#   CP865                     dos
+#   CP866                     freebsd dos
+#   CP869                     dos
+#   CP874                     win32 dos
+#   CP922                     aix
+#   CP932                     aix win32 dos
+#   CP943                     aix
+#   CP949                     osf win32 dos
+#   CP950                     win32 dos
+#   CP1046                    aix
+#   CP1124                    aix
+#   CP1129                    aix
+#   CP1250                    win32
+#   CP1251                    glibc win32
+#   CP1252                    aix win32
+#   CP1253                    win32
+#   CP1254                    win32
+#   CP1255                    win32
+#   CP1256                    win32
+#   CP1257                    win32
+#   GB2312                    glibc aix hpux irix solaris freebsd       yes
+#   EUC-JP                    glibc aix hpux irix osf solaris freebsd   yes
+#   EUC-KR                    glibc aix hpux irix osf solaris freebsd   yes
+#   EUC-TW                    glibc aix hpux irix osf solaris
+#   BIG5                      glibc aix hpux osf solaris freebsd        yes
+#   BIG5HKSCS                 glibc
+#   GBK                       aix osf win32 dos
+#   GB18030                   glibc
+#   SJIS                      hpux osf solaris freebsd
+#   JOHAB                     glibc win32
+#   TIS-620                   glibc aix hpux osf solaris
+#   VISCII                    glibc                                     yes
+#   HP-ROMAN8                 hpux
+#   HP-ARABIC8                hpux
+#   HP-GREEK8                 hpux
+#   HP-HEBREW8                hpux
+#   HP-TURKISH8               hpux
+#   HP-KANA8                  hpux
+#   DEC-KANJI                 osf
+#   DEC-HANYU                 osf
+#   UTF-8                     glibc aix hpux osf solaris                yes
+#
+# Note: Names which are not marked as being a MIME name should not be used in
+# Internet protocols for information interchange (mail, news, etc.).
+#
+# Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications
+# must understand both names and treat them as equivalent.
+#
+# The first argument passed to this file is the canonical host specification,
+#    CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or
+#    CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+
+host="$1"
+os=`echo "$host" | sed -e 's/^[^-]*-[^-]*-\(.*\)$/\1/'`
+echo "# This file contains a table of character encoding aliases,"
+echo "# suitable for operating system '${os}'."
+echo "# It was automatically generated from config.charset."
+# List of references, updated during installation:
+echo "# Packages using this file: "
+case "$os" in
+    linux* | *-gnu*)
+       # With glibc-2.1 or newer, we don't need any canonicalization,
+       # because glibc has iconv and both glibc and libiconv support all
+       # GNU canonical names directly. Therefore, the Makefile does not
+       # need to install the alias file at all.
+       # The following applies only to glibc-2.0.x and older libcs.
+       echo "ISO_646.IRV:1983 ASCII"
+       ;;
+    aix*)
+       echo "ISO8859-1 ISO-8859-1"
+       echo "ISO8859-2 ISO-8859-2"
+       echo "ISO8859-5 ISO-8859-5"
+       echo "ISO8859-6 ISO-8859-6"
+       echo "ISO8859-7 ISO-8859-7"
+       echo "ISO8859-8 ISO-8859-8"
+       echo "ISO8859-9 ISO-8859-9"
+       echo "ISO8859-15 ISO-8859-15"
+       echo "IBM-850 CP850"
+       echo "IBM-856 CP856"
+       echo "IBM-921 ISO-8859-13"
+       echo "IBM-922 CP922"
+       echo "IBM-932 CP932"
+       echo "IBM-943 CP943"
+       echo "IBM-1046 CP1046"
+       echo "IBM-1124 CP1124"
+       echo "IBM-1129 CP1129"
+       echo "IBM-1252 CP1252"
+       echo "IBM-eucCN GB2312"
+       echo "IBM-eucJP EUC-JP"
+       echo "IBM-eucKR EUC-KR"
+       echo "IBM-eucTW EUC-TW"
+       echo "big5 BIG5"
+       echo "GBK GBK"
+       echo "TIS-620 TIS-620"
+       echo "UTF-8 UTF-8"
+       ;;
+    hpux*)
+       echo "iso88591 ISO-8859-1"
+       echo "iso88592 ISO-8859-2"
+       echo "iso88595 ISO-8859-5"
+       echo "iso88596 ISO-8859-6"
+       echo "iso88597 ISO-8859-7"
+       echo "iso88598 ISO-8859-8"
+       echo "iso88599 ISO-8859-9"
+       echo "iso885915 ISO-8859-15"
+       echo "roman8 HP-ROMAN8"
+       echo "arabic8 HP-ARABIC8"
+       echo "greek8 HP-GREEK8"
+       echo "hebrew8 HP-HEBREW8"
+       echo "turkish8 HP-TURKISH8"
+       echo "kana8 HP-KANA8"
+       echo "tis620 TIS-620"
+       echo "big5 BIG5"
+       echo "eucJP EUC-JP"
+       echo "eucKR EUC-KR"
+       echo "eucTW EUC-TW"
+       echo "hp15CN GB2312"
+       #echo "ccdc ?" # what is this?
+       echo "SJIS SJIS"
+       echo "utf8 UTF-8"
+       ;;
+    irix*)
+       echo "ISO8859-1 ISO-8859-1"
+       echo "ISO8859-2 ISO-8859-2"
+       echo "ISO8859-5 ISO-8859-5"
+       echo "ISO8859-7 ISO-8859-7"
+       echo "ISO8859-9 ISO-8859-9"
+       echo "eucCN GB2312"
+       echo "eucJP EUC-JP"
+       echo "eucKR EUC-KR"
+       echo "eucTW EUC-TW"
+       ;;
+    osf*)
+       echo "ISO8859-1 ISO-8859-1"
+       echo "ISO8859-2 ISO-8859-2"
+       echo "ISO8859-4 ISO-8859-4"
+       echo "ISO8859-5 ISO-8859-5"
+       echo "ISO8859-7 ISO-8859-7"
+       echo "ISO8859-8 ISO-8859-8"
+       echo "ISO8859-9 ISO-8859-9"
+       echo "ISO8859-15 ISO-8859-15"
+       echo "cp850 CP850"
+       echo "big5 BIG5"
+       echo "dechanyu DEC-HANYU"
+       echo "dechanzi GB2312"
+       echo "deckanji DEC-KANJI"
+       echo "deckorean EUC-KR"
+       echo "eucJP EUC-JP"
+       echo "eucKR EUC-KR"
+       echo "eucTW EUC-TW"
+       echo "GBK GBK"
+       echo "KSC5601 CP949"
+       echo "sdeckanji EUC-JP"
+       echo "SJIS SJIS"
+       echo "TACTIS TIS-620"
+       echo "UTF-8 UTF-8"
+       ;;
+    solaris*)
+       echo "646 ASCII"
+       echo "ISO8859-1 ISO-8859-1"
+       echo "ISO8859-2 ISO-8859-2"
+       echo "ISO8859-4 ISO-8859-4"
+       echo "ISO8859-5 ISO-8859-5"
+       echo "ISO8859-6 ISO-8859-6"
+       echo "ISO8859-7 ISO-8859-7"
+       echo "ISO8859-8 ISO-8859-8"
+       echo "ISO8859-9 ISO-8859-9"
+       echo "ISO8859-15 ISO-8859-15"
+       echo "koi8-r KOI8-R"
+       echo "BIG5 BIG5"
+       echo "gb2312 GB2312"
+       echo "cns11643 EUC-TW"
+       echo "5601 EUC-KR"
+       echo "eucJP EUC-JP"
+       echo "PCK SJIS"
+       echo "TIS620.2533 TIS-620"
+       #echo "sun_eu_greek ?" # what is this?
+       echo "UTF-8 UTF-8"
+       ;;
+    freebsd*)
+       # FreeBSD 4.2 doesn't have nl_langinfo(CODESET); therefore
+       # localcharset.c falls back to using the full locale name
+       # from the environment variables.
+       echo "C ASCII"
+       echo "US-ASCII ASCII"
+       for l in la_LN lt_LN; do
+         echo "$l.ASCII ASCII"
+       done
+       for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \
+                fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT la_LN \
+                lt_LN nl_BE nl_NL no_NO pt_PT sv_SE; do
+         echo "$l.ISO_8859-1 ISO-8859-1"
+         echo "$l.DIS_8859-15 ISO-8859-15"
+       done
+       for l in cs_CZ hr_HR hu_HU la_LN lt_LN pl_PL sl_SI; do
+         echo "$l.ISO_8859-2 ISO-8859-2"
+       done
+       for l in la_LN lt_LT; do
+         echo "$l.ISO_8859-4 ISO-8859-4"
+       done
+       for l in ru_RU ru_SU; do
+         echo "$l.KOI8-R KOI8-R"
+         echo "$l.ISO_8859-5 ISO-8859-5"
+         echo "$l.CP866 CP866"
+       done
+       echo "uk_UA.KOI8-U KOI8-U"
+       echo "zh_TW.BIG5 BIG5"
+       echo "zh_TW.Big5 BIG5"
+       echo "zh_CN.EUC GB2312"
+       echo "ja_JP.EUC EUC-JP"
+       echo "ja_JP.SJIS SJIS"
+       echo "ja_JP.Shift_JIS SJIS"
+       echo "ko_KR.EUC EUC-KR"
+       ;;
+    beos*)
+       # BeOS has a single locale, and it has UTF-8 encoding.
+       echo "* UTF-8"
+       ;;
+    msdosdjgpp*)
+       # DJGPP 2.03 doesn't have nl_langinfo(CODESET); therefore
+       # localcharset.c falls back to using the full locale name
+       # from the environment variables.
+       echo "#"
+       echo "# The encodings given here may not all be correct."
+       echo "# If you find that the encoding given for your language and"
+       echo "# country is not the one your DOS machine actually uses, just"
+       echo "# correct it in this file, and send a mail to"
+       echo "# Juan Manuel Guerrero <st001906@hrz1.hrz.tu-darmstadt.de>"
+       echo "# and Bruno Haible <haible@clisp.cons.org>."
+       echo "#"
+       echo "C ASCII"
+       # ISO-8859-1 languages
+       echo "ca CP850"
+       echo "ca_ES CP850"
+       echo "da CP865"    # not CP850 ??
+       echo "da_DK CP865" # not CP850 ??
+       echo "de CP850"
+       echo "de_AT CP850"
+       echo "de_CH CP850"
+       echo "de_DE CP850"
+       echo "en CP850"
+       echo "en_AU CP850" # not CP437 ??
+       echo "en_CA CP850"
+       echo "en_GB CP850"
+       echo "en_NZ CP437"
+       echo "en_US CP437"
+       echo "en_ZA CP850" # not CP437 ??
+       echo "es CP850"
+       echo "es_AR CP850"
+       echo "es_BO CP850"
+       echo "es_CL CP850"
+       echo "es_CO CP850"
+       echo "es_CR CP850"
+       echo "es_CU CP850"
+       echo "es_DO CP850"
+       echo "es_EC CP850"
+       echo "es_ES CP850"
+       echo "es_GT CP850"
+       echo "es_HN CP850"
+       echo "es_MX CP850"
+       echo "es_NI CP850"
+       echo "es_PA CP850"
+       echo "es_PY CP850"
+       echo "es_PE CP850"
+       echo "es_SV CP850"
+       echo "es_UY CP850"
+       echo "es_VE CP850"
+       echo "et CP850"
+       echo "et_EE CP850"
+       echo "eu CP850"
+       echo "eu_ES CP850"
+       echo "fi CP850"
+       echo "fi_FI CP850"
+       echo "fr CP850"
+       echo "fr_BE CP850"
+       echo "fr_CA CP850"
+       echo "fr_CH CP850"
+       echo "fr_FR CP850"
+       echo "ga CP850"
+       echo "ga_IE CP850"
+       echo "gd CP850"
+       echo "gd_GB CP850"
+       echo "gl CP850"
+       echo "gl_ES CP850"
+       echo "id CP850"    # not CP437 ??
+       echo "id_ID CP850" # not CP437 ??
+       echo "is CP861"    # not CP850 ??
+       echo "is_IS CP861" # not CP850 ??
+       echo "it CP850"
+       echo "it_CH CP850"
+       echo "it_IT CP850"
+       echo "lt CP775"
+       echo "lt_LT CP775"
+       echo "lv CP775"
+       echo "lv_LV CP775"
+       echo "nb CP865"    # not CP850 ??
+       echo "nb_NO CP865" # not CP850 ??
+       echo "nl CP850"
+       echo "nl_BE CP850"
+       echo "nl_NL CP850"
+       echo "nn CP865"    # not CP850 ??
+       echo "nn_NO CP865" # not CP850 ??
+       echo "no CP865"    # not CP850 ??
+       echo "no_NO CP865" # not CP850 ??
+       echo "pt CP850"
+       echo "pt_BR CP850"
+       echo "pt_PT CP850"
+       echo "sv CP850"
+       echo "sv_SE CP850"
+       # ISO-8859-2 languages
+       echo "cs CP852"
+       echo "cs_CZ CP852"
+       echo "hr CP852"
+       echo "hr_HR CP852"
+       echo "hu CP852"
+       echo "hu_HU CP852"
+       echo "pl CP852"
+       echo "pl_PL CP852"
+       echo "ro CP852"
+       echo "ro_RO CP852"
+       echo "sk CP852"
+       echo "sk_SK CP852"
+       echo "sl CP852"
+       echo "sl_SI CP852"
+       echo "sq CP852"
+       echo "sq_AL CP852"
+       echo "sr CP852"    # CP852 or CP866 or CP855 ??
+       echo "sr_YU CP852" # CP852 or CP866 or CP855 ??
+       # ISO-8859-3 languages
+       echo "mt CP850"
+       echo "mt_MT CP850"
+       # ISO-8859-5 languages
+       echo "be CP866"
+       echo "be_BE CP866"
+       echo "bg CP866"    # not CP855 ??
+       echo "bg_BG CP866" # not CP855 ??
+       echo "mk CP866"    # not CP855 ??
+       echo "mk_MK CP866" # not CP855 ??
+       echo "ru KOI8-R"    # not CP866 ??
+       echo "ru_RU KOI8-R" # not CP866 ??
+       # ISO-8859-6 languages
+       echo "ar CP864"
+       echo "ar_AE CP864"
+       echo "ar_DZ CP864"
+       echo "ar_EG CP864"
+       echo "ar_IQ CP864"
+       echo "ar_IR CP864"
+       echo "ar_JO CP864"
+       echo "ar_KW CP864"
+       echo "ar_MA CP864"
+       echo "ar_OM CP864"
+       echo "ar_QA CP864"
+       echo "ar_SA CP864"
+       echo "ar_SY CP864"
+       # ISO-8859-7 languages
+       echo "el CP869"
+       echo "el_GR CP869"
+       # ISO-8859-8 languages
+       echo "he CP862"
+       echo "he_IL CP862"
+       # ISO-8859-9 languages
+       echo "tr CP857"
+       echo "tr_TR CP857"
+       # Japanese
+       echo "ja CP932"
+       echo "ja_JP CP932"
+       # Chinese
+       echo "zh_CN GBK"
+       echo "zh_TW CP950" # not CP938 ??
+       # Korean
+       echo "kr CP949"    # not CP934 ??
+       echo "kr_KR CP949" # not CP934 ??
+       # Thai
+       echo "th CP874"
+       echo "th_TH CP874"
+       # Other
+       echo "eo CP850"
+       echo "eo_EO CP850"
+       ;;
+esac
index c4c7a2c7d148cb172425d61f180d262b28e24902..469e78de7ad1d3aec5e25e991358f25226658b19 100644 (file)
@@ -1,5 +1,5 @@
 /* Implementation of the dcgettext(3) function.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1995-1999, 2000, 2001 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
 # include <config.h>
 #endif
 
-#include <sys/types.h>
-
-#ifdef __GNUC__
-# define alloca __builtin_alloca
-# define HAVE_ALLOCA 1
-#else
-# if defined HAVE_ALLOCA_H || defined _LIBC
-#  include <alloca.h>
-# else
-#  ifdef _AIX
- #pragma alloca
-#  else
-#   ifndef alloca
-char *alloca ();
-#   endif
-#  endif
-# endif
-#endif
-
-#include <errno.h>
-#ifndef errno
-extern int errno;
-#endif
-#ifndef __set_errno
-# define __set_errno(val) errno = (val)
-#endif
-
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#else
-char *getenv ();
-# ifdef HAVE_MALLOC_H
-#  include <malloc.h>
-# else
-void free ();
-# endif
-#endif
-
-#if defined HAVE_STRING_H || defined _LIBC
-# ifndef _GNU_SOURCE
-#  define _GNU_SOURCE  1
-# endif
-# include <string.h>
-#else
-# include <strings.h>
-#endif
-#if !HAVE_STRCHR && !defined _LIBC
-# ifndef strchr
-#  define strchr index
-# endif
-#endif
-
-#if defined HAVE_UNISTD_H || defined _LIBC
-# include <unistd.h>
-#endif
-
-#include "gettext.h"
 #include "gettextP.h"
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include "libgettext.h"
+# include "libgnuintl.h"
 #endif
-#include "hash-string.h"
 
 /* @@ end of prolog @@ */
 
-#ifdef _LIBC
-/* Rename the non ANSI C functions.  This is required by the standard
-   because some ANSI C functions will require linking with this object
-   file and the name space must not be polluted.  */
-# define getcwd __getcwd
-# ifndef stpcpy
-#  define stpcpy __stpcpy
-# endif
-#else
-# if !defined HAVE_GETCWD
-char *getwd ();
-#  define getcwd(buf, max) getwd (buf)
-# else
-char *getcwd ();
-# endif
-# ifndef HAVE_STPCPY
-static char *stpcpy PARAMS ((char *dest, const char *src));
-# endif
-#endif
-
-/* Amount to increase buffer size by in each try.  */
-#define PATH_INCR 32
-
-/* The following is from pathmax.h.  */
-/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define
-   PATH_MAX but might cause redefinition warnings when sys/param.h is
-   later included (as on MORE/BSD 4.3).  */
-#if defined(_POSIX_VERSION) || (defined(HAVE_LIMITS_H) && !defined(__GNUC__))
-# include <limits.h>
-#endif
-
-#ifndef _POSIX_PATH_MAX
-# define _POSIX_PATH_MAX 255
-#endif
-
-#if !defined(PATH_MAX) && defined(_PC_PATH_MAX)
-# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX))
-#endif
-
-/* Don't include sys/param.h if it already has been.  */
-#if defined(HAVE_SYS_PARAM_H) && !defined(PATH_MAX) && !defined(MAXPATHLEN)
-# include <sys/param.h>
-#endif
-
-#if !defined(PATH_MAX) && defined(MAXPATHLEN)
-# define PATH_MAX MAXPATHLEN
-#endif
-
-#ifndef PATH_MAX
-# define PATH_MAX _POSIX_PATH_MAX
-#endif
-
-/* XPG3 defines the result of `setlocale (category, NULL)' as:
-   ``Directs `setlocale()' to query `category' and return the current
-     setting of `local'.''
-   However it does not specify the exact format.  And even worse: POSIX
-   defines this not at all.  So we can use this feature only on selected
-   system (e.g. those using GNU C Library).  */
-#ifdef _LIBC
-# define HAVE_LOCALE_NULL
-#endif
-
-/* Name of the default domain used for gettext(3) prior any call to
-   textdomain(3).  The default value for this is "messages".  */
-const char _nl_default_default_domain[] = "messages";
-
-/* Value used as the default domain for gettext(3).  */
-const char *_nl_current_default_domain = _nl_default_default_domain;
-
-/* Contains the default location of the message catalogs.  */
-const char _nl_default_dirname[] = GNULOCALEDIR;
-
-/* List with bindings of specific domains created by bindtextdomain()
-   calls.  */
-struct binding *_nl_domain_bindings;
-
-/* Prototypes for local functions.  */
-static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file,
-                              const char *msgid)) internal_function;
-static const char *category_to_name PARAMS ((int category)) internal_function;
-static const char *guess_category_value PARAMS ((int category,
-                                                const char *categoryname))
-     internal_function;
-
-
-/* For those loosing systems which don't have `alloca' we have to add
-   some additional code emulating it.  */
-#ifdef HAVE_ALLOCA
-/* Nothing has to be done.  */
-# define ADD_BLOCK(list, address) /* nothing */
-# define FREE_BLOCKS(list) /* nothing */
-#else
-struct block_list
-{
-  void *address;
-  struct block_list *next;
-};
-# define ADD_BLOCK(list, addr)                                               \
-  do {                                                                       \
-    struct block_list *newp = (struct block_list *) malloc (sizeof (*newp));  \
-    /* If we cannot get a free block we cannot add the new element to        \
-       the list.  */                                                         \
-    if (newp != NULL) {                                                              \
-      newp->address = (addr);                                                \
-      newp->next = (list);                                                   \
-      (list) = newp;                                                         \
-    }                                                                        \
-  } while (0)
-# define FREE_BLOCKS(list)                                                   \
-  do {                                                                       \
-    while (list != NULL) {                                                   \
-      struct block_list *old = list;                                         \
-      list = list->next;                                                     \
-      free (old);                                                            \
-    }                                                                        \
-  } while (0)
-# undef alloca
-# define alloca(size) (malloc (size))
-#endif /* have alloca */
-
-
 /* Names for the libintl functions are a problem.  They must not clash
    with existing names and they should follow ANSI C.  But this source
    code is also used in GNU C Library where the names have a __
    prefix.  So we have to make a difference here.  */
 #ifdef _LIBC
 # define DCGETTEXT __dcgettext
+# define DCIGETTEXT __dcigettext
 #else
 # define DCGETTEXT dcgettext__
+# define DCIGETTEXT dcigettext__
 #endif
 
 /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
@@ -225,400 +48,10 @@ DCGETTEXT (domainname, msgid, category)
      const char *msgid;
      int category;
 {
-#ifndef HAVE_ALLOCA
-  struct block_list *block_list = NULL;
-#endif
-  struct loaded_l10nfile *domain;
-  struct binding *binding;
-  const char *categoryname;
-  const char *categoryvalue;
-  char *dirname, *xdomainname;
-  char *single_locale;
-  char *retval;
-  int saved_errno = errno;
-
-  /* If no real MSGID is given return NULL.  */
-  if (msgid == NULL)
-    return NULL;
-
-  /* If DOMAINNAME is NULL, we are interested in the default domain.  If
-     CATEGORY is not LC_MESSAGES this might not make much sense but the
-     defintion left this undefined.  */
-  if (domainname == NULL)
-    domainname = _nl_current_default_domain;
-
-  /* First find matching binding.  */
-  for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)
-    {
-      int compare = strcmp (domainname, binding->domainname);
-      if (compare == 0)
-       /* We found it!  */
-       break;
-      if (compare < 0)
-       {
-         /* It is not in the list.  */
-         binding = NULL;
-         break;
-       }
-    }
-
-  if (binding == NULL)
-    dirname = (char *) _nl_default_dirname;
-  else if (binding->dirname[0] == '/')
-    dirname = binding->dirname;
-  else
-    {
-      /* We have a relative path.  Make it absolute now.  */
-      size_t dirname_len = strlen (binding->dirname) + 1;
-      size_t path_max;
-      char *ret;
-
-      path_max = (unsigned) PATH_MAX;
-      path_max += 2;           /* The getcwd docs say to do this.  */
-
-      dirname = (char *) alloca (path_max + dirname_len);
-      ADD_BLOCK (block_list, dirname);
-
-      __set_errno (0);
-      while ((ret = getcwd (dirname, path_max)) == NULL && errno == ERANGE)
-       {
-         path_max += PATH_INCR;
-         dirname = (char *) alloca (path_max + dirname_len);
-         ADD_BLOCK (block_list, dirname);
-         __set_errno (0);
-       }
-
-      if (ret == NULL)
-       {
-         /* We cannot get the current working directory.  Don't signal an
-            error but simply return the default string.  */
-         FREE_BLOCKS (block_list);
-         __set_errno (saved_errno);
-         return (char *) msgid;
-       }
-
-      stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname);
-    }
-
-  /* Now determine the symbolic name of CATEGORY and its value.  */
-  categoryname = category_to_name (category);
-  categoryvalue = guess_category_value (category, categoryname);
-
-  xdomainname = (char *) alloca (strlen (categoryname)
-                                + strlen (domainname) + 5);
-  ADD_BLOCK (block_list, xdomainname);
-
-  stpcpy (stpcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"),
-                 domainname),
-         ".mo");
-
-  /* Creating working area.  */
-  single_locale = (char *) alloca (strlen (categoryvalue) + 1);
-  ADD_BLOCK (block_list, single_locale);
-
-
-  /* Search for the given string.  This is a loop because we perhaps
-     got an ordered list of languages to consider for th translation.  */
-  while (1)
-    {
-      /* Make CATEGORYVALUE point to the next element of the list.  */
-      while (categoryvalue[0] != '\0' && categoryvalue[0] == ':')
-       ++categoryvalue;
-      if (categoryvalue[0] == '\0')
-       {
-         /* The whole contents of CATEGORYVALUE has been searched but
-            no valid entry has been found.  We solve this situation
-            by implicitly appending a "C" entry, i.e. no translation
-            will take place.  */
-         single_locale[0] = 'C';
-         single_locale[1] = '\0';
-       }
-      else
-       {
-         char *cp = single_locale;
-         while (categoryvalue[0] != '\0' && categoryvalue[0] != ':')
-           *cp++ = *categoryvalue++;
-         *cp = '\0';
-       }
-
-      /* If the current locale value is C (or POSIX) we don't load a
-        domain.  Return the MSGID.  */
-      if (strcmp (single_locale, "C") == 0
-         || strcmp (single_locale, "POSIX") == 0)
-       {
-         FREE_BLOCKS (block_list);
-         __set_errno (saved_errno);
-         return (char *) msgid;
-       }
-
-
-      /* Find structure describing the message catalog matching the
-        DOMAINNAME and CATEGORY.  */
-      domain = _nl_find_domain (dirname, single_locale, xdomainname);
-
-      if (domain != NULL)
-       {
-         retval = find_msg (domain, msgid);
-
-         if (retval == NULL)
-           {
-             int cnt;
-
-             for (cnt = 0; domain->successor[cnt] != NULL; ++cnt)
-               {
-                 retval = find_msg (domain->successor[cnt], msgid);
-
-                 if (retval != NULL)
-                   break;
-               }
-           }
-
-         if (retval != NULL)
-           {
-             FREE_BLOCKS (block_list);
-             __set_errno (saved_errno);
-             return retval;
-           }
-       }
-    }
-  /* NOTREACHED */
+  return DCIGETTEXT (domainname, msgid, NULL, 0, 0, category);
 }
 
 #ifdef _LIBC
 /* Alias for function name in GNU C Library.  */
 weak_alias (__dcgettext, dcgettext);
 #endif
-
-
-static char *
-internal_function
-find_msg (domain_file, msgid)
-     struct loaded_l10nfile *domain_file;
-     const char *msgid;
-{
-  size_t top, act, bottom;
-  struct loaded_domain *domain;
-
-  if (domain_file->decided == 0)
-    _nl_load_domain (domain_file);
-
-  if (domain_file->data == NULL)
-    return NULL;
-
-  domain = (struct loaded_domain *) domain_file->data;
-
-  /* Locate the MSGID and its translation.  */
-  if (domain->hash_size > 2 && domain->hash_tab != NULL)
-    {
-      /* Use the hashing table.  */
-      nls_uint32 len = strlen (msgid);
-      nls_uint32 hash_val = hash_string (msgid);
-      nls_uint32 idx = hash_val % domain->hash_size;
-      nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2));
-      nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]);
-
-      if (nstr == 0)
-       /* Hash table entry is empty.  */
-       return NULL;
-
-      if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len
-         && strcmp (msgid,
-                    domain->data + W (domain->must_swap,
-                                      domain->orig_tab[nstr - 1].offset)) == 0)
-       return (char *) domain->data + W (domain->must_swap,
-                                         domain->trans_tab[nstr - 1].offset);
-
-      while (1)
-       {
-         if (idx >= domain->hash_size - incr)
-           idx -= domain->hash_size - incr;
-         else
-           idx += incr;
-
-         nstr = W (domain->must_swap, domain->hash_tab[idx]);
-         if (nstr == 0)
-           /* Hash table entry is empty.  */
-           return NULL;
-
-         if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len
-             && strcmp (msgid,
-                        domain->data + W (domain->must_swap,
-                                          domain->orig_tab[nstr - 1].offset))
-                == 0)
-           return (char *) domain->data
-             + W (domain->must_swap, domain->trans_tab[nstr - 1].offset);
-       }
-      /* NOTREACHED */
-    }
-
-  /* Now we try the default method:  binary search in the sorted
-     array of messages.  */
-  bottom = 0;
-  top = domain->nstrings;
-  while (bottom < top)
-    {
-      int cmp_val;
-
-      act = (bottom + top) / 2;
-      cmp_val = strcmp (msgid, domain->data
-                              + W (domain->must_swap,
-                                   domain->orig_tab[act].offset));
-      if (cmp_val < 0)
-       top = act;
-      else if (cmp_val > 0)
-       bottom = act + 1;
-      else
-       break;
-    }
-
-  /* If an translation is found return this.  */
-  return bottom >= top ? NULL : (char *) domain->data
-                                + W (domain->must_swap,
-                                    domain->trans_tab[act].offset);
-}
-
-
-/* Return string representation of locale CATEGORY.  */
-static const char *
-internal_function
-category_to_name (category)
-     int category;
-{
-  const char *retval;
-
-  switch (category)
-  {
-#ifdef LC_COLLATE
-  case LC_COLLATE:
-    retval = "LC_COLLATE";
-    break;
-#endif
-#ifdef LC_CTYPE
-  case LC_CTYPE:
-    retval = "LC_CTYPE";
-    break;
-#endif
-#ifdef LC_MONETARY
-  case LC_MONETARY:
-    retval = "LC_MONETARY";
-    break;
-#endif
-#ifdef LC_NUMERIC
-  case LC_NUMERIC:
-    retval = "LC_NUMERIC";
-    break;
-#endif
-#ifdef LC_TIME
-  case LC_TIME:
-    retval = "LC_TIME";
-    break;
-#endif
-#ifdef LC_MESSAGES
-  case LC_MESSAGES:
-    retval = "LC_MESSAGES";
-    break;
-#endif
-#ifdef LC_RESPONSE
-  case LC_RESPONSE:
-    retval = "LC_RESPONSE";
-    break;
-#endif
-#ifdef LC_ALL
-  case LC_ALL:
-    /* This might not make sense but is perhaps better than any other
-       value.  */
-    retval = "LC_ALL";
-    break;
-#endif
-  default:
-    /* If you have a better idea for a default value let me know.  */
-    retval = "LC_XXX";
-  }
-
-  return retval;
-}
-
-/* Guess value of current locale from value of the environment variables.  */
-static const char *
-internal_function
-guess_category_value (category, categoryname)
-     int category;
-     const char *categoryname;
-{
-  const char *retval;
-
-  /* The highest priority value is the `LANGUAGE' environment
-     variable.  This is a GNU extension.  */
-  retval = getenv ("LANGUAGE");
-  if (retval != NULL && retval[0] != '\0')
-    return retval;
-
-  /* `LANGUAGE' is not set.  So we have to proceed with the POSIX
-     methods of looking to `LC_ALL', `LC_xxx', and `LANG'.  On some
-     systems this can be done by the `setlocale' function itself.  */
-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL
-  return setlocale (category, NULL);
-#else
-  /* Setting of LC_ALL overwrites all other.  */
-  retval = getenv ("LC_ALL");
-  if (retval != NULL && retval[0] != '\0')
-    return retval;
-
-  /* Next comes the name of the desired category.  */
-  retval = getenv (categoryname);
-  if (retval != NULL && retval[0] != '\0')
-    return retval;
-
-  /* Last possibility is the LANG environment variable.  */
-  retval = getenv ("LANG");
-  if (retval != NULL && retval[0] != '\0')
-    return retval;
-
-  /* We use C as the default domain.  POSIX says this is implementation
-     defined.  */
-  return "C";
-#endif
-}
-
-/* @@ begin of epilog @@ */
-
-/* We don't want libintl.a to depend on any other library.  So we
-   avoid the non-standard function stpcpy.  In GNU C Library this
-   function is available, though.  Also allow the symbol HAVE_STPCPY
-   to be defined.  */
-#if !_LIBC && !HAVE_STPCPY
-static char *
-stpcpy (dest, src)
-     char *dest;
-     const char *src;
-{
-  while ((*dest++ = *src++) != '\0')
-    /* Do nothing. */ ;
-  return dest - 1;
-}
-#endif
-
-
-#ifdef _LIBC
-/* If we want to free all resources we have to do some work at
-   program's end.  */
-static void __attribute__ ((unused))
-free_mem (void)
-{
-  struct binding *runp;
-
-  for (runp = _nl_domain_bindings; runp != NULL; runp = runp->next)
-    {
-      free (runp->domainname);
-      if (runp->dirname != _nl_default_dirname)
-       /* Yes, this is a pointer comparison.  */
-       free (runp->dirname);
-    }
-
-  if (_nl_current_default_domain != _nl_default_default_domain)
-    /* Yes, again a pointer comparison.  */
-    free ((char *) _nl_current_default_domain);
-}
-
-text_set_element (__libc_subfreeres, free_mem);
-#endif
diff --git a/intl/dcigettext.c b/intl/dcigettext.c
new file mode 100644 (file)
index 0000000..8456550
--- /dev/null
@@ -0,0 +1,1257 @@
+/* Implementation of the internal dcigettext function.
+   Copyright (C) 1995-1999, 2000, 2001 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
+   the Free Software Foundation; either version 2, 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.  */
+
+/* Tell glibc's <string.h> to provide a prototype for mempcpy().
+   This must come before <config.h> because <config.h> may include
+   <features.h>, and once <features.h> has been included, it's too late.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE   1
+#endif
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <sys/types.h>
+
+#ifdef __GNUC__
+# define alloca __builtin_alloca
+# define HAVE_ALLOCA 1
+#else
+# if defined HAVE_ALLOCA_H || defined _LIBC
+#  include <alloca.h>
+# else
+#  ifdef _AIX
+ #pragma alloca
+#  else
+#   ifndef alloca
+char *alloca ();
+#   endif
+#  endif
+# endif
+#endif
+
+#include <errno.h>
+#ifndef errno
+extern int errno;
+#endif
+#ifndef __set_errno
+# define __set_errno(val) errno = (val)
+#endif
+
+#include <stddef.h>
+#include <stdlib.h>
+
+#include <string.h>
+#if !HAVE_STRCHR && !defined _LIBC
+# ifndef strchr
+#  define strchr index
+# endif
+#endif
+
+#if defined HAVE_UNISTD_H || defined _LIBC
+# include <unistd.h>
+#endif
+
+#include <locale.h>
+
+#if defined HAVE_SYS_PARAM_H || defined _LIBC
+# include <sys/param.h>
+#endif
+
+#include "gettextP.h"
+#ifdef _LIBC
+# include <libintl.h>
+#else
+# include "libgnuintl.h"
+#endif
+#include "hash-string.h"
+
+/* Thread safetyness.  */
+#ifdef _LIBC
+# include <bits/libc-lock.h>
+#else
+/* Provide dummy implementation if this is outside glibc.  */
+# define __libc_lock_define_initialized(CLASS, NAME)
+# define __libc_lock_lock(NAME)
+# define __libc_lock_unlock(NAME)
+# define __libc_rwlock_define_initialized(CLASS, NAME)
+# define __libc_rwlock_rdlock(NAME)
+# define __libc_rwlock_unlock(NAME)
+#endif
+
+/* Alignment of types.  */
+#if defined __GNUC__ && __GNUC__ >= 2
+# define alignof(TYPE) __alignof__ (TYPE)
+#else
+# define alignof(TYPE) \
+    ((int) &((struct { char dummy1; TYPE dummy2; } *) 0)->dummy2)
+#endif
+
+/* The internal variables in the standalone libintl.a must have different
+   names than the internal variables in GNU libc, otherwise programs
+   using libintl.a cannot be linked statically.  */
+#if !defined _LIBC
+# define _nl_default_default_domain _nl_default_default_domain__
+# define _nl_current_default_domain _nl_current_default_domain__
+# define _nl_default_dirname _nl_default_dirname__
+# define _nl_domain_bindings _nl_domain_bindings__
+#endif
+
+/* Some compilers, like SunOS4 cc, don't have offsetof in <stddef.h>.  */
+#ifndef offsetof
+# define offsetof(type,ident) ((size_t)&(((type*)0)->ident))
+#endif
+
+/* @@ end of prolog @@ */
+
+#ifdef _LIBC
+/* Rename the non ANSI C functions.  This is required by the standard
+   because some ANSI C functions will require linking with this object
+   file and the name space must not be polluted.  */
+# define getcwd __getcwd
+# ifndef stpcpy
+#  define stpcpy __stpcpy
+# endif
+# define tfind __tfind
+#else
+# if !defined HAVE_GETCWD
+char *getwd ();
+#  define getcwd(buf, max) getwd (buf)
+# else
+char *getcwd ();
+# endif
+# ifndef HAVE_STPCPY
+static char *stpcpy PARAMS ((char *dest, const char *src));
+# endif
+# ifndef HAVE_MEMPCPY
+static void *mempcpy PARAMS ((void *dest, const void *src, size_t n));
+# endif
+#endif
+
+/* Amount to increase buffer size by in each try.  */
+#define PATH_INCR 32
+
+/* The following is from pathmax.h.  */
+/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define
+   PATH_MAX but might cause redefinition warnings when sys/param.h is
+   later included (as on MORE/BSD 4.3).  */
+#if defined _POSIX_VERSION || (defined HAVE_LIMITS_H && !defined __GNUC__)
+# include <limits.h>
+#endif
+
+#ifndef _POSIX_PATH_MAX
+# define _POSIX_PATH_MAX 255
+#endif
+
+#if !defined PATH_MAX && defined _PC_PATH_MAX
+# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX))
+#endif
+
+/* Don't include sys/param.h if it already has been.  */
+#if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN
+# include <sys/param.h>
+#endif
+
+#if !defined PATH_MAX && defined MAXPATHLEN
+# define PATH_MAX MAXPATHLEN
+#endif
+
+#ifndef PATH_MAX
+# define PATH_MAX _POSIX_PATH_MAX
+#endif
+
+/* Pathname support.
+   ISSLASH(C)           tests whether C is a directory separator character.
+   IS_ABSOLUTE_PATH(P)  tests whether P is an absolute path.  If it is not,
+                        it may be concatenated to a directory pathname.
+   IS_PATH_WITH_DIR(P)  tests whether P contains a directory specification.
+ */
+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__
+  /* Win32, OS/2, DOS */
+# define ISSLASH(C) ((C) == '/' || (C) == '\\')
+# define HAS_DEVICE(P) \
+    ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \
+     && (P)[1] == ':')
+# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P))
+# define IS_PATH_WITH_DIR(P) \
+    (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P))
+#else
+  /* Unix */
+# define ISSLASH(C) ((C) == '/')
+# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0])
+# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL)
+#endif
+
+/* XPG3 defines the result of `setlocale (category, NULL)' as:
+   ``Directs `setlocale()' to query `category' and return the current
+     setting of `local'.''
+   However it does not specify the exact format.  Neither do SUSV2 and
+   ISO C 99.  So we can use this feature only on selected systems (e.g.
+   those using GNU C Library).  */
+#if defined _LIBC || (defined __GNU_LIBRARY__ && __GNU_LIBRARY__ >= 2)
+# define HAVE_LOCALE_NULL
+#endif
+
+/* This is the type used for the search tree where known translations
+   are stored.  */
+struct known_translation_t
+{
+  /* Domain in which to search.  */
+  char *domainname;
+
+  /* The category.  */
+  int category;
+
+  /* State of the catalog counter at the point the string was found.  */
+  int counter;
+
+  /* Catalog where the string was found.  */
+  struct loaded_l10nfile *domain;
+
+  /* And finally the translation.  */
+  const char *translation;
+  size_t translation_length;
+
+  /* Pointer to the string in question.  */
+  char msgid[ZERO];
+};
+
+/* Root of the search tree with known translations.  We can use this
+   only if the system provides the `tsearch' function family.  */
+#if defined HAVE_TSEARCH || defined _LIBC
+# include <search.h>
+
+static void *root;
+
+# ifdef _LIBC
+#  define tsearch __tsearch
+# endif
+
+/* Function to compare two entries in the table of known translations.  */
+static int transcmp PARAMS ((const void *p1, const void *p2));
+static int
+transcmp (p1, p2)
+     const void *p1;
+     const void *p2;
+{
+  const struct known_translation_t *s1;
+  const struct known_translation_t *s2;
+  int result;
+
+  s1 = (const struct known_translation_t *) p1;
+  s2 = (const struct known_translation_t *) p2;
+
+  result = strcmp (s1->msgid, s2->msgid);
+  if (result == 0)
+    {
+      result = strcmp (s1->domainname, s2->domainname);
+      if (result == 0)
+       /* We compare the category last (though this is the cheapest
+          operation) since it is hopefully always the same (namely
+          LC_MESSAGES).  */
+       result = s1->category - s2->category;
+    }
+
+  return result;
+}
+#endif
+
+/* Name of the default domain used for gettext(3) prior any call to
+   textdomain(3).  The default value for this is "messages".  */
+const char _nl_default_default_domain[] = "messages";
+
+/* Value used as the default domain for gettext(3).  */
+const char *_nl_current_default_domain = _nl_default_default_domain;
+
+/* Contains the default location of the message catalogs.  */
+const char _nl_default_dirname[] = LOCALEDIR;
+
+/* List with bindings of specific domains created by bindtextdomain()
+   calls.  */
+struct binding *_nl_domain_bindings;
+
+/* Prototypes for local functions.  */
+static char *plural_lookup PARAMS ((struct loaded_l10nfile *domain,
+                                   unsigned long int n,
+                                   const char *translation,
+                                   size_t translation_len))
+     internal_function;
+static unsigned long int plural_eval PARAMS ((struct expression *pexp,
+                                             unsigned long int n))
+     internal_function;
+static const char *category_to_name PARAMS ((int category)) internal_function;
+static const char *guess_category_value PARAMS ((int category,
+                                                const char *categoryname))
+     internal_function;
+
+
+/* For those loosing systems which don't have `alloca' we have to add
+   some additional code emulating it.  */
+#ifdef HAVE_ALLOCA
+/* Nothing has to be done.  */
+# define ADD_BLOCK(list, address) /* nothing */
+# define FREE_BLOCKS(list) /* nothing */
+#else
+struct block_list
+{
+  void *address;
+  struct block_list *next;
+};
+# define ADD_BLOCK(list, addr)                                               \
+  do {                                                                       \
+    struct block_list *newp = (struct block_list *) malloc (sizeof (*newp));  \
+    /* If we cannot get a free block we cannot add the new element to        \
+       the list.  */                                                         \
+    if (newp != NULL) {                                                              \
+      newp->address = (addr);                                                \
+      newp->next = (list);                                                   \
+      (list) = newp;                                                         \
+    }                                                                        \
+  } while (0)
+# define FREE_BLOCKS(list)                                                   \
+  do {                                                                       \
+    while (list != NULL) {                                                   \
+      struct block_list *old = list;                                         \
+      list = list->next;                                                     \
+      free (old);                                                            \
+    }                                                                        \
+  } while (0)
+# undef alloca
+# define alloca(size) (malloc (size))
+#endif /* have alloca */
+
+
+#ifdef _LIBC
+/* List of blocks allocated for translations.  */
+typedef struct transmem_list
+{
+  struct transmem_list *next;
+  char data[ZERO];
+} transmem_block_t;
+static struct transmem_list *transmem_list;
+#else
+typedef unsigned char transmem_block_t;
+#endif
+
+
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define DCIGETTEXT __dcigettext
+#else
+# define DCIGETTEXT dcigettext__
+#endif
+
+/* Lock variable to protect the global data in the gettext implementation.  */
+#ifdef _LIBC
+__libc_rwlock_define_initialized (, _nl_state_lock)
+#endif
+
+/* Checking whether the binaries runs SUID must be done and glibc provides
+   easier methods therefore we make a difference here.  */
+#ifdef _LIBC
+# define ENABLE_SECURE __libc_enable_secure
+# define DETERMINE_SECURE
+#else
+# ifndef HAVE_GETUID
+#  define getuid() 0
+# endif
+# ifndef HAVE_GETGID
+#  define getgid() 0
+# endif
+# ifndef HAVE_GETEUID
+#  define geteuid() getuid()
+# endif
+# ifndef HAVE_GETEGID
+#  define getegid() getgid()
+# endif
+static int enable_secure;
+# define ENABLE_SECURE (enable_secure == 1)
+# define DETERMINE_SECURE \
+  if (enable_secure == 0)                                                    \
+    {                                                                        \
+      if (getuid () != geteuid () || getgid () != getegid ())                \
+       enable_secure = 1;                                                    \
+      else                                                                   \
+       enable_secure = -1;                                                   \
+    }
+#endif
+
+/* Look up MSGID in the DOMAINNAME message catalog for the current
+   CATEGORY locale and, if PLURAL is nonzero, search over string
+   depending on the plural form determined by N.  */
+char *
+DCIGETTEXT (domainname, msgid1, msgid2, plural, n, category)
+     const char *domainname;
+     const char *msgid1;
+     const char *msgid2;
+     int plural;
+     unsigned long int n;
+     int category;
+{
+#ifndef HAVE_ALLOCA
+  struct block_list *block_list = NULL;
+#endif
+  struct loaded_l10nfile *domain;
+  struct binding *binding;
+  const char *categoryname;
+  const char *categoryvalue;
+  char *dirname, *xdomainname;
+  char *single_locale;
+  char *retval;
+  size_t retlen;
+  int saved_errno;
+#if defined HAVE_TSEARCH || defined _LIBC
+  struct known_translation_t *search;
+  struct known_translation_t **foundp = NULL;
+  size_t msgid_len;
+#endif
+  size_t domainname_len;
+
+  /* If no real MSGID is given return NULL.  */
+  if (msgid1 == NULL)
+    return NULL;
+
+  __libc_rwlock_rdlock (_nl_state_lock);
+
+  /* If DOMAINNAME is NULL, we are interested in the default domain.  If
+     CATEGORY is not LC_MESSAGES this might not make much sense but the
+     definition left this undefined.  */
+  if (domainname == NULL)
+    domainname = _nl_current_default_domain;
+
+#if defined HAVE_TSEARCH || defined _LIBC
+  msgid_len = strlen (msgid1) + 1;
+
+  /* Try to find the translation among those which we found at
+     some time.  */
+  search = (struct known_translation_t *)
+          alloca (offsetof (struct known_translation_t, msgid) + msgid_len);
+  memcpy (search->msgid, msgid1, msgid_len);
+  search->domainname = (char *) domainname;
+  search->category = category;
+
+  foundp = (struct known_translation_t **) tfind (search, &root, transcmp);
+  if (foundp != NULL && (*foundp)->counter == _nl_msg_cat_cntr)
+    {
+      /* Now deal with plural.  */
+      if (plural)
+       retval = plural_lookup ((*foundp)->domain, n, (*foundp)->translation,
+                               (*foundp)->translation_length);
+      else
+       retval = (char *) (*foundp)->translation;
+
+      __libc_rwlock_unlock (_nl_state_lock);
+      return retval;
+    }
+#endif
+
+  /* Preserve the `errno' value.  */
+  saved_errno = errno;
+
+  /* See whether this is a SUID binary or not.  */
+  DETERMINE_SECURE;
+
+  /* First find matching binding.  */
+  for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next)
+    {
+      int compare = strcmp (domainname, binding->domainname);
+      if (compare == 0)
+       /* We found it!  */
+       break;
+      if (compare < 0)
+       {
+         /* It is not in the list.  */
+         binding = NULL;
+         break;
+       }
+    }
+
+  if (binding == NULL)
+    dirname = (char *) _nl_default_dirname;
+  else if (IS_ABSOLUTE_PATH (binding->dirname))
+    dirname = binding->dirname;
+  else
+    {
+      /* We have a relative path.  Make it absolute now.  */
+      size_t dirname_len = strlen (binding->dirname) + 1;
+      size_t path_max;
+      char *ret;
+
+      path_max = (unsigned int) PATH_MAX;
+      path_max += 2;           /* The getcwd docs say to do this.  */
+
+      for (;;)
+       {
+         dirname = (char *) alloca (path_max + dirname_len);
+         ADD_BLOCK (block_list, dirname);
+
+         __set_errno (0);
+         ret = getcwd (dirname, path_max);
+         if (ret != NULL || errno != ERANGE)
+           break;
+
+         path_max += path_max / 2;
+         path_max += PATH_INCR;
+       }
+
+      if (ret == NULL)
+       {
+         /* We cannot get the current working directory.  Don't signal an
+            error but simply return the default string.  */
+         FREE_BLOCKS (block_list);
+         __set_errno (saved_errno);
+         return (plural == 0
+                 ? (char *) msgid1
+                 /* Use the Germanic plural rule.  */
+                 : n == 1 ? (char *) msgid1 : (char *) msgid2);
+       }
+
+      stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname);
+    }
+
+  /* Now determine the symbolic name of CATEGORY and its value.  */
+  categoryname = category_to_name (category);
+  categoryvalue = guess_category_value (category, categoryname);
+
+  domainname_len = strlen (domainname);
+  xdomainname = (char *) alloca (strlen (categoryname)
+                                + domainname_len + 5);
+  ADD_BLOCK (block_list, xdomainname);
+
+  stpcpy (mempcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"),
+                 domainname, domainname_len),
+         ".mo");
+
+  /* Creating working area.  */
+  single_locale = (char *) alloca (strlen (categoryvalue) + 1);
+  ADD_BLOCK (block_list, single_locale);
+
+
+  /* Search for the given string.  This is a loop because we perhaps
+     got an ordered list of languages to consider for the translation.  */
+  while (1)
+    {
+      /* Make CATEGORYVALUE point to the next element of the list.  */
+      while (categoryvalue[0] != '\0' && categoryvalue[0] == ':')
+       ++categoryvalue;
+      if (categoryvalue[0] == '\0')
+       {
+         /* The whole contents of CATEGORYVALUE has been searched but
+            no valid entry has been found.  We solve this situation
+            by implicitly appending a "C" entry, i.e. no translation
+            will take place.  */
+         single_locale[0] = 'C';
+         single_locale[1] = '\0';
+       }
+      else
+       {
+         char *cp = single_locale;
+         while (categoryvalue[0] != '\0' && categoryvalue[0] != ':')
+           *cp++ = *categoryvalue++;
+         *cp = '\0';
+
+         /* When this is a SUID binary we must not allow accessing files
+            outside the dedicated directories.  */
+         if (ENABLE_SECURE && IS_PATH_WITH_DIR (single_locale))
+           /* Ingore this entry.  */
+           continue;
+       }
+
+      /* If the current locale value is C (or POSIX) we don't load a
+        domain.  Return the MSGID.  */
+      if (strcmp (single_locale, "C") == 0
+         || strcmp (single_locale, "POSIX") == 0)
+       {
+         FREE_BLOCKS (block_list);
+         __libc_rwlock_unlock (_nl_state_lock);
+         __set_errno (saved_errno);
+         return (plural == 0
+                 ? (char *) msgid1
+                 /* Use the Germanic plural rule.  */
+                 : n == 1 ? (char *) msgid1 : (char *) msgid2);
+       }
+
+
+      /* Find structure describing the message catalog matching the
+        DOMAINNAME and CATEGORY.  */
+      domain = _nl_find_domain (dirname, single_locale, xdomainname, binding);
+
+      if (domain != NULL)
+       {
+         retval = _nl_find_msg (domain, binding, msgid1, &retlen);
+
+         if (retval == NULL)
+           {
+             int cnt;
+
+             for (cnt = 0; domain->successor[cnt] != NULL; ++cnt)
+               {
+                 retval = _nl_find_msg (domain->successor[cnt], binding,
+                                        msgid1, &retlen);
+
+                 if (retval != NULL)
+                   {
+                     domain = domain->successor[cnt];
+                     break;
+                   }
+               }
+           }
+
+         if (retval != NULL)
+           {
+             /* Found the translation of MSGID1 in domain DOMAIN:
+                starting at RETVAL, RETLEN bytes.  */
+             FREE_BLOCKS (block_list);
+             __set_errno (saved_errno);
+#if defined HAVE_TSEARCH || defined _LIBC
+             if (foundp == NULL)
+               {
+                 /* Create a new entry and add it to the search tree.  */
+                 struct known_translation_t *newp;
+
+                 newp = (struct known_translation_t *)
+                   malloc (offsetof (struct known_translation_t, msgid)
+                           + msgid_len + domainname_len + 1);
+                 if (newp != NULL)
+                   {
+                     newp->domainname =
+                       mempcpy (newp->msgid, msgid1, msgid_len);
+                     memcpy (newp->domainname, domainname, domainname_len + 1);
+                     newp->category = category;
+                     newp->counter = _nl_msg_cat_cntr;
+                     newp->domain = domain;
+                     newp->translation = retval;
+                     newp->translation_length = retlen;
+
+                     /* Insert the entry in the search tree.  */
+                     foundp = (struct known_translation_t **)
+                       tsearch (newp, &root, transcmp);
+                     if (foundp == NULL
+                         || __builtin_expect (*foundp != newp, 0))
+                       /* The insert failed.  */
+                       free (newp);
+                   }
+               }
+             else
+               {
+                 /* We can update the existing entry.  */
+                 (*foundp)->counter = _nl_msg_cat_cntr;
+                 (*foundp)->domain = domain;
+                 (*foundp)->translation = retval;
+                 (*foundp)->translation_length = retlen;
+               }
+#endif
+             /* Now deal with plural.  */
+             if (plural)
+               retval = plural_lookup (domain, n, retval, retlen);
+
+             __libc_rwlock_unlock (_nl_state_lock);
+             return retval;
+           }
+       }
+    }
+  /* NOTREACHED */
+}
+
+
+char *
+internal_function
+_nl_find_msg (domain_file, domainbinding, msgid, lengthp)
+     struct loaded_l10nfile *domain_file;
+     struct binding *domainbinding;
+     const char *msgid;
+     size_t *lengthp;
+{
+  struct loaded_domain *domain;
+  size_t act;
+  char *result;
+  size_t resultlen;
+
+  if (domain_file->decided == 0)
+    _nl_load_domain (domain_file, domainbinding);
+
+  if (domain_file->data == NULL)
+    return NULL;
+
+  domain = (struct loaded_domain *) domain_file->data;
+
+  /* Locate the MSGID and its translation.  */
+  if (domain->hash_size > 2 && domain->hash_tab != NULL)
+    {
+      /* Use the hashing table.  */
+      nls_uint32 len = strlen (msgid);
+      nls_uint32 hash_val = hash_string (msgid);
+      nls_uint32 idx = hash_val % domain->hash_size;
+      nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2));
+
+      while (1)
+       {
+         nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]);
+
+         if (nstr == 0)
+           /* Hash table entry is empty.  */
+           return NULL;
+
+         /* Compare msgid with the original string at index nstr-1.
+            We compare the lengths with >=, not ==, because plural entries
+            are represented by strings with an embedded NUL.  */
+         if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) >= len
+             && (strcmp (msgid,
+                         domain->data + W (domain->must_swap,
+                                           domain->orig_tab[nstr - 1].offset))
+                 == 0))
+           {
+             act = nstr - 1;
+             goto found;
+           }
+
+         if (idx >= domain->hash_size - incr)
+           idx -= domain->hash_size - incr;
+         else
+           idx += incr;
+       }
+      /* NOTREACHED */
+    }
+  else
+    {
+      /* Try the default method:  binary search in the sorted array of
+        messages.  */
+      size_t top, bottom;
+
+      bottom = 0;
+      top = domain->nstrings;
+      while (bottom < top)
+       {
+         int cmp_val;
+
+         act = (bottom + top) / 2;
+         cmp_val = strcmp (msgid, (domain->data
+                                   + W (domain->must_swap,
+                                        domain->orig_tab[act].offset)));
+         if (cmp_val < 0)
+           top = act;
+         else if (cmp_val > 0)
+           bottom = act + 1;
+         else
+           goto found;
+       }
+      /* No translation was found.  */
+      return NULL;
+    }
+
+ found:
+  /* The translation was found at index ACT.  If we have to convert the
+     string to use a different character set, this is the time.  */
+  result = ((char *) domain->data
+           + W (domain->must_swap, domain->trans_tab[act].offset));
+  resultlen = W (domain->must_swap, domain->trans_tab[act].length) + 1;
+
+#if defined _LIBC || HAVE_ICONV
+  if (domain->codeset_cntr
+      != (domainbinding != NULL ? domainbinding->codeset_cntr : 0))
+    {
+      /* The domain's codeset has changed through bind_textdomain_codeset()
+        since the message catalog was initialized or last accessed.  We
+        have to reinitialize the converter.  */
+      _nl_free_domain_conv (domain);
+      _nl_init_domain_conv (domain_file, domain, domainbinding);
+    }
+
+  if (
+# ifdef _LIBC
+      domain->conv != (__gconv_t) -1
+# else
+#  if HAVE_ICONV
+      domain->conv != (iconv_t) -1
+#  endif
+# endif
+      )
+    {
+      /* We are supposed to do a conversion.  First allocate an
+        appropriate table with the same structure as the table
+        of translations in the file, where we can put the pointers
+        to the converted strings in.
+        There is a slight complication with plural entries.  They
+        are represented by consecutive NUL terminated strings.  We
+        handle this case by converting RESULTLEN bytes, including
+        NULs.  */
+
+      if (domain->conv_tab == NULL
+         && ((domain->conv_tab = (char **) calloc (domain->nstrings,
+                                                   sizeof (char *)))
+             == NULL))
+       /* Mark that we didn't succeed allocating a table.  */
+       domain->conv_tab = (char **) -1;
+
+      if (__builtin_expect (domain->conv_tab == (char **) -1, 0))
+       /* Nothing we can do, no more memory.  */
+       goto converted;
+
+      if (domain->conv_tab[act] == NULL)
+       {
+         /* We haven't used this string so far, so it is not
+            translated yet.  Do this now.  */
+         /* We use a bit more efficient memory handling.
+            We allocate always larger blocks which get used over
+            time.  This is faster than many small allocations.   */
+         __libc_lock_define_initialized (static, lock)
+# define INITIAL_BLOCK_SIZE    4080
+         static unsigned char *freemem;
+         static size_t freemem_size;
+
+         const unsigned char *inbuf;
+         unsigned char *outbuf;
+         int malloc_count;
+# ifndef _LIBC
+         transmem_block_t *transmem_list = NULL;
+# endif
+
+         __libc_lock_lock (lock);
+
+         inbuf = (const unsigned char *) result;
+         outbuf = freemem + sizeof (size_t);
+
+         malloc_count = 0;
+         while (1)
+           {
+             transmem_block_t *newmem;
+# ifdef _LIBC
+             size_t non_reversible;
+             int res;
+
+             if (freemem_size < sizeof (size_t))
+               goto resize_freemem;
+
+             res = __gconv (domain->conv,
+                            &inbuf, inbuf + resultlen,
+                            &outbuf,
+                            outbuf + freemem_size - sizeof (size_t),
+                            &non_reversible);
+
+             if (res == __GCONV_OK || res == __GCONV_EMPTY_INPUT)
+               break;
+
+             if (res != __GCONV_FULL_OUTPUT)
+               {
+                 __libc_lock_unlock (lock);
+                 goto converted;
+               }
+
+             inbuf = result;
+# else
+#  if HAVE_ICONV
+             const char *inptr = (const char *) inbuf;
+             size_t inleft = resultlen;
+             char *outptr = (char *) outbuf;
+             size_t outleft;
+
+             if (freemem_size < sizeof (size_t))
+               goto resize_freemem;
+
+             outleft = freemem_size - sizeof (size_t);
+             if (iconv (domain->conv,
+                        (ICONV_CONST char **) &inptr, &inleft,
+                        &outptr, &outleft)
+                 != (size_t) (-1))
+               {
+                 outbuf = (unsigned char *) outptr;
+                 break;
+               }
+             if (errno != E2BIG)
+               {
+                 __libc_lock_unlock (lock);
+                 goto converted;
+               }
+#  endif
+# endif
+
+           resize_freemem:
+             /* We must allocate a new buffer or resize the old one.  */
+             if (malloc_count > 0)
+               {
+                 ++malloc_count;
+                 freemem_size = malloc_count * INITIAL_BLOCK_SIZE;
+                 newmem = (transmem_block_t *) realloc (transmem_list,
+                                                        freemem_size);
+# ifdef _LIBC
+                 if (newmem != NULL)
+                   transmem_list = transmem_list->next;
+                 else
+                   {
+                     struct transmem_list *old = transmem_list;
+
+                     transmem_list = transmem_list->next;
+                     free (old);
+                   }
+# endif
+               }
+             else
+               {
+                 malloc_count = 1;
+                 freemem_size = INITIAL_BLOCK_SIZE;
+                 newmem = (transmem_block_t *) malloc (freemem_size);
+               }
+             if (__builtin_expect (newmem == NULL, 0))
+               {
+                 freemem = NULL;
+                 freemem_size = 0;
+                 __libc_lock_unlock (lock);
+                 goto converted;
+               }
+
+# ifdef _LIBC
+             /* Add the block to the list of blocks we have to free
+                 at some point.  */
+             newmem->next = transmem_list;
+             transmem_list = newmem;
+
+             freemem = newmem->data;
+             freemem_size -= offsetof (struct transmem_list, data);
+# else
+             transmem_list = newmem;
+             freemem = newmem;
+# endif
+
+             outbuf = freemem + sizeof (size_t);
+           }
+
+         /* We have now in our buffer a converted string.  Put this
+            into the table of conversions.  */
+         *(size_t *) freemem = outbuf - freemem - sizeof (size_t);
+         domain->conv_tab[act] = (char *) freemem;
+         /* Shrink freemem, but keep it aligned.  */
+         freemem_size -= outbuf - freemem;
+         freemem = outbuf;
+         freemem += freemem_size & (alignof (size_t) - 1);
+         freemem_size = freemem_size & ~ (alignof (size_t) - 1);
+
+         __libc_lock_unlock (lock);
+       }
+
+      /* Now domain->conv_tab[act] contains the translation of all
+        the plural variants.  */
+      result = domain->conv_tab[act] + sizeof (size_t);
+      resultlen = *(size_t *) domain->conv_tab[act];
+    }
+
+ converted:
+  /* The result string is converted.  */
+
+#endif /* _LIBC || HAVE_ICONV */
+
+  *lengthp = resultlen;
+  return result;
+}
+
+
+/* Look up a plural variant.  */
+static char *
+internal_function
+plural_lookup (domain, n, translation, translation_len)
+     struct loaded_l10nfile *domain;
+     unsigned long int n;
+     const char *translation;
+     size_t translation_len;
+{
+  struct loaded_domain *domaindata = (struct loaded_domain *) domain->data;
+  unsigned long int index;
+  const char *p;
+
+  index = plural_eval (domaindata->plural, n);
+  if (index >= domaindata->nplurals)
+    /* This should never happen.  It means the plural expression and the
+       given maximum value do not match.  */
+    index = 0;
+
+  /* Skip INDEX strings at TRANSLATION.  */
+  p = translation;
+  while (index-- > 0)
+    {
+#ifdef _LIBC
+      p = __rawmemchr (p, '\0');
+#else
+      p = strchr (p, '\0');
+#endif
+      /* And skip over the NUL byte.  */
+      p++;
+
+      if (p >= translation + translation_len)
+       /* This should never happen.  It means the plural expression
+          evaluated to a value larger than the number of variants
+          available for MSGID1.  */
+       return (char *) translation;
+    }
+  return (char *) p;
+}
+
+
+/* Function to evaluate the plural expression and return an index value.  */
+static unsigned long int
+internal_function
+plural_eval (pexp, n)
+     struct expression *pexp;
+     unsigned long int n;
+{
+  switch (pexp->nargs)
+    {
+    case 0:
+      switch (pexp->operation)
+       {
+       case var:
+         return n;
+       case num:
+         return pexp->val.num;
+       default:
+         break;
+       }
+      /* NOTREACHED */
+      break;
+    case 1:
+      {
+       /* pexp->operation must be lnot.  */
+       unsigned long int arg = plural_eval (pexp->val.args[0], n);
+       return ! arg;
+      }
+    case 2:
+      {
+       unsigned long int leftarg = plural_eval (pexp->val.args[0], n);
+       if (pexp->operation == lor)
+         return leftarg || plural_eval (pexp->val.args[1], n);
+       else if (pexp->operation == land)
+         return leftarg && plural_eval (pexp->val.args[1], n);
+       else
+         {
+           unsigned long int rightarg = plural_eval (pexp->val.args[1], n);
+
+           switch (pexp->operation)
+             {
+             case mult:
+               return leftarg * rightarg;
+             case divide:
+               return leftarg / rightarg;
+             case module:
+               return leftarg % rightarg;
+             case plus:
+               return leftarg + rightarg;
+             case minus:
+               return leftarg - rightarg;
+             case less_than:
+               return leftarg < rightarg;
+             case greater_than:
+               return leftarg > rightarg;
+             case less_or_equal:
+               return leftarg <= rightarg;
+             case greater_or_equal:
+               return leftarg >= rightarg;
+             case equal:
+               return leftarg == rightarg;
+             case not_equal:
+               return leftarg != rightarg;
+             default:
+               break;
+             }
+         }
+       /* NOTREACHED */
+       break;
+      }
+    case 3:
+      {
+       /* pexp->operation must be qmop.  */
+       unsigned long int boolarg = plural_eval (pexp->val.args[0], n);
+       return plural_eval (pexp->val.args[boolarg ? 1 : 2], n);
+      }
+    }
+  /* NOTREACHED */
+  return 0;
+}
+
+
+/* Return string representation of locale CATEGORY.  */
+static const char *
+internal_function
+category_to_name (category)
+     int category;
+{
+  const char *retval;
+
+  switch (category)
+  {
+#ifdef LC_COLLATE
+  case LC_COLLATE:
+    retval = "LC_COLLATE";
+    break;
+#endif
+#ifdef LC_CTYPE
+  case LC_CTYPE:
+    retval = "LC_CTYPE";
+    break;
+#endif
+#ifdef LC_MONETARY
+  case LC_MONETARY:
+    retval = "LC_MONETARY";
+    break;
+#endif
+#ifdef LC_NUMERIC
+  case LC_NUMERIC:
+    retval = "LC_NUMERIC";
+    break;
+#endif
+#ifdef LC_TIME
+  case LC_TIME:
+    retval = "LC_TIME";
+    break;
+#endif
+#ifdef LC_MESSAGES
+  case LC_MESSAGES:
+    retval = "LC_MESSAGES";
+    break;
+#endif
+#ifdef LC_RESPONSE
+  case LC_RESPONSE:
+    retval = "LC_RESPONSE";
+    break;
+#endif
+#ifdef LC_ALL
+  case LC_ALL:
+    /* This might not make sense but is perhaps better than any other
+       value.  */
+    retval = "LC_ALL";
+    break;
+#endif
+  default:
+    /* If you have a better idea for a default value let me know.  */
+    retval = "LC_XXX";
+  }
+
+  return retval;
+}
+
+/* Guess value of current locale from value of the environment variables.  */
+static const char *
+internal_function
+guess_category_value (category, categoryname)
+     int category;
+     const char *categoryname;
+{
+  const char *language;
+  const char *retval;
+
+  /* The highest priority value is the `LANGUAGE' environment
+     variable.  But we don't use the value if the currently selected
+     locale is the C locale.  This is a GNU extension.  */
+  language = getenv ("LANGUAGE");
+  if (language != NULL && language[0] == '\0')
+    language = NULL;
+
+  /* We have to proceed with the POSIX methods of looking to `LC_ALL',
+     `LC_xxx', and `LANG'.  On some systems this can be done by the
+     `setlocale' function itself.  */
+#if defined _LIBC || (defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL)
+  retval = setlocale (category, NULL);
+#else
+  /* Setting of LC_ALL overwrites all other.  */
+  retval = getenv ("LC_ALL");
+  if (retval == NULL || retval[0] == '\0')
+    {
+      /* Next comes the name of the desired category.  */
+      retval = getenv (categoryname);
+      if (retval == NULL || retval[0] == '\0')
+       {
+         /* Last possibility is the LANG environment variable.  */
+         retval = getenv ("LANG");
+         if (retval == NULL || retval[0] == '\0')
+           /* We use C as the default domain.  POSIX says this is
+              implementation defined.  */
+           return "C";
+       }
+    }
+#endif
+
+  return language != NULL && strcmp (retval, "C") != 0 ? language : retval;
+}
+
+/* @@ begin of epilog @@ */
+
+/* We don't want libintl.a to depend on any other library.  So we
+   avoid the non-standard function stpcpy.  In GNU C Library this
+   function is available, though.  Also allow the symbol HAVE_STPCPY
+   to be defined.  */
+#if !_LIBC && !HAVE_STPCPY
+static char *
+stpcpy (dest, src)
+     char *dest;
+     const char *src;
+{
+  while ((*dest++ = *src++) != '\0')
+    /* Do nothing. */ ;
+  return dest - 1;
+}
+#endif
+
+#if !_LIBC && !HAVE_MEMPCPY
+static void *
+mempcpy (dest, src, n)
+     void *dest;
+     const void *src;
+     size_t n;
+{
+  return (void *) ((char *) memcpy (dest, src, n) + n);
+}
+#endif
+
+
+#ifdef _LIBC
+/* If we want to free all resources we have to do some work at
+   program's end.  */
+static void __attribute__ ((unused))
+free_mem (void)
+{
+  void *old;
+
+  while (_nl_domain_bindings != NULL)
+    {
+      struct binding *oldp = _nl_domain_bindings;
+      _nl_domain_bindings = _nl_domain_bindings->next;
+      if (oldp->dirname != _nl_default_dirname)
+       /* Yes, this is a pointer comparison.  */
+       free (oldp->dirname);
+      free (oldp->codeset);
+      free (oldp);
+    }
+
+  if (_nl_current_default_domain != _nl_default_default_domain)
+    /* Yes, again a pointer comparison.  */
+    free ((char *) _nl_current_default_domain);
+
+  /* Remove the search tree with the known translations.  */
+  __tdestroy (root, free);
+  root = NULL;
+
+  while (transmem_list != NULL)
+    {
+      old = transmem_list;
+      transmem_list = transmem_list->next;
+      free (old);
+    }
+}
+
+text_set_element (__libc_subfreeres, free_mem);
+#endif
diff --git a/intl/dcngettext.c b/intl/dcngettext.c
new file mode 100644 (file)
index 0000000..e5da257
--- /dev/null
@@ -0,0 +1,59 @@
+/* Implementation of the dcngettext(3) function.
+   Copyright (C) 1995-1999, 2000, 2001 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
+   the Free Software Foundation; either version 2, 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.  */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include "gettextP.h"
+#ifdef _LIBC
+# include <libintl.h>
+#else
+# include "libgnuintl.h"
+#endif
+
+/* @@ end of prolog @@ */
+
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define DCNGETTEXT __dcngettext
+# define DCIGETTEXT __dcigettext
+#else
+# define DCNGETTEXT dcngettext__
+# define DCIGETTEXT dcigettext__
+#endif
+
+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
+   locale.  */
+char *
+DCNGETTEXT (domainname, msgid1, msgid2, n, category)
+     const char *domainname;
+     const char *msgid1;
+     const char *msgid2;
+     unsigned long int n;
+     int category;
+{
+  return DCIGETTEXT (domainname, msgid1, msgid2, 1, n, category);
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library.  */
+weak_alias (__dcngettext, dcngettext);
+#endif
index 0510c2b071f3d59fec5aeb15579979f5c611f4e3..c5130411dca4f01d6010925a5cde6678f6e95257 100644 (file)
@@ -1,5 +1,5 @@
-/* Implementation of the dgettext(3) function
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Implementation of the dgettext(3) function.
+   Copyright (C) 1995-1997, 2000, 2001 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
 # include <config.h>
 #endif
 
-#if defined HAVE_LOCALE_H || defined _LIBC
-# include <locale.h>
-#endif
+#include <locale.h>
 
+#include "gettextP.h"
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include "libgettext.h"
+# include "libgnuintl.h"
 #endif
 
 /* @@ end of prolog @@ */
diff --git a/intl/dngettext.c b/intl/dngettext.c
new file mode 100644 (file)
index 0000000..79aaa9a
--- /dev/null
@@ -0,0 +1,60 @@
+/* Implementation of the dngettext(3) function.
+   Copyright (C) 1995-1997, 2000, 2001 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
+   the Free Software Foundation; either version 2, 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.  */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <locale.h>
+
+#include "gettextP.h"
+#ifdef _LIBC
+# include <libintl.h>
+#else
+# include "libgnuintl.h"
+#endif
+
+/* @@ end of prolog @@ */
+
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define DNGETTEXT __dngettext
+# define DCNGETTEXT __dcngettext
+#else
+# define DNGETTEXT dngettext__
+# define DCNGETTEXT dcngettext__
+#endif
+
+/* Look up MSGID in the DOMAINNAME message catalog of the current
+   LC_MESSAGES locale and skip message according to the plural form.  */
+char *
+DNGETTEXT (domainname, msgid1, msgid2, n)
+     const char *domainname;
+     const char *msgid1;
+     const char *msgid2;
+     unsigned long int n;
+{
+  return DCNGETTEXT (domainname, msgid1, msgid2, n, LC_MESSAGES);
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library.  */
+weak_alias (__dngettext, dngettext);
+#endif
index 8066dc29962f378d782cc6422cab33bd91a9cbca..c4ddcc41a20c4d2ca42d87b69c88484adadf5234 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Copyright (C) 1995-1998, 2000, 2001 Free Software Foundation, Inc.
    Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
 # include <config.h>
 #endif
 
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#endif
-
-#if defined HAVE_STRING_H || defined _LIBC
-# include <string.h>
-#else
-# include <strings.h>
-#endif
+#include <stdlib.h>
+#include <string.h>
 #include <sys/types.h>
 
 #include "loadinfo.h"
 
 /* @@ end of prolog @@ */
 
+char *
+_nl_find_language (name)
+     const char *name;
+{
+  while (name[0] != '\0' && name[0] != '_' && name[0] != '@'
+        && name[0] != '+' && name[0] != ',')
+    ++name;
+
+  return (char *) name;
+}
+
+
 int
 _nl_explode_name (name, language, modifier, territory, codeset,
                  normalized_codeset, special, sponsor, revision)
@@ -74,9 +79,7 @@ _nl_explode_name (name, language, modifier, territory, codeset,
   mask = 0;
   syntax = undecided;
   *language = cp = name;
-  while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@'
-        && cp[0] != '+' && cp[0] != ',')
-    ++cp;
+  cp = _nl_find_language (*language);
 
   if (*language == cp)
     /* This does not make sense: language has to be specified.  Use
index 81ea29bf4e425fbb3e4ffaec8168134b424b6453..4882554fc911f6bfe355f0147f2a56334678be4a 100644 (file)
@@ -1,6 +1,6 @@
 /* Handle list of needed message catalogs
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
+   Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
+   Written by Ulrich Drepper <drepper@gnu.org>, 1995.
 
    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 <config.h>
 #endif
 
-#include <ctype.h>
-#include <errno.h>
 #include <stdio.h>
 #include <sys/types.h>
-
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#else
-# ifdef HAVE_MALLOC_H
-#  include <malloc.h>
-# else
-void free ();
-# endif
-#endif
-
-#if defined HAVE_STRING_H || defined _LIBC
-# include <string.h>
-#else
-# include <strings.h>
-# ifndef memcpy
-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
-# endif
-#endif
-#if !HAVE_STRCHR && !defined _LIBC
-# ifndef strchr
-#  define strchr index
-# endif
-#endif
+#include <stdlib.h>
+#include <string.h>
 
 #if defined HAVE_UNISTD_H || defined _LIBC
 # include <unistd.h>
 #endif
 
-#include "gettext.h"
 #include "gettextP.h"
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include "libgettext.h"
+# include "libgnuintl.h"
 #endif
 
 /* @@ end of prolog @@ */
@@ -71,10 +46,11 @@ static struct loaded_l10nfile *_nl_loaded_domains;
    established bindings.  */
 struct loaded_l10nfile *
 internal_function
-_nl_find_domain (dirname, locale, domainname)
+_nl_find_domain (dirname, locale, domainname, domainbinding)
      const char *dirname;
      char *locale;
      const char *domainname;
+     struct binding *domainbinding;
 {
   struct loaded_l10nfile *retval;
   const char *language;
@@ -120,7 +96,7 @@ _nl_find_domain (dirname, locale, domainname)
       int cnt;
 
       if (retval->decided == 0)
-       _nl_load_domain (retval);
+       _nl_load_domain (retval, domainbinding);
 
       if (retval->data != NULL)
        return retval;
@@ -128,7 +104,7 @@ _nl_find_domain (dirname, locale, domainname)
       for (cnt = 0; retval->successor[cnt] != NULL; ++cnt)
        {
          if (retval->successor[cnt]->decided == 0)
-           _nl_load_domain (retval->successor[cnt]);
+           _nl_load_domain (retval->successor[cnt], domainbinding);
 
          if (retval->successor[cnt]->data != NULL)
            break;
@@ -175,14 +151,14 @@ _nl_find_domain (dirname, locale, domainname)
     return NULL;
 
   if (retval->decided == 0)
-    _nl_load_domain (retval);
+    _nl_load_domain (retval, domainbinding);
   if (retval->data == NULL)
     {
       int cnt;
       for (cnt = 0; retval->successor[cnt] != NULL; ++cnt)
        {
          if (retval->successor[cnt]->decided == 0)
-           _nl_load_domain (retval->successor[cnt]);
+           _nl_load_domain (retval->successor[cnt], domainbinding);
          if (retval->successor[cnt]->data != NULL)
            break;
        }
@@ -192,6 +168,10 @@ _nl_find_domain (dirname, locale, domainname)
   if (alias_value != NULL)
     free (locale);
 
+  /* The space for normalized_codeset is dynamically allocated.  Free it.  */
+  if (mask & XPG_NORM_CODESET)
+    free ((void *) normalized_codeset);
+
   return retval;
 }
 
@@ -208,6 +188,7 @@ free_mem (void)
       if (runp->data != NULL)
        _nl_unload_domain ((struct loaded_domain *) runp->data);
       runp = runp->next;
+      free ((char *) here->filename);
       free (here);
     }
 }
index d929f98d68ac0f5d8f11d180f74ab3f134cce145..a64020553ad8fd0e7578c623ac7ff4b41c450bbd 100644 (file)
@@ -1,5 +1,5 @@
 /* Implementation of gettext(3) function.
-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1995, 1997, 2000, 2001 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
 # define __need_NULL
 # include <stddef.h>
 #else
-# ifdef STDC_HEADERS
-#  include <stdlib.h>          /* Just for NULL.  */
-# else
-#  ifdef HAVE_STRING_H
-#   include <string.h>
-#  else
-#   define NULL ((void *) 0)
-#  endif
-# endif
+# include <stdlib.h>           /* Just for NULL.  */
 #endif
 
+#include "gettextP.h"
 #ifdef _LIBC
 # include <libintl.h>
 #else
-# include "libgettext.h"
+# include "libgnuintl.h"
 #endif
 
 /* @@ end of prolog @@ */
    prefix.  So we have to make a difference here.  */
 #ifdef _LIBC
 # define GETTEXT __gettext
-# define DGETTEXT __dgettext
+# define DCGETTEXT __dcgettext
 #else
 # define GETTEXT gettext__
-# define DGETTEXT dgettext__
+# define DCGETTEXT dcgettext__
 #endif
 
 /* Look up MSGID in the current default message catalog for the current
@@ -61,7 +54,7 @@ char *
 GETTEXT (msgid)
      const char *msgid;
 {
-  return DGETTEXT (NULL, msgid);
+  return DCGETTEXT (NULL, msgid, LC_MESSAGES);
 }
 
 #ifdef _LIBC
index 3cd23d7d6ad91ed58bd3580c674c2c51182e0520..eb5889074a460c9a6b7724136b9e7d6208830729 100644 (file)
@@ -1,5 +1,5 @@
-/* Internal header for GNU gettext internationalization functions.
-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
+/* Description of GNU message catalog format: general file layout.
+   Copyright (C) 1995, 1997, 2000, 2001 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
    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 Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   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 _GETTEXT_H
 #define _GETTEXT_H 1
 
-#include <stdio.h>
-
 #if HAVE_LIMITS_H || _LIBC
 # include <limits.h>
 #endif
@@ -37,9 +34,8 @@
 /* The following contortions are an attempt to use the C preprocessor
    to determine an unsigned integral type that is 32 bits wide.  An
    alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but
-   doing that would require that the configure script compile and *run*
-   the resulting executable.  Locally running cross-compiled executables
-   is usually not possible.  */
+   as of version autoconf-2.13, the AC_CHECK_SIZEOF macro doesn't work
+   when cross-compiling.  */
 
 #if __STDC__
 # define UINT_MAX_32_BITS 4294967295U
index 00c520319728c12a69f7fc6ca20ae2f5ec33f1f1..ee8ca48e95a2a61956a34c87cdb0913ab434af10 100644 (file)
@@ -1,6 +1,6 @@
-/* Header describing internals of gettext library
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
+/* Header describing internals of libintl library.
+   Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
+   Written by Ulrich Drepper <drepper@cygnus.com>, 1995.
 
    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
 #ifndef _GETTEXTP_H
 #define _GETTEXTP_H
 
+#include <stddef.h>            /* Get size_t.  */
+
+#ifdef _LIBC
+# include "../iconv/gconv_int.h"
+#else
+# if HAVE_ICONV
+#  include <iconv.h>
+# endif
+#endif
+
 #include "loadinfo.h"
 
+#include "gettext.h"           /* Get nls_uint32.  */
+
 /* @@ end of prolog @@ */
 
 #ifndef PARAMS
 # define internal_function
 #endif
 
+/* Tell the compiler when a conditional or integer expression is
+   almost always true or almost always false.  */
+#ifndef HAVE_BUILTIN_EXPECT
+# define __builtin_expect(expr, val) (expr)
+#endif
+
 #ifndef W
 # define W(flag, data) ((flag) ? SWAP (data) : (data))
 #endif
@@ -44,8 +62,6 @@
 # include <byteswap.h>
 # define SWAP(i) bswap_32 (i)
 #else
-static nls_uint32 SWAP PARAMS ((nls_uint32 i));
-
 static inline nls_uint32
 SWAP (i)
      nls_uint32 i;
@@ -55,6 +71,52 @@ SWAP (i)
 #endif
 
 
+/* This is the representation of the expressions to determine the
+   plural form.  */
+struct expression
+{
+  int nargs;                   /* Number of arguments.  */
+  enum operator
+  {
+    /* Without arguments:  */
+    var,                       /* The variable "n".  */
+    num,                       /* Decimal number.  */
+    /* Unary operators:  */
+    lnot,                      /* Logical NOT.  */
+    /* Binary operators:  */
+    mult,                      /* Multiplication.  */
+    divide,                    /* Division.  */
+    module,                    /* Module operation.  */
+    plus,                      /* Addition.  */
+    minus,                     /* Subtraction.  */
+    less_than,                 /* Comparison.  */
+    greater_than,              /* Comparison.  */
+    less_or_equal,             /* Comparison.  */
+    greater_or_equal,          /* Comparison.  */
+    equal,                     /* Comparision for equality.  */
+    not_equal,                 /* Comparision for inequality.  */
+    land,                      /* Logical AND.  */
+    lor,                       /* Logical OR.  */
+    /* Ternary operators:  */
+    qmop                       /* Question mark operator.  */
+  } operation;
+  union
+  {
+    unsigned long int num;     /* Number value for `num'.  */
+    struct expression *args[3];        /* Up to three arguments.  */
+  } val;
+};
+
+/* This is the data structure to pass information to the parser and get
+   the result in a thread-safe way.  */
+struct parse_args
+{
+  const char *cp;
+  struct expression *res;
+};
+
+
+/* The representation of an opened message catalog.  */
 struct loaded_domain
 {
   const char *data;
@@ -66,23 +128,123 @@ struct loaded_domain
   struct string_desc *trans_tab;
   nls_uint32 hash_size;
   nls_uint32 *hash_tab;
+  int codeset_cntr;
+#ifdef _LIBC
+  __gconv_t conv;
+#else
+# if HAVE_ICONV
+  iconv_t conv;
+# endif
+#endif
+  char **conv_tab;
+
+  struct expression *plural;
+  unsigned long int nplurals;
 };
 
+/* We want to allocate a string at the end of the struct.  But ISO C
+   doesn't allow zero sized arrays.  */
+#ifdef __GNUC__
+# define ZERO 0
+#else
+# define ZERO 1
+#endif
+
+/* A set of settings bound to a message domain.  Used to store settings
+   from bindtextdomain() and bind_textdomain_codeset().  */
 struct binding
 {
   struct binding *next;
-  char *domainname;
   char *dirname;
+  int codeset_cntr;    /* Incremented each time codeset changes.  */
+  char *codeset;
+  char domainname[ZERO];
 };
 
+/* A counter which is incremented each time some previous translations
+   become invalid.
+   This variable is part of the external ABI of the GNU libintl.  */
+extern int _nl_msg_cat_cntr;
+
 struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname,
                                                 char *__locale,
-                                                const char *__domainname))
+                                                const char *__domainname,
+                                             struct binding *__domainbinding))
      internal_function;
-void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain))
+void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain,
+                             struct binding *__domainbinding))
      internal_function;
 void _nl_unload_domain PARAMS ((struct loaded_domain *__domain))
      internal_function;
+const char *_nl_init_domain_conv PARAMS ((struct loaded_l10nfile *__domain_file,
+                                         struct loaded_domain *__domain,
+                                         struct binding *__domainbinding))
+     internal_function;
+void _nl_free_domain_conv PARAMS ((struct loaded_domain *__domain))
+     internal_function;
+
+char *_nl_find_msg PARAMS ((struct loaded_l10nfile *domain_file,
+                           struct binding *domainbinding,
+                           const char *msgid, size_t *lengthp))
+     internal_function;
+
+#ifdef _LIBC
+extern char *__gettext PARAMS ((const char *__msgid));
+extern char *__dgettext PARAMS ((const char *__domainname,
+                                const char *__msgid));
+extern char *__dcgettext PARAMS ((const char *__domainname,
+                                 const char *__msgid, int __category));
+extern char *__ngettext PARAMS ((const char *__msgid1, const char *__msgid2,
+                                unsigned long int __n));
+extern char *__dngettext PARAMS ((const char *__domainname,
+                                 const char *__msgid1, const char *__msgid2,
+                                 unsigned long int n));
+extern char *__dcngettext PARAMS ((const char *__domainname,
+                                  const char *__msgid1, const char *__msgid2,
+                                  unsigned long int __n, int __category));
+extern char *__dcigettext PARAMS ((const char *__domainname,
+                                  const char *__msgid1, const char *__msgid2,
+                                  int __plural, unsigned long int __n,
+                                  int __category));
+extern char *__textdomain PARAMS ((const char *__domainname));
+extern char *__bindtextdomain PARAMS ((const char *__domainname,
+                                      const char *__dirname));
+extern char *__bind_textdomain_codeset PARAMS ((const char *__domainname,
+                                               const char *__codeset));
+#else
+extern char *gettext__ PARAMS ((const char *__msgid));
+extern char *dgettext__ PARAMS ((const char *__domainname,
+                                const char *__msgid));
+extern char *dcgettext__ PARAMS ((const char *__domainname,
+                                 const char *__msgid, int __category));
+extern char *ngettext__ PARAMS ((const char *__msgid1, const char *__msgid2,
+                                unsigned long int __n));
+extern char *dngettext__ PARAMS ((const char *__domainname,
+                                 const char *__msgid1, const char *__msgid2,
+                                 unsigned long int __n));
+extern char *dcngettext__ PARAMS ((const char *__domainname,
+                                  const char *__msgid1, const char *__msgid2,
+                                  unsigned long int __n, int __category));
+extern char *dcigettext__ PARAMS ((const char *__domainname,
+                                  const char *__msgid1, const char *__msgid2,
+                                  int __plural, unsigned long int __n,
+                                  int __category));
+extern char *textdomain__ PARAMS ((const char *__domainname));
+extern char *bindtextdomain__ PARAMS ((const char *__domainname,
+                                      const char *__dirname));
+extern char *bind_textdomain_codeset__ PARAMS ((const char *__domainname,
+                                               const char *__codeset));
+#endif
+
+#ifdef _LIBC
+extern void __gettext_free_exp PARAMS ((struct expression *exp))
+     internal_function;
+extern int __gettextparse PARAMS ((void *arg));
+#else
+extern void gettext_free_exp__ PARAMS ((struct expression *exp))
+     internal_function;
+extern int gettextparse__ PARAMS ((void *arg));
+#endif
 
 /* @@ begin of epilog @@ */
 
index cacb38e479f8553cc97425f611845a34fab98647..37d4ce1a2c3d2c05d1e9d6a90d64e055613c74ad 100644 (file)
@@ -1,5 +1,5 @@
-/* Implements a string hashing function.
-   Copyright (C) 1995, 1997 Free Software Foundation, Inc.
+/* Description of GNU message catalog format: string hashing function.
+   Copyright (C) 1995, 1997, 1998, 2000, 2001 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
    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 Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   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.  */
 
 /* @@ end of prolog @@ */
 
@@ -33,9 +32,9 @@
 /* Defines the so called `hashpjw' function by P.J. Weinberger
    [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools,
    1986, 1987 Bell Telephone Laboratories, Inc.]  */
-static unsigned long hash_string PARAMS ((const char *__str_param));
+static unsigned long int hash_string PARAMS ((const char *__str_param));
 
-static inline unsigned long
+static inline unsigned long int
 hash_string (str_param)
      const char *str_param;
 {
@@ -47,8 +46,8 @@ hash_string (str_param)
   while (*str != '\0')
     {
       hval <<= 4;
-      hval += (unsigned long) *str++;
-      g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4));
+      hval += (unsigned long int) *str++;
+      g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4));
       if (g != 0)
        {
          hval ^= g >> (HASHWORDBITS - 8);
index 503efa0fa9c5179f26a8b6cbd57ec36e1398b662..b8edaa17af2bedf6fcdcabae9600de9a62f5e961 100644 (file)
@@ -1,6 +1,6 @@
 /* intl-compat.c - Stub functions to call gettext functions from GNU gettext
    Library.
-   Copyright (C) 1995 Software Foundation, Inc.
+   Copyright (C) 1995, 2000, 2001 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
@@ -20,24 +20,79 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 # include <config.h>
 #endif
 
-#include "libgettext.h"
+#include "libgnuintl.h"
+#include "gettextP.h"
 
 /* @@ end of prolog @@ */
 
+/* This file redirects the gettext functions (without prefix or suffix) to
+   those defined in the included GNU gettext library (with "__" suffix).
+   It is compiled into libintl when the included GNU gettext library is
+   configured --with-included-gettext.
+
+   This redirection works also in the case that the system C library or
+   the system libintl library contain gettext/textdomain/... functions.
+   If it didn't, we would need to add preprocessor level redirections to
+   libgnuintl.h of the following form:
+
+#    define gettext gettext__
+#    define dgettext dgettext__
+#    define dcgettext dcgettext__
+#    define ngettext ngettext__
+#    define dngettext dngettext__
+#    define dcngettext dcngettext__
+#    define textdomain textdomain__
+#    define bindtextdomain bindtextdomain__
+#    define bind_textdomain_codeset bind_textdomain_codeset__
+
+   How does this redirection work? There are two cases.
+   A. When libintl.a is linked into an executable, it works because
+      functions defined in the executable always override functions in
+      the shared libraries.
+   B. When libintl.so is used, it works because
+      1. those systems defining gettext/textdomain/... in the C library
+         (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer) are
+         ELF systems and define these symbols as weak, thus explicitly
+         letting other shared libraries override it.
+      2. those systems defining gettext/textdomain/... in a standalone
+         libintl.so library (namely, Solaris 2.3 and newer) have this
+         shared library in /usr/lib, and the linker will search /usr/lib
+         *after* the directory where the GNU gettext library is installed.
+
+   A third case, namely when libintl.a is linked into a shared library
+   whose name is not libintl.so, is not supported. In this case, on
+   Solaris, when -lintl precedes the linker option for the shared library
+   containing GNU gettext, the system's gettext would indeed override
+   the GNU gettext. Anyone doing this kind of stuff must be clever enough
+   to 1. compile libintl.a with -fPIC, 2. remove -lintl from his linker
+   command line.  */
+
 
 #undef gettext
 #undef dgettext
 #undef dcgettext
+#undef ngettext
+#undef dngettext
+#undef dcngettext
 #undef textdomain
 #undef bindtextdomain
+#undef bind_textdomain_codeset
 
 
 char *
-bindtextdomain (domainname, dirname)
+gettext (msgid)
+     const char *msgid;
+{
+  return gettext__ (msgid);
+}
+
+
+char *
+dgettext (domainname, msgid)
      const char *domainname;
-     const char *dirname;
+     const char *msgid;
 {
-  return bindtextdomain__ (domainname, dirname);
+  return dgettext__ (domainname, msgid);
 }
 
 
@@ -52,19 +107,35 @@ dcgettext (domainname, msgid, category)
 
 
 char *
-dgettext (domainname, msgid)
+ngettext (msgid1, msgid2, n)
+     const char *msgid1;
+     const char *msgid2;
+     unsigned long int n;
+{
+  return ngettext__ (msgid1, msgid2, n);
+}
+
+
+char *
+dngettext (domainname, msgid1, msgid2, n)
      const char *domainname;
-     const char *msgid;
+     const char *msgid1;
+     const char *msgid2;
+     unsigned long int n;
 {
-  return dgettext__ (domainname, msgid);
+  return dngettext__ (domainname, msgid1, msgid2, n);
 }
 
 
 char *
-gettext (msgid)
-     const char *msgid;
+dcngettext (domainname, msgid1, msgid2, n, category)
+     const char *domainname;
+     const char *msgid1;
+     const char *msgid2;
+     unsigned long int n;
+     int category;
 {
-  return gettext__ (msgid);
+  return dcngettext__ (domainname, msgid1, msgid2, n, category);
 }
 
 
@@ -74,3 +145,21 @@ textdomain (domainname)
 {
   return textdomain__ (domainname);
 }
+
+
+char *
+bindtextdomain (domainname, dirname)
+     const char *domainname;
+     const char *dirname;
+{
+  return bindtextdomain__ (domainname, dirname);
+}
+
+
+char *
+bind_textdomain_codeset (domainname, codeset)
+     const char *domainname;
+     const char *codeset;
+{
+  return bind_textdomain_codeset__ (domainname, codeset);
+}
index 9c7dc18360ff7901da699b99f6d8dc7a53d3e992..557253eb985164c1b022a9c0c2cb447e368c2ecf 100644 (file)
@@ -1,5 +1,4 @@
-/* Handle list of needed message catalogs
-   Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995-1999, 2000, 2001 Free Software Foundation, Inc.
    Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
 
    This program is free software; you can redistribute it and/or modify
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
+/* Tell glibc's <string.h> to provide a prototype for stpcpy().
+   This must come before <config.h> because <config.h> may include
+   <features.h>, and once <features.h> has been included, it's too late.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE   1
+#endif
+
 #ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
-
-#if defined HAVE_STRING_H || defined _LIBC
-# ifndef _GNU_SOURCE
-#  define _GNU_SOURCE  1
-# endif
-# include <string.h>
-#else
-# include <strings.h>
-# ifndef memcpy
-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
-# endif
-#endif
+#include <string.h>
 #if !HAVE_STRCHR && !defined _LIBC
 # ifndef strchr
 #  define strchr index
 #endif
 #include <ctype.h>
 #include <sys/types.h>
-
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#endif
+#include <stdlib.h>
 
 #include "loadinfo.h"
 
@@ -224,7 +216,7 @@ _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language,
 
   /* Construct file name.  */
   memcpy (abs_filename, dirlist, dirlist_len);
-  __argz_stringify (abs_filename, dirlist_len, ':');
+  __argz_stringify (abs_filename, dirlist_len, PATH_SEPARATOR);
   cp = abs_filename + (dirlist_len - 1);
   *cp++ = '/';
   cp = stpcpy (cp, language);
@@ -349,10 +341,11 @@ _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language,
 \f
 /* Normalize codeset name.  There is no standard for the codeset
    names.  Normalization allows the user to use any of the common
-   names.  */
+   names.  The return value is dynamically allocated and has to be
+   freed by the caller.  */
 const char *
 _nl_normalize_codeset (codeset, name_len)
-     const unsigned char *codeset;
+     const char *codeset;
      size_t name_len;
 {
   int len = 0;
index 3a92960ae3ee9ff2a1376816de31c179061d390e..553382ca04502343e79b0cba10ad2c33892a1951 100644 (file)
@@ -1,5 +1,5 @@
-/* Message catalogs for internationalization.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+/* Convenience header for conditional use of GNU <libintl.h>.
+   Copyright (C) 1995-1998, 2000, 2001 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
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
-/* Because on some systems (e.g. Solaris) we sometimes have to include
-   the systems libintl.h as well as this file we have more complex
-   include protection above.  But the systems header might perhaps also
-   define _LIBINTL_H and therefore we have to protect the definition here.  */
-
-#if !defined _LIBINTL_H || !defined _LIBGETTEXT_H
-#ifndef _LIBINTL_H
-# define _LIBINTL_H    1
-#endif
-#define _LIBGETTEXT_H  1
-
-/* We define an additional symbol to signal that we use the GNU
-   implementation of gettext.  */
-#define __USE_GNU_GETTEXT 1
-
-#include <sys/types.h>
-
-#if HAVE_LOCALE_H
-# include <locale.h>
-#endif
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/* @@ end of prolog @@ */
-
-#ifndef PARAMS
-# if __STDC__ || defined __cplusplus
-#  define PARAMS(args) args
-# else
-#  define PARAMS(args) ()
-# endif
-#endif
-
-#ifndef NULL
-# if !defined __cplusplus || defined __GNUC__
-#  define NULL ((void *) 0)
-# else
-#  define NULL (0)
-# endif
-#endif
-
-#if !HAVE_LC_MESSAGES
-/* This value determines the behaviour of the gettext() and dgettext()
-   function.  But some system does not have this defined.  Define it
-   to a default value.  */
-# define LC_MESSAGES (-1)
-#endif
-
-
-/* Declarations for gettext-using-catgets interface.  Derived from
-   Jim Meyering's libintl.h.  */
-struct _msg_ent
-{
-  const char *_msg;
-  int _msg_number;
-};
-
-
-#if HAVE_CATGETS
-/* These two variables are defined in the automatically by po-to-tbl.sed
-   generated file `cat-id-tbl.c'.  */
-extern const struct _msg_ent _msg_tbl[];
-extern int _msg_tbl_length;
-#endif
-
-
-/* For automatical extraction of messages sometimes no real
-   translation is needed.  Instead the string itself is the result.  */
-#define gettext_noop(Str) (Str)
-
-/* Look up MSGID in the current default message catalog for the current
-   LC_MESSAGES locale.  If not found, returns MSGID itself (the default
-   text).  */
-extern char *gettext PARAMS ((const char *__msgid));
-extern char *gettext__ PARAMS ((const char *__msgid));
-
-/* Look up MSGID in the DOMAINNAME message catalog for the current
-   LC_MESSAGES locale.  */
-extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid));
-extern char *dgettext__ PARAMS ((const char *__domainname,
-                                const char *__msgid));
-
-/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
-   locale.  */
-extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid,
-                               int __category));
-extern char *dcgettext__ PARAMS ((const char *__domainname,
-                                 const char *__msgid, int __category));
-
-
-/* Set the current default message catalog to DOMAINNAME.
-   If DOMAINNAME is null, return the current default.
-   If DOMAINNAME is "", reset to the default of "messages".  */
-extern char *textdomain PARAMS ((const char *__domainname));
-extern char *textdomain__ PARAMS ((const char *__domainname));
-
-/* Specify that the DOMAINNAME message catalog will be found
-   in DIRNAME rather than in the system locale data base.  */
-extern char *bindtextdomain PARAMS ((const char *__domainname,
-                                 const char *__dirname));
-extern char *bindtextdomain__ PARAMS ((const char *__domainname,
-                                   const char *__dirname));
+#ifndef _LIBGETTEXT_H
+#define _LIBGETTEXT_H 1
 
+/* NLS can be disabled through the configure --disable-nls option.  */
 #if ENABLE_NLS
 
-/* Solaris 2.3 has the gettext function but dcgettext is missing.
-   So we omit this optimization for Solaris 2.3.  BTW, Solaris 2.4
-   has dcgettext.  */
-# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT)
-
-#  define gettext(Msgid)                                                     \
-     dgettext (NULL, Msgid)
-
-#  define dgettext(Domainname, Msgid)                                        \
-     dcgettext (Domainname, Msgid, LC_MESSAGES)
-
-#  if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7
-/* This global variable is defined in loadmsgcat.c.  We need a sign,
-   whether a new catalog was loaded, which can be associated with all
-   translations.  */
-extern int _nl_msg_cat_cntr;
-
-#   define dcgettext(Domainname, Msgid, Category)                            \
-  (__extension__                                                             \
-   ({                                                                        \
-     char *__result;                                                         \
-     if (__builtin_constant_p (Msgid))                                       \
-       {                                                                     \
-        static char *__translation__;                                        \
-        static int __catalog_counter__;                                      \
-        if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr)    \
-          {                                                                  \
-            __translation__ =                                                \
-              dcgettext__ (Domainname, Msgid, Category);                     \
-            __catalog_counter__ = _nl_msg_cat_cntr;                          \
-          }                                                                  \
-        __result = __translation__;                                          \
-       }                                                                     \
-     else                                                                    \
-       __result = dcgettext__ (Domainname, Msgid, Category);                 \
-     __result;                                                               \
-    }))
-#  endif
-# endif
+/* Get declarations of GNU message catalog functions.  */
+# include <libintl.h>
 
 #else
 
 # define gettext(Msgid) (Msgid)
 # define dgettext(Domainname, Msgid) (Msgid)
 # define dcgettext(Domainname, Msgid, Category) (Msgid)
-# define textdomain(Domainname) ((char *) Domainname)
-# define bindtextdomain(Domainname, Dirname) ((char *) Dirname)
+# define ngettext(Msgid1, Msgid2, N) \
+    ((N) == 1 ? (char *) (Msgid1) : (char *) (Msgid2))
+# define dngettext(Domainname, Msgid1, Msgid2, N) \
+    ((N) == 1 ? (char *) (Msgid1) : (char *) (Msgid2))
+# define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \
+    ((N) == 1 ? (char *) (Msgid1) : (char *) (Msgid2))
+# define textdomain(Domainname) ((char *) (Domainname))
+# define bindtextdomain(Domainname, Dirname) ((char *) (Dirname))
+# define bind_textdomain_codeset(Domainname, Codeset) ((char *) (Codeset))
 
 #endif
 
-/* @@ begin of epilog @@ */
-
-#ifdef __cplusplus
-}
-#endif
+/* For automatical extraction of messages sometimes no real
+   translation is needed.  Instead the string itself is the result.  */
+#define gettext_noop(Str) (Str)
 
-#endif
+#endif /* _LIBGETTEXT_H */
diff --git a/intl/libgnuintl.h b/intl/libgnuintl.h
new file mode 100644 (file)
index 0000000..577001a
--- /dev/null
@@ -0,0 +1,127 @@
+/* Message catalogs for internationalization.
+   Copyright (C) 1995-1997, 2000, 2001 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
+   the Free Software Foundation; either version 2, 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 _LIBINTL_H
+#define _LIBINTL_H     1
+
+#include <locale.h>
+
+/* The LC_MESSAGES locale category is the category used by the functions
+   gettext() and dgettext().  It is specified in POSIX, but not in ANSI C.
+   On systems that don't define it, use an arbitrary value instead.
+   On Solaris, <locale.h> defines __LOCALE_H then includes <libintl.h> (i.e.
+   this file!) and then only defines LC_MESSAGES.  To avoid a redefinition
+   warning, don't define LC_MESSAGES in this case.  */
+#if !defined LC_MESSAGES && !defined __LOCALE_H
+# define LC_MESSAGES 1729
+#endif
+
+/* We define an additional symbol to signal that we use the GNU
+   implementation of gettext.  */
+#define __USE_GNU_GETTEXT 1
+
+/* Resolve a platform specific conflict on DJGPP.  GNU gettext takes
+   precedence over _conio_gettext.  */
+#ifdef __DJGPP__
+# undef gettext
+# define gettext gettext
+#endif
+
+#ifndef PARAMS
+# if __STDC__ || defined __cplusplus
+#  define PARAMS(args) args
+# else
+#  define PARAMS(args) ()
+# endif
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Look up MSGID in the current default message catalog for the current
+   LC_MESSAGES locale.  If not found, returns MSGID itself (the default
+   text).  */
+extern char *gettext PARAMS ((const char *__msgid));
+
+/* Look up MSGID in the DOMAINNAME message catalog for the current
+   LC_MESSAGES locale.  */
+extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid));
+
+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
+   locale.  */
+extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid,
+                               int __category));
+
+
+/* Similar to `gettext' but select the plural form corresponding to the
+   number N.  */
+extern char *ngettext PARAMS ((const char *__msgid1, const char *__msgid2,
+                              unsigned long int __n));
+
+/* Similar to `dgettext' but select the plural form corresponding to the
+   number N.  */
+extern char *dngettext PARAMS ((const char *__domainname, const char *__msgid1,
+                               const char *__msgid2, unsigned long int __n));
+
+/* Similar to `dcgettext' but select the plural form corresponding to the
+   number N.  */
+extern char *dcngettext PARAMS ((const char *__domainname, const char *__msgid1,
+                                const char *__msgid2, unsigned long int __n,
+                                int __category));
+
+
+/* Set the current default message catalog to DOMAINNAME.
+   If DOMAINNAME is null, return the current default.
+   If DOMAINNAME is "", reset to the default of "messages".  */
+extern char *textdomain PARAMS ((const char *__domainname));
+
+/* Specify that the DOMAINNAME message catalog will be found
+   in DIRNAME rather than in the system locale data base.  */
+extern char *bindtextdomain PARAMS ((const char *__domainname,
+                                    const char *__dirname));
+
+/* Specify the character encoding in which the messages from the
+   DOMAINNAME message catalog will be returned.  */
+extern char *bind_textdomain_codeset PARAMS ((const char *__domainname,
+                                             const char *__codeset));
+
+
+/* Optimized version of the functions above.  */
+#if defined __OPTIMIZED
+/* These are macros, but could also be inline functions.  */
+
+# define gettext(msgid)                                                              \
+  dgettext (NULL, msgid)
+
+# define dgettext(domainname, msgid)                                         \
+  dcgettext (domainname, msgid, LC_MESSAGES)
+
+# define ngettext(msgid1, msgid2, n)                                         \
+  dngettext (NULL, msgid1, msgid2, n)
+
+# define dngettext(domainname, msgid1, msgid2, n)                            \
+  dcngettext (domainname, msgid1, msgid2, n, LC_MESSAGES)
+
+#endif /* Optimizing. */
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* libintl.h */
diff --git a/intl/linux-msg.sed b/intl/linux-msg.sed
deleted file mode 100644 (file)
index 5918e72..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-# po2msg.sed - Convert Uniforum style .po file to Linux style .msg file
-# Copyright (C) 1995 Free Software Foundation, Inc.
-# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# 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.
-#
-#
-# The first directive in the .msg should be the definition of the
-# message set number.  We use always set number 1.
-#
-1 {
-  i\
-$set 1 # Automatically created by po2msg.sed
-  h
-  s/.*/0/
-  x
-}
-#
-# Mitch's old catalog format does not allow comments.
-#
-# We copy the original message as a comment into the .msg file.
-#
-/^msgid/ {
-  s/msgid[     ]*"//
-#
-# This does not work now with the new format.
-# /"$/! {
-#   s/\\$//
-#   s/$/ ... (more lines following)"/
-# }
-  x
-# The following nice solution is by
-# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
-  td
-# Increment a decimal number in pattern space.
-# First hide trailing `9' digits.
-  :d
-  s/9\(_*\)$/_\1/
-  td
-# Assure at least one digit is available.
-  s/^\(_*\)$/0\1/
-# Increment the last digit.
-  s/8\(_*\)$/9\1/
-  s/7\(_*\)$/8\1/
-  s/6\(_*\)$/7\1/
-  s/5\(_*\)$/6\1/
-  s/4\(_*\)$/5\1/
-  s/3\(_*\)$/4\1/
-  s/2\(_*\)$/3\1/
-  s/1\(_*\)$/2\1/
-  s/0\(_*\)$/1\1/
-# Convert the hidden `9' digits to `0's.
-  s/_/0/g
-  x
-  G
-  s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p
-}
-#
-# The .msg file contains, other then the .po file, only the translations
-# but each given a unique ID.  Starting from 1 and incrementing by 1 for
-# each message we assign them to the messages.
-# It is important that the .po file used to generate the cat-id-tbl.c file
-# (with po-to-tbl) is the same as the one used here.  (At least the order
-# of declarations must not be changed.)
-#
-/^msgstr/ {
-  s/msgstr[    ]*"\(.*\)"/# \1/
-# Clear substitution flag.
-  tb
-# Append the next line.
-  :b
-  N
-# Look whether second part is continuation line.
-  s/\(.*\n\)"\(.*\)"/\1\2/
-# Yes, then branch.
-  ta
-  P
-  D
-# Note that D includes a jump to the start!!
-# We found a continuation line.  But before printing insert '\'.
-  :a
-  s/\(.*\)\(\n.*\)/\1\\\2/
-  P
-# We cannot use D here.
-  s/.*\n\(.*\)/\1/
-  tb
-}
-d
index f4ebf6d81122911ed19571a8192fd44f97259c62..5171a8f63b7f0f7dc93ec8908ed1fab3c51859ba 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1996-1999, 2000, 2001 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
 
@@ -16,6 +16,9 @@
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
+#ifndef _LOADINFO_H
+#define _LOADINFO_H    1
+
 #ifndef PARAMS
 # if __STDC__
 #  define PARAMS(args) args
 # endif
 #endif
 
+#ifndef internal_function
+# define internal_function
+#endif
+
+/* Tell the compiler when a conditional or integer expression is
+   almost always true or almost always false.  */
+#ifndef HAVE_BUILTIN_EXPECT
+# define __builtin_expect(expr, val) (expr)
+#endif
+
+/* Separator in PATH like lists of pathnames.  */
+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__
+  /* Win32, OS/2, DOS */
+# define PATH_SEPARATOR ';'
+#else
+  /* Unix */
+# define PATH_SEPARATOR ':'
+#endif
+
 /* Encoding of locale name parts.  */
 #define CEN_REVISION           1
 #define CEN_SPONSOR            2
@@ -50,7 +72,11 @@ struct loaded_l10nfile
 };
 
 
-extern const char *_nl_normalize_codeset PARAMS ((const unsigned char *codeset,
+/* Normalize codeset name.  There is no standard for the codeset
+   names.  Normalization allows the user to use any of the common
+   names.  The return value is dynamically allocated and has to be
+   freed by the caller.  */
+extern const char *_nl_normalize_codeset PARAMS ((const char *codeset,
                                                  size_t name_len));
 
 extern struct loaded_l10nfile *
@@ -66,6 +92,8 @@ _nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list,
 
 extern const char *_nl_expand_alias PARAMS ((const char *name));
 
+/* normalized_codeset is dynamically allocated and has to be freed by
+   the caller.  */
 extern int _nl_explode_name PARAMS ((char *name, const char **language,
                                     const char **modifier,
                                     const char **territory,
@@ -74,3 +102,7 @@ extern int _nl_explode_name PARAMS ((char *name, const char **language,
                                     const char **special,
                                     const char **sponsor,
                                     const char **revision));
+
+extern char *_nl_find_language PARAMS ((const char *name));
+
+#endif /* loadinfo.h */
index 515892dfb867d4bf8933d0289a2656ab23cd52b7..d589243b20ecd34da8fab8edbb5c4504ab65b1ae 100644 (file)
@@ -1,5 +1,5 @@
 /* Load needed message catalogs.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 1995-1999, 2000, 2001 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
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
+/* Tell glibc's <string.h> to provide a prototype for mempcpy().
+   This must come before <config.h> because <config.h> may include
+   <features.h>, and once <features.h> has been included, it's too late.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE    1
+#endif
+
 #ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
+#include <ctype.h>
+#include <errno.h>
 #include <fcntl.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
+#ifdef __GNUC__
+# define alloca __builtin_alloca
+# define HAVE_ALLOCA 1
+#else
+# if defined HAVE_ALLOCA_H || defined _LIBC
+#  include <alloca.h>
+# else
+#  ifdef _AIX
+ #pragma alloca
+#  else
+#   ifndef alloca
+char *alloca ();
+#   endif
+#  endif
+# endif
 #endif
 
+#include <stdlib.h>
+#include <string.h>
+
 #if defined HAVE_UNISTD_H || defined _LIBC
 # include <unistd.h>
 #endif
 
-#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC
+#ifdef _LIBC
+# include <langinfo.h>
+# include <locale.h>
+#endif
+
+#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
+    || (defined _LIBC && defined _POSIX_MAPPED_FILES)
 # include <sys/mman.h>
+# undef HAVE_MMAP
+# define HAVE_MMAP     1
+#else
+# undef HAVE_MMAP
 #endif
 
 #include "gettext.h"
 #include "gettextP.h"
 
+#ifdef _LIBC
+# include "../locale/localeinfo.h"
+#endif
+
 /* @@ end of prolog @@ */
 
 #ifdef _LIBC
 # define munmap __munmap
 #endif
 
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define PLURAL_PARSE __gettextparse
+#else
+# define PLURAL_PARSE gettextparse__
+#endif
+
+/* For those losing systems which don't have `alloca' we have to add
+   some additional code emulating it.  */
+#ifdef HAVE_ALLOCA
+# define freea(p) /* nothing */
+#else
+# define alloca(n) malloc (n)
+# define freea(p) free (p)
+#endif
+
+/* For systems that distinguish between text and binary I/O.
+   O_BINARY is usually declared in <fcntl.h>. */
+#if !defined O_BINARY && defined _O_BINARY
+  /* For MSC-compatible compilers.  */
+# define O_BINARY _O_BINARY
+# define O_TEXT _O_TEXT
+#endif
+#ifdef __BEOS__
+  /* BeOS 5 has O_BINARY and O_TEXT, but they have no effect.  */
+# undef O_BINARY
+# undef O_TEXT
+#endif
+/* On reasonable systems, binary I/O is the default.  */
+#ifndef O_BINARY
+# define O_BINARY 0
+#endif
+
 /* We need a sign, whether a new catalog was loaded, which can be associated
    with all translations.  This is important if the translations are
    cached by one of GCC's features.  */
-int _nl_msg_cat_cntr = 0;
+int _nl_msg_cat_cntr;
+
+#if (defined __GNUC__ && !defined __APPLE_CC__) \
+    || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)
+
+/* These structs are the constant expression for the germanic plural
+   form determination.  It represents the expression  "n != 1".  */
+static const struct expression plvar =
+{
+  .nargs = 0,
+  .operation = var,
+};
+static const struct expression plone =
+{
+  .nargs = 0,
+  .operation = num,
+  .val =
+  {
+    .num = 1
+  }
+};
+static struct expression germanic_plural =
+{
+  .nargs = 2,
+  .operation = not_equal,
+  .val =
+  {
+    .args =
+    {
+      [0] = (struct expression *) &plvar,
+      [1] = (struct expression *) &plone
+    }
+  }
+};
+
+# define INIT_GERMANIC_PLURAL()
+
+#else
+
+/* For compilers without support for ISO C 99 struct/union initializers:
+   Initialization at run-time.  */
+
+static struct expression plvar;
+static struct expression plone;
+static struct expression germanic_plural;
+
+static void
+init_germanic_plural ()
+{
+  if (plone.val.num == 0)
+    {
+      plvar.nargs = 0;
+      plvar.operation = var;
+
+      plone.nargs = 0;
+      plone.operation = num;
+      plone.val.num = 1;
+
+      germanic_plural.nargs = 2;
+      germanic_plural.operation = not_equal;
+      germanic_plural.val.args[0] = &plvar;
+      germanic_plural.val.args[1] = &plone;
+    }
+}
+
+# define INIT_GERMANIC_PLURAL() init_germanic_plural ()
+
+#endif
+
+
+/* Initialize the codeset dependent parts of an opened message catalog.
+   Return the header entry.  */
+const char *
+internal_function
+_nl_init_domain_conv (domain_file, domain, domainbinding)
+     struct loaded_l10nfile *domain_file;
+     struct loaded_domain *domain;
+     struct binding *domainbinding;
+{
+  /* Find out about the character set the file is encoded with.
+     This can be found (in textual form) in the entry "".  If this
+     entry does not exist or if this does not contain the `charset='
+     information, we will assume the charset matches the one the
+     current locale and we don't have to perform any conversion.  */
+  char *nullentry;
+  size_t nullentrylen;
+
+  /* Preinitialize fields, to avoid recursion during _nl_find_msg.  */
+  domain->codeset_cntr =
+    (domainbinding != NULL ? domainbinding->codeset_cntr : 0);
+#ifdef _LIBC
+  domain->conv = (__gconv_t) -1;
+#else
+# if HAVE_ICONV
+  domain->conv = (iconv_t) -1;
+# endif
+#endif
+  domain->conv_tab = NULL;
 
+  /* Get the header entry.  */
+  nullentry = _nl_find_msg (domain_file, domainbinding, "", &nullentrylen);
+
+  if (nullentry != NULL)
+    {
+#if defined _LIBC || HAVE_ICONV
+      const char *charsetstr;
+
+      charsetstr = strstr (nullentry, "charset=");
+      if (charsetstr != NULL)
+       {
+         size_t len;
+         char *charset;
+         const char *outcharset;
+
+         charsetstr += strlen ("charset=");
+         len = strcspn (charsetstr, " \t\n");
+
+         charset = (char *) alloca (len + 1);
+# if defined _LIBC || HAVE_MEMPCPY
+         *((char *) mempcpy (charset, charsetstr, len)) = '\0';
+# else
+         memcpy (charset, charsetstr, len);
+         charset[len] = '\0';
+# endif
+
+         /* The output charset should normally be determined by the
+            locale.  But sometimes the locale is not used or not correctly
+            set up, so we provide a possibility for the user to override
+            this.  Moreover, the value specified through
+            bind_textdomain_codeset overrides both.  */
+         if (domainbinding != NULL && domainbinding->codeset != NULL)
+           outcharset = domainbinding->codeset;
+         else
+           {
+             outcharset = getenv ("OUTPUT_CHARSET");
+             if (outcharset == NULL || outcharset[0] == '\0')
+               {
+# ifdef _LIBC
+                 outcharset = (*_nl_current[LC_CTYPE])->values[_NL_ITEM_INDEX (CODESET)].string;
+# else
+#  if HAVE_ICONV
+                 extern const char *locale_charset (void);
+                 outcharset = locale_charset ();
+#  endif
+# endif
+               }
+           }
+
+# ifdef _LIBC
+         /* We always want to use transliteration.  */
+         outcharset = norm_add_slashes (outcharset, "TRANSLIT");
+         charset = norm_add_slashes (charset, NULL);
+         if (__gconv_open (outcharset, charset, &domain->conv,
+                           GCONV_AVOID_NOCONV)
+             != __GCONV_OK)
+           domain->conv = (__gconv_t) -1;
+# else
+#  if HAVE_ICONV
+         /* When using GNU libiconv, we want to use transliteration.  */
+#   if _LIBICONV_VERSION >= 0x0105
+         len = strlen (outcharset);
+         {
+           char *tmp = (char *) alloca (len + 10 + 1);
+           memcpy (tmp, outcharset, len);
+           memcpy (tmp + len, "//TRANSLIT", 10 + 1);
+           outcharset = tmp;
+         }
+#   endif
+         domain->conv = iconv_open (outcharset, charset);
+#   if _LIBICONV_VERSION >= 0x0105
+         freea (outcharset);
+#   endif
+#  endif
+# endif
+
+         freea (charset);
+       }
+#endif /* _LIBC || HAVE_ICONV */
+    }
+
+  return nullentry;
+}
+
+/* Frees the codeset dependent parts of an opened message catalog.  */
+void
+internal_function
+_nl_free_domain_conv (domain)
+     struct loaded_domain *domain;
+{
+  if (domain->conv_tab != NULL && domain->conv_tab != (char **) -1)
+    free (domain->conv_tab);
+
+#ifdef _LIBC
+  if (domain->conv != (__gconv_t) -1)
+    __gconv_close (domain->conv);
+#else
+# if HAVE_ICONV
+  if (domain->conv != (iconv_t) -1)
+    iconv_close (domain->conv);
+# endif
+#endif
+}
 
 /* Load the message catalogs specified by FILENAME.  If it is no valid
    message catalog do nothing.  */
 void
 internal_function
-_nl_load_domain (domain_file)
+_nl_load_domain (domain_file, domainbinding)
      struct loaded_l10nfile *domain_file;
+     struct binding *domainbinding;
 {
   int fd;
   size_t size;
+#ifdef _LIBC
+  struct stat64 st;
+#else
   struct stat st;
+#endif
   struct mo_file_header *data = (struct mo_file_header *) -1;
-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
-    || defined _LIBC
   int use_mmap = 0;
-#endif
   struct loaded_domain *domain;
+  const char *nullentry;
 
   domain_file->decided = 1;
   domain_file->data = NULL;
 
+  /* Note that it would be useless to store domainbinding in domain_file
+     because domainbinding might be == NULL now but != NULL later (after
+     a call to bind_textdomain_codeset).  */
+
   /* If the record does not represent a valid locale the FILENAME
      might be NULL.  This can happen when according to the given
      specification the locale file name is different for XPG and CEN
@@ -85,28 +367,32 @@ _nl_load_domain (domain_file)
     return;
 
   /* Try to open the addressed file.  */
-  fd = open (domain_file->filename, O_RDONLY);
+  fd = open (domain_file->filename, O_RDONLY | O_BINARY);
   if (fd == -1)
     return;
 
   /* We must know about the size of the file.  */
-  if (fstat (fd, &st) != 0
-      || (size = (size_t) st.st_size) != st.st_size
-      || size < sizeof (struct mo_file_header))
+  if (
+#ifdef _LIBC
+      __builtin_expect (fstat64 (fd, &st) != 0, 0)
+#else
+      __builtin_expect (fstat (fd, &st) != 0, 0)
+#endif
+      || __builtin_expect ((size = (size_t) st.st_size) != st.st_size, 0)
+      || __builtin_expect (size < sizeof (struct mo_file_header), 0))
     {
       /* Something went wrong.  */
       close (fd);
       return;
     }
 
-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
-    || defined _LIBC
+#ifdef HAVE_MMAP
   /* Now we are ready to load the file.  If mmap() is available we try
      this first.  If not available or it failed we try to load it.  */
   data = (struct mo_file_header *) mmap (NULL, size, PROT_READ,
                                         MAP_PRIVATE, fd, 0);
 
-  if (data != (struct mo_file_header *) -1)
+  if (__builtin_expect (data != (struct mo_file_header *) -1, 1))
     {
       /* mmap() call was successful.  */
       close (fd);
@@ -130,12 +416,15 @@ _nl_load_domain (domain_file)
       do
        {
          long int nb = (long int) read (fd, read_ptr, to_read);
-         if (nb == -1)
+         if (nb <= 0)
            {
+#ifdef EINTR
+             if (nb == -1 && errno == EINTR)
+               continue;
+#endif
              close (fd);
              return;
            }
-
          read_ptr += nb;
          to_read -= nb;
        }
@@ -146,11 +435,11 @@ _nl_load_domain (domain_file)
 
   /* Using the magic number we can test whether it really is a message
      catalog file.  */
-  if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED)
+  if (__builtin_expect (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED,
+                       0))
     {
       /* The magic number is wrong: not a message catalog file.  */
-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
-    || defined _LIBC
+#ifdef HAVE_MMAP
       if (use_mmap)
        munmap ((caddr_t) data, size);
       else
@@ -159,17 +448,13 @@ _nl_load_domain (domain_file)
       return;
     }
 
-  domain_file->data
-    = (struct loaded_domain *) malloc (sizeof (struct loaded_domain));
-  if (domain_file->data == NULL)
+  domain = (struct loaded_domain *) malloc (sizeof (struct loaded_domain));
+  if (domain == NULL)
     return;
+  domain_file->data = domain;
 
-  domain = (struct loaded_domain *) domain_file->data;
   domain->data = (char *) data;
-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
-    || defined _LIBC
   domain->use_mmap = use_mmap;
-#endif
   domain->mmap_size = size;
   domain->must_swap = data->magic != _MAGIC;
 
@@ -187,9 +472,8 @@ _nl_load_domain (domain_file)
        ((char *) data + W (domain->must_swap, data->hash_tab_offset));
       break;
     default:
-      /* This is an illegal revision.  */
-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
-    || defined _LIBC
+      /* This is an invalid revision.  */
+#ifdef HAVE_MMAP
       if (use_mmap)
        munmap ((caddr_t) data, size);
       else
@@ -200,9 +484,62 @@ _nl_load_domain (domain_file)
       return;
     }
 
-  /* Show that one domain is changed.  This might make some cached
-     translations invalid.  */
-  ++_nl_msg_cat_cntr;
+  /* Now initialize the character set converter from the character set
+     the file is encoded with (found in the header entry) to the domain's
+     specified character set or the locale's character set.  */
+  nullentry = _nl_init_domain_conv (domain_file, domain, domainbinding);
+
+  /* Also look for a plural specification.  */
+  if (nullentry != NULL)
+    {
+      const char *plural;
+      const char *nplurals;
+
+      plural = strstr (nullentry, "plural=");
+      nplurals = strstr (nullentry, "nplurals=");
+      if (plural == NULL || nplurals == NULL)
+       goto no_plural;
+      else
+       {
+         /* First get the number.  */
+         char *endp;
+         unsigned long int n;
+         struct parse_args args;
+
+         nplurals += 9;
+         while (*nplurals != '\0' && isspace (*nplurals))
+           ++nplurals;
+#if defined HAVE_STRTOUL || defined _LIBC
+         n = strtoul (nplurals, &endp, 10);
+#else
+         for (endp = nplurals, n = 0; *endp >= '0' && *endp <= '9'; endp++)
+           n = n * 10 + (*endp - '0');
+#endif
+         domain->nplurals = n;
+         if (nplurals == endp)
+           goto no_plural;
+
+         /* Due to the restrictions bison imposes onto the interface of the
+            scanner function we have to put the input string and the result
+            passed up from the parser into the same structure which address
+            is passed down to the parser.  */
+         plural += 7;
+         args.cp = plural;
+         if (PLURAL_PARSE (&args) != 0)
+           goto no_plural;
+         domain->plural = args.res;
+       }
+    }
+  else
+    {
+      /* By default we are using the Germanic form: singular form only
+         for `one', the plural form otherwise.  Yes, this is also what
+         English is using since English is a Germanic language.  */
+    no_plural:
+      INIT_GERMANIC_PLURAL ();
+      domain->plural = &germanic_plural;
+      domain->nplurals = 2;
+    }
 }
 
 
@@ -212,9 +549,16 @@ internal_function
 _nl_unload_domain (domain)
      struct loaded_domain *domain;
 {
+  if (domain->plural != &germanic_plural)
+    __gettext_free_exp (domain->plural);
+
+  _nl_free_domain_conv (domain);
+
+# ifdef _POSIX_MAPPED_FILES
   if (domain->use_mmap)
     munmap ((caddr_t) domain->data, domain->mmap_size);
   else
+# endif        /* _POSIX_MAPPED_FILES */
     free ((void *) domain->data);
 
   free (domain);
diff --git a/intl/localcharset.c b/intl/localcharset.c
new file mode 100644 (file)
index 0000000..22e09e4
--- /dev/null
@@ -0,0 +1,271 @@
+/* Determine a canonical name for the current locale's character encoding.
+
+   Copyright (C) 2000-2001 Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify it
+   under the terms of the GNU Library General Public License as published
+   by the Free Software Foundation; either version 2, 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
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library 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.  */
+
+/* Written by Bruno Haible <haible@clisp.cons.org>.  */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#if HAVE_STDDEF_H
+# include <stddef.h>
+#endif
+
+#include <stdio.h>
+#if HAVE_STRING_H
+# include <string.h>
+#else
+# include <strings.h>
+#endif
+#if HAVE_STDLIB_H
+# include <stdlib.h>
+#endif
+
+#if defined _WIN32 || defined __WIN32__
+# undef WIN32   /* avoid warning on mingw32 */
+# define WIN32
+#endif
+
+#ifndef WIN32
+# if HAVE_LANGINFO_CODESET
+#  include <langinfo.h>
+# else
+#  if HAVE_SETLOCALE
+#   include <locale.h>
+#  endif
+# endif
+#else /* WIN32 */
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+#endif
+
+#ifndef DIRECTORY_SEPARATOR
+# define DIRECTORY_SEPARATOR '/'
+#endif
+
+#ifndef ISSLASH
+# define ISSLASH(C) ((C) == DIRECTORY_SEPARATOR)
+#endif
+
+/* The following static variable is declared 'volatile' to avoid a
+   possible multithread problem in the function get_charset_aliases. If we
+   are running in a threaded environment, and if two threads initialize
+   'charset_aliases' simultaneously, both will produce the same value,
+   and everything will be ok if the two assignments to 'charset_aliases'
+   are atomic. But I don't know what will happen if the two assignments mix.  */
+#if __STDC__ != 1
+# define volatile /* empty */
+#endif
+/* Pointer to the contents of the charset.alias file, if it has already been
+   read, else NULL.  Its format is:
+   ALIAS_1 '\0' CANONICAL_1 '\0' ... ALIAS_n '\0' CANONICAL_n '\0' '\0'  */
+static char * volatile charset_aliases;
+
+/* Return a pointer to the contents of the charset.alias file.  */
+static const char *
+get_charset_aliases ()
+{
+  char *cp;
+
+  cp = charset_aliases;
+  if (cp == NULL)
+    {
+#ifndef WIN32
+      FILE *fp;
+      const char *dir = LIBDIR;
+      const char *base = "charset.alias";
+      char *file_name;
+
+      /* Concatenate dir and base into freshly allocated file_name.  */
+      {
+       size_t dir_len = strlen (dir);
+       size_t base_len = strlen (base);
+       int add_slash = (dir_len > 0 && !ISSLASH (dir[dir_len - 1]));
+       file_name = (char *) malloc (dir_len + add_slash + base_len + 1);
+       if (file_name != NULL)
+         {
+           memcpy (file_name, dir, dir_len);
+           if (add_slash)
+             file_name[dir_len] = DIRECTORY_SEPARATOR;
+           memcpy (file_name + dir_len + add_slash, base, base_len + 1);
+         }
+      }
+
+      if (file_name == NULL || (fp = fopen (file_name, "r")) == NULL)
+       /* Out of memory or file not found, treat it as empty.  */
+       cp = "";
+      else
+       {
+         /* Parse the file's contents.  */
+         int c;
+         char buf1[50+1];
+         char buf2[50+1];
+         char *res_ptr = NULL;
+         size_t res_size = 0;
+         size_t l1, l2;
+
+         for (;;)
+           {
+             c = getc (fp);
+             if (c == EOF)
+               break;
+             if (c == '\n' || c == ' ' || c == '\t')
+               continue;
+             if (c == '#')
+               {
+                 /* Skip comment, to end of line.  */
+                 do
+                   c = getc (fp);
+                 while (!(c == EOF || c == '\n'));
+                 if (c == EOF)
+                   break;
+                 continue;
+               }
+             ungetc (c, fp);
+             if (fscanf(fp, "%50s %50s", buf1, buf2) < 2)
+               break;
+             l1 = strlen (buf1);
+             l2 = strlen (buf2);
+             if (res_size == 0)
+               {
+                 res_size = l1 + 1 + l2 + 1;
+                 res_ptr = malloc (res_size + 1);
+               }
+             else
+               {
+                 res_size += l1 + 1 + l2 + 1;
+                 res_ptr = realloc (res_ptr, res_size + 1);
+               }
+             if (res_ptr == NULL)
+               {
+                 /* Out of memory. */
+                 res_size = 0;
+                 break;
+               }
+             strcpy (res_ptr + res_size - (l2 + 1) - (l1 + 1), buf1);
+             strcpy (res_ptr + res_size - (l2 + 1), buf2);
+           }
+         fclose (fp);
+         if (res_size == 0)
+           cp = "";
+         else
+           {
+             *(res_ptr + res_size) = '\0';
+             cp = res_ptr;
+           }
+       }
+
+      if (file_name != NULL)
+       free (file_name);
+
+#else /* WIN32 */
+
+      /* To avoid the troubles of installing a separate file in the same
+        directory as the DLL and of retrieving the DLL's directory at
+        runtime, simply inline the aliases here.  */
+
+      cp = "CP936" "\0" "GBK" "\0"
+          "CP1361" "\0" "JOHAB" "\0";
+#endif
+
+      charset_aliases = cp;
+    }
+
+  return cp;
+}
+
+/* Determine the current locale's character encoding, and canonicalize it
+   into one of the canonical names listed in config.charset.
+   The result must not be freed; it is statically allocated.
+   If the canonical name cannot be determined, the result is a non-canonical
+   name.  */
+
+#ifdef STATIC
+STATIC
+#endif
+const char *
+locale_charset ()
+{
+  const char *codeset;
+  const char *aliases;
+
+#ifndef WIN32
+
+# if HAVE_LANGINFO_CODESET
+
+  /* Most systems support nl_langinfo (CODESET) nowadays.  */
+  codeset = nl_langinfo (CODESET);
+
+# else
+
+  /* On old systems which lack it, use setlocale or getenv.  */
+  const char *locale = NULL;
+
+  /* But most old systems don't have a complete set of locales.  Some
+     (like SunOS 4 or DJGPP) have only the C locale.  Therefore we don't
+     use setlocale here; it would return "C" when it doesn't support the
+     locale name the user has set.  */
+#  if HAVE_SETLOCALE && 0
+  locale = setlocale (LC_CTYPE, NULL);
+#  endif
+  if (locale == NULL || locale[0] == '\0')
+    {
+      locale = getenv ("LC_ALL");
+      if (locale == NULL || locale[0] == '\0')
+       {
+         locale = getenv ("LC_CTYPE");
+         if (locale == NULL || locale[0] == '\0')
+           locale = getenv ("LANG");
+       }
+    }
+
+  /* On some old systems, one used to set locale = "iso8859_1". On others,
+     you set it to "language_COUNTRY.charset". In any case, we resolve it
+     through the charset.alias file.  */
+  codeset = locale;
+
+# endif
+
+#else /* WIN32 */
+
+  static char buf[2 + 10 + 1];
+
+  /* Win32 has a function returning the locale's codepage as a number.  */
+  sprintf (buf, "CP%u", GetACP ());
+  codeset = buf;
+
+#endif
+
+  if (codeset == NULL)
+    /* The canonical name cannot be determined.  */
+    codeset = "";
+
+  /* Resolve alias. */
+  for (aliases = get_charset_aliases ();
+       *aliases != '\0';
+       aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1)
+    if (strcmp (codeset, aliases) == 0
+       || (aliases[0] == '*' && aliases[1] == '\0'))
+      {
+       codeset = aliases + strlen (aliases) + 1;
+       break;
+      }
+
+  return codeset;
+}
diff --git a/intl/locale.alias b/intl/locale.alias
new file mode 100644 (file)
index 0000000..48940f7
--- /dev/null
@@ -0,0 +1,77 @@
+# Locale name alias data base.
+# Copyright (C) 1996,1997,1998,1999,2000,2001 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
+# the Free Software Foundation; either version 2, 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.
+
+# The format of this file is the same as for the corresponding file of
+# the X Window System, which normally can be found in
+#      /usr/lib/X11/locale/locale.alias
+# A single line contains two fields: an alias and a substitution value.
+# All entries are case independent.
+
+# Note: This file is far from being complete.  If you have a value for
+# your own site which you think might be useful for others too, share
+# it with the rest of us.  Send it using the `glibcbug' script to
+# bugs@gnu.org.
+
+# Packages using this file: 
+
+bokmal         no_NO.ISO-8859-1
+bokmål         no_NO.ISO-8859-1
+catalan                ca_ES.ISO-8859-1
+croatian       hr_HR.ISO-8859-2
+czech          cs_CZ.ISO-8859-2
+danish          da_DK.ISO-8859-1
+dansk          da_DK.ISO-8859-1
+deutsch                de_DE.ISO-8859-1
+dutch          nl_NL.ISO-8859-1
+eesti          et_EE.ISO-8859-1
+estonian       et_EE.ISO-8859-1
+finnish         fi_FI.ISO-8859-1
+français       fr_FR.ISO-8859-1
+french         fr_FR.ISO-8859-1
+galego         gl_ES.ISO-8859-1
+galician       gl_ES.ISO-8859-1
+german         de_DE.ISO-8859-1
+greek           el_GR.ISO-8859-7
+hebrew          iw_IL.ISO-8859-8
+hrvatski       hr_HR.ISO-8859-2
+hungarian       hu_HU.ISO-8859-2
+icelandic       is_IS.ISO-8859-1
+italian         it_IT.ISO-8859-1
+japanese       ja_JP.eucJP
+japanese.euc   ja_JP.eucJP
+ja_JP          ja_JP.eucJP
+ja_JP.ujis     ja_JP.eucJP
+japanese.sjis  ja_JP.SJIS
+korean         ko_KR.eucKR
+korean.euc     ko_KR.eucKR
+ko_KR          ko_KR.eucKR
+lithuanian      lt_LT.ISO-8859-13
+nb_NO          no_NO.ISO-8859-1
+nb_NO.ISO-8859-1 no_NO.ISO-8859-1
+norwegian       no_NO.ISO-8859-1
+nynorsk                nn_NO.ISO-8859-1
+polish          pl_PL.ISO-8859-2
+portuguese      pt_PT.ISO-8859-1
+romanian        ro_RO.ISO-8859-2
+russian         ru_RU.ISO-8859-5
+slovak          sk_SK.ISO-8859-2
+slovene         sl_SI.ISO-8859-2
+slovenian       sl_SI.ISO-8859-2
+spanish         es_ES.ISO-8859-1
+swedish         sv_SE.ISO-8859-1
+thai           th_TH.TIS-620
+turkish         tr_TR.ISO-8859-9
index bca555a610fd1957108b6e6efbb7eb853a250d9d..76f19a9aae08be1e7346d4f65b28f7ee2558446f 100644 (file)
@@ -1,6 +1,5 @@
 /* Handle aliases for locale names.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
+   Copyright (C) 1995-1999, 2000, 2001 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
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 
+/* Tell glibc's <string.h> to provide a prototype for mempcpy().
+   This must come before <config.h> because <config.h> may include
+   <features.h>, and once <features.h> has been included, it's too late.  */
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE    1
+#endif
+
 #ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
@@ -41,35 +47,15 @@ char *alloca ();
 # endif
 #endif
 
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#else
-char *getenv ();
-# ifdef HAVE_MALLOC_H
-#  include <malloc.h>
-# else
-void free ();
-# endif
-#endif
+#include <stdlib.h>
 
-#if defined HAVE_STRING_H || defined _LIBC
-# ifndef _GNU_SOURCE
-#  define _GNU_SOURCE  1
-# endif
-# include <string.h>
-#else
-# include <strings.h>
-# ifndef memcpy
-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
-# endif
-#endif
+#include <string.h>
 #if !HAVE_STRCHR && !defined _LIBC
 # ifndef strchr
 #  define strchr index
 # endif
 #endif
 
-#include "gettext.h"
 #include "gettextP.h"
 
 /* @@ end of prolog @@ */
@@ -80,7 +66,9 @@ void free ();
    file and the name space must not be polluted.  */
 # define strcasecmp __strcasecmp
 
-# define mempcpy __mempcpy
+# ifndef mempcpy
+#  define mempcpy __mempcpy
+# endif
 # define HAVE_MEMPCPY  1
 
 /* We need locking here since we can be called from different places.  */
@@ -89,41 +77,27 @@ void free ();
 __libc_lock_define_initialized (static, lock);
 #endif
 
+#ifndef internal_function
+# define internal_function
+#endif
 
-/* For those loosing systems which don't have `alloca' we have to add
+/* For those losing systems which don't have `alloca' we have to add
    some additional code emulating it.  */
 #ifdef HAVE_ALLOCA
-/* Nothing has to be done.  */
-# define ADD_BLOCK(list, address) /* nothing */
-# define FREE_BLOCKS(list) /* nothing */
+# define freea(p) /* nothing */
 #else
-struct block_list
-{
-  void *address;
-  struct block_list *next;
-};
-# define ADD_BLOCK(list, addr)                                               \
-  do {                                                                       \
-    struct block_list *newp = (struct block_list *) malloc (sizeof (*newp));  \
-    /* If we cannot get a free block we cannot add the new element to        \
-       the list.  */                                                         \
-    if (newp != NULL) {                                                              \
-      newp->address = (addr);                                                \
-      newp->next = (list);                                                   \
-      (list) = newp;                                                         \
-    }                                                                        \
-  } while (0)
-# define FREE_BLOCKS(list)                                                   \
-  do {                                                                       \
-    while (list != NULL) {                                                   \
-      struct block_list *old = list;                                         \
-      list = list->next;                                                     \
-      free (old);                                                            \
-    }                                                                        \
-  } while (0)
-# undef alloca
-# define alloca(size) (malloc (size))
-#endif /* have alloca */
+# define alloca(n) malloc (n)
+# define freea(p) free (p)
+#endif
+
+#if defined _LIBC_REENTRANT || defined HAVE_FGETS_UNLOCKED
+# undef fgets
+# define fgets(buf, len, s) fgets_unlocked (buf, len, s)
+#endif
+#if defined _LIBC_REENTRANT || defined HAVE_FEOF_UNLOCKED
+# undef feof
+# define feof(s) feof_unlocked (s)
+#endif
 
 
 struct alias_map
@@ -133,18 +107,18 @@ struct alias_map
 };
 
 
-static char *string_space = NULL;
-static size_t string_space_act = 0;
-static size_t string_space_max = 0;
+static char *string_space;
+static size_t string_space_act;
+static size_t string_space_max;
 static struct alias_map *map;
-static size_t nmap = 0;
-static size_t maxmap = 0;
+static size_t nmap;
+static size_t maxmap;
 
 
 /* Prototypes for local functions.  */
 static size_t read_alias_file PARAMS ((const char *fname, int fname_len))
      internal_function;
-static void extend_alias_table PARAMS ((void));
+static int extend_alias_table PARAMS ((void));
 static int alias_compare PARAMS ((const struct alias_map *map1,
                                  const struct alias_map *map2));
 
@@ -190,11 +164,12 @@ _nl_expand_alias (name)
        {
          const char *start;
 
-         while (locale_alias_path[0] == ':')
+         while (locale_alias_path[0] == PATH_SEPARATOR)
            ++locale_alias_path;
          start = locale_alias_path;
 
-         while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':')
+         while (locale_alias_path[0] != '\0'
+                && locale_alias_path[0] != PATH_SEPARATOR)
            ++locale_alias_path;
 
          if (start < locale_alias_path)
@@ -217,16 +192,12 @@ read_alias_file (fname, fname_len)
      const char *fname;
      int fname_len;
 {
-#ifndef HAVE_ALLOCA
-  struct block_list *block_list = NULL;
-#endif
   FILE *fp;
   char *full_fname;
   size_t added;
   static const char aliasfile[] = "/locale.alias";
 
   full_fname = (char *) alloca (fname_len + sizeof aliasfile);
-  ADD_BLOCK (block_list, full_fname);
 #ifdef HAVE_MEMPCPY
   mempcpy (mempcpy (full_fname, fname, fname_len),
           aliasfile, sizeof aliasfile);
@@ -236,11 +207,9 @@ read_alias_file (fname, fname_len)
 #endif
 
   fp = fopen (full_fname, "r");
+  freea (full_fname);
   if (fp == NULL)
-    {
-      FREE_BLOCKS (block_list);
-      return 0;
-    }
+    return 0;
 
   added = 0;
   while (!feof (fp))
@@ -250,10 +219,10 @@ read_alias_file (fname, fname_len)
         b) these fields must be usable as file names and so must not
            be that long
        */
-      unsigned char buf[BUFSIZ];
-      unsigned char *alias;
-      unsigned char *value;
-      unsigned char *cp;
+      char buf[BUFSIZ];
+      char *alias;
+      char *value;
+      char *cp;
 
       if (fgets (buf, sizeof buf, fp) == NULL)
        /* EOF reached.  */
@@ -312,7 +281,8 @@ read_alias_file (fname, fname_len)
                *cp++ = '\0';
 
              if (nmap >= maxmap)
-               extend_alias_table ();
+               if (__builtin_expect (extend_alias_table (), 0))
+                 return added;
 
              alias_len = strlen (alias) + 1;
              value_len = strlen (value) + 1;
@@ -325,10 +295,19 @@ read_alias_file (fname, fname_len)
                                        ? alias_len + value_len : 1024));
                  char *new_pool = (char *) realloc (string_space, new_size);
                  if (new_pool == NULL)
+                   return added;
+
+                 if (__builtin_expect (string_space != new_pool, 0))
                    {
-                     FREE_BLOCKS (block_list);
-                     return added;
+                     size_t i;
+
+                     for (i = 0; i < nmap; i++)
+                       {
+                         map[i].alias += new_pool - string_space;
+                         map[i].value += new_pool - string_space;
+                       }
                    }
+
                  string_space = new_pool;
                  string_space_max = new_size;
                }
@@ -355,12 +334,11 @@ read_alias_file (fname, fname_len)
     qsort (map, nmap, sizeof (struct alias_map),
           (int (*) PARAMS ((const void *, const void *))) alias_compare);
 
-  FREE_BLOCKS (block_list);
   return added;
 }
 
 
-static void
+static int
 extend_alias_table ()
 {
   size_t new_size;
@@ -371,10 +349,11 @@ extend_alias_table ()
                                                * sizeof (struct alias_map)));
   if (new_map == NULL)
     /* Simply don't extend: we don't have any more core.  */
-    return;
+    return -1;
 
   map = new_map;
   maxmap = new_size;
+  return 0;
 }
 
 
diff --git a/intl/ngettext.c b/intl/ngettext.c
new file mode 100644 (file)
index 0000000..8b1fa02
--- /dev/null
@@ -0,0 +1,67 @@
+/* Implementation of ngettext(3) function.
+   Copyright (C) 1995, 1997, 2000, 2001 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
+   the Free Software Foundation; either version 2, 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.  */
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#ifdef _LIBC
+# define __need_NULL
+# include <stddef.h>
+#else
+# include <stdlib.h>           /* Just for NULL.  */
+#endif
+
+#include "gettextP.h"
+#ifdef _LIBC
+# include <libintl.h>
+#else
+# include "libgnuintl.h"
+#endif
+
+#include <locale.h>
+
+/* @@ end of prolog @@ */
+
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define NGETTEXT __ngettext
+# define DCNGETTEXT __dcngettext
+#else
+# define NGETTEXT ngettext__
+# define DCNGETTEXT dcngettext__
+#endif
+
+/* Look up MSGID in the current default message catalog for the current
+   LC_MESSAGES locale.  If not found, returns MSGID itself (the default
+   text).  */
+char *
+NGETTEXT (msgid1, msgid2, n)
+     const char *msgid1;
+     const char *msgid2;
+     unsigned long int n;
+{
+  return DCNGETTEXT (NULL, msgid1, msgid2, n, LC_MESSAGES);
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library.  */
+weak_alias (__ngettext, ngettext);
+#endif
diff --git a/intl/plural.c b/intl/plural.c
new file mode 100644 (file)
index 0000000..8191335
--- /dev/null
@@ -0,0 +1,1325 @@
+
+/*  A Bison parser, made from plural.y
+    by GNU Bison version 1.28  */
+
+#define YYBISON 1  /* Identify Bison output.  */
+
+#define yyparse __gettextparse
+#define yylex __gettextlex
+#define yyerror __gettexterror
+#define yylval __gettextlval
+#define yychar __gettextchar
+#define yydebug __gettextdebug
+#define yynerrs __gettextnerrs
+#define        EQUOP2  257
+#define        CMPOP2  258
+#define        ADDOP2  259
+#define        MULOP2  260
+#define        NUMBER  261
+
+#line 1 "plural.y"
+
+/* Expression parsing for plural form selection.
+   Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+   Written by Ulrich Drepper <drepper@cygnus.com>, 2000.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   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.  */
+
+/* The bison generated parser uses alloca.  AIX 3 forces us to put this
+   declaration at the beginning of the file.  The declaration in bison's
+   skeleton file comes too late.  This must come before <config.h>
+   because <config.h> may include arbitrary system headers.  */
+#if defined _AIX && !defined __GNUC__
+ #pragma alloca
+#endif
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "gettextP.h"
+
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define FREE_EXPRESSION __gettext_free_exp
+#else
+# define FREE_EXPRESSION gettext_free_exp__
+# define __gettextparse gettextparse__
+#endif
+
+#define YYLEX_PARAM    &((struct parse_args *) arg)->cp
+#define YYPARSE_PARAM  arg
+
+#line 52 "plural.y"
+typedef union {
+  unsigned long int num;
+  enum operator op;
+  struct expression *exp;
+} YYSTYPE;
+#line 58 "plural.y"
+
+/* Prototypes for local functions.  */
+static struct expression *new_exp PARAMS ((int nargs, enum operator op,
+                                          struct expression * const *args));
+static inline struct expression *new_exp_0 PARAMS ((enum operator op));
+static inline struct expression *new_exp_1 PARAMS ((enum operator op,
+                                                  struct expression *right));
+static struct expression *new_exp_2 PARAMS ((enum operator op,
+                                            struct expression *left,
+                                            struct expression *right));
+static inline struct expression *new_exp_3 PARAMS ((enum operator op,
+                                                  struct expression *bexp,
+                                                  struct expression *tbranch,
+                                                  struct expression *fbranch));
+static int yylex PARAMS ((YYSTYPE *lval, const char **pexp));
+static void yyerror PARAMS ((const char *str));
+
+/* Allocation of expressions.  */
+
+static struct expression *
+new_exp (nargs, op, args)
+     int nargs;
+     enum operator op;
+     struct expression * const *args;
+{
+  int i;
+  struct expression *newp;
+
+  /* If any of the argument could not be malloc'ed, just return NULL.  */
+  for (i = nargs - 1; i >= 0; i--)
+    if (args[i] == NULL)
+      goto fail;
+
+  /* Allocate a new expression.  */
+  newp = (struct expression *) malloc (sizeof (*newp));
+  if (newp != NULL)
+    {
+      newp->nargs = nargs;
+      newp->operation = op;
+      for (i = nargs - 1; i >= 0; i--)
+       newp->val.args[i] = args[i];
+      return newp;
+    }
+
+ fail:
+  for (i = nargs - 1; i >= 0; i--)
+    FREE_EXPRESSION (args[i]);
+
+  return NULL;
+}
+
+static inline struct expression *
+new_exp_0 (op)
+     enum operator op;
+{
+  return new_exp (0, op, NULL);
+}
+
+static inline struct expression *
+new_exp_1 (op, right)
+     enum operator op;
+     struct expression *right;
+{
+  struct expression *args[1];
+
+  args[0] = right;
+  return new_exp (1, op, args);
+}
+
+static struct expression *
+new_exp_2 (op, left, right)
+     enum operator op;
+     struct expression *left;
+     struct expression *right;
+{
+  struct expression *args[2];
+
+  args[0] = left;
+  args[1] = right;
+  return new_exp (2, op, args);
+}
+
+static inline struct expression *
+new_exp_3 (op, bexp, tbranch, fbranch)
+     enum operator op;
+     struct expression *bexp;
+     struct expression *tbranch;
+     struct expression *fbranch;
+{
+  struct expression *args[3];
+
+  args[0] = bexp;
+  args[1] = tbranch;
+  args[2] = fbranch;
+  return new_exp (3, op, args);
+}
+
+#include <stdio.h>
+
+#ifndef __cplusplus
+#ifndef __STDC__
+#define const
+#endif
+#endif
+
+
+
+#define        YYFINAL         27
+#define        YYFLAG          -32768
+#define        YYNTBASE        16
+
+#define YYTRANSLATE(x) ((unsigned)(x) <= 261 ? yytranslate[x] : 18)
+
+static const char yytranslate[] = {     0,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,    10,     2,     2,     2,     2,     5,     2,    14,
+    15,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,    12,     2,     2,
+     2,     2,     3,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,    13,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     4,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
+     2,     2,     2,     2,     2,     1,     6,     7,     8,     9,
+    11
+};
+
+#if YYDEBUG != 0
+static const short yyprhs[] = {     0,
+     0,     2,     8,    12,    16,    20,    24,    28,    32,    35,
+    37,    39
+};
+
+static const short yyrhs[] = {    17,
+     0,    17,     3,    17,    12,    17,     0,    17,     4,    17,
+     0,    17,     5,    17,     0,    17,     6,    17,     0,    17,
+     7,    17,     0,    17,     8,    17,     0,    17,     9,    17,
+     0,    10,    17,     0,    13,     0,    11,     0,    14,    17,
+    15,     0
+};
+
+#endif
+
+#if YYDEBUG != 0
+static const short yyrline[] = { 0,
+   177,   185,   189,   193,   197,   201,   205,   209,   213,   217,
+   221,   226
+};
+#endif
+
+
+#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
+
+static const char * const yytname[] = {   "$","error","$undefined.","'?'","'|'",
+"'&'","EQUOP2","CMPOP2","ADDOP2","MULOP2","'!'","NUMBER","':'","'n'","'('","')'",
+"start","exp", NULL
+};
+#endif
+
+static const short yyr1[] = {     0,
+    16,    17,    17,    17,    17,    17,    17,    17,    17,    17,
+    17,    17
+};
+
+static const short yyr2[] = {     0,
+     1,     5,     3,     3,     3,     3,     3,     3,     2,     1,
+     1,     3
+};
+
+static const short yydefact[] = {     0,
+     0,    11,    10,     0,     1,     9,     0,     0,     0,     0,
+     0,     0,     0,     0,    12,     0,     3,     4,     5,     6,
+     7,     8,     0,     2,     0,     0,     0
+};
+
+static const short yydefgoto[] = {    25,
+     5
+};
+
+static const short yypact[] = {    -9,
+    -9,-32768,-32768,    -9,    34,-32768,    11,    -9,    -9,    -9,
+    -9,    -9,    -9,    -9,-32768,    24,    39,    43,    16,    26,
+    -3,-32768,    -9,    34,    21,    53,-32768
+};
+
+static const short yypgoto[] = {-32768,
+    -1
+};
+
+
+#define        YYLAST          53
+
+
+static const short yytable[] = {     6,
+     1,     2,     7,     3,     4,    14,    16,    17,    18,    19,
+    20,    21,    22,     8,     9,    10,    11,    12,    13,    14,
+    26,    24,    12,    13,    14,    15,     8,     9,    10,    11,
+    12,    13,    14,    13,    14,    23,     8,     9,    10,    11,
+    12,    13,    14,    10,    11,    12,    13,    14,    11,    12,
+    13,    14,    27
+};
+
+static const short yycheck[] = {     1,
+    10,    11,     4,    13,    14,     9,     8,     9,    10,    11,
+    12,    13,    14,     3,     4,     5,     6,     7,     8,     9,
+     0,    23,     7,     8,     9,    15,     3,     4,     5,     6,
+     7,     8,     9,     8,     9,    12,     3,     4,     5,     6,
+     7,     8,     9,     5,     6,     7,     8,     9,     6,     7,
+     8,     9,     0
+};
+#define YYPURE 1
+
+/* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
+#line 3 "/home/haible/gnu/arch/linuxlibc6/share/bison.simple"
+/* This file comes from bison-1.28.  */
+
+/* Skeleton output parser for bison,
+   Copyright (C) 1984, 1989, 1990 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
+   the Free Software Foundation; either version 2, 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.  */
+
+/* As a special exception, when this file is copied by Bison into a
+   Bison output file, you may use that output file without restriction.
+   This special exception was added by the Free Software Foundation
+   in version 1.24 of Bison.  */
+
+/* This is the parser code that is written into each bison parser
+  when the %semantic_parser declaration is not specified in the grammar.
+  It was written by Richard Stallman by simplifying the hairy parser
+  used when %semantic_parser is specified.  */
+
+#ifndef YYSTACK_USE_ALLOCA
+#ifdef alloca
+#define YYSTACK_USE_ALLOCA
+#else /* alloca not defined */
+#ifdef __GNUC__
+#define YYSTACK_USE_ALLOCA
+#define alloca __builtin_alloca
+#else /* not GNU C.  */
+#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
+#define YYSTACK_USE_ALLOCA
+#include <alloca.h>
+#else /* not sparc */
+/* We think this test detects Watcom and Microsoft C.  */
+/* This used to test MSDOS, but that is a bad idea
+   since that symbol is in the user namespace.  */
+#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
+#if 0 /* No need for malloc.h, which pollutes the namespace;
+        instead, just don't use alloca.  */
+#include <malloc.h>
+#endif
+#else /* not MSDOS, or __TURBOC__ */
+#if defined(_AIX)
+/* I don't know what this was needed for, but it pollutes the namespace.
+   So I turned it off.   rms, 2 May 1997.  */
+/* #include <malloc.h>  */
+ #pragma alloca
+#define YYSTACK_USE_ALLOCA
+#else /* not MSDOS, or __TURBOC__, or _AIX */
+#if 0
+#ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
+                and on HPUX 10.  Eventually we can turn this on.  */
+#define YYSTACK_USE_ALLOCA
+#define alloca __builtin_alloca
+#endif /* __hpux */
+#endif
+#endif /* not _AIX */
+#endif /* not MSDOS, or __TURBOC__ */
+#endif /* not sparc */
+#endif /* not GNU C */
+#endif /* alloca not defined */
+#endif /* YYSTACK_USE_ALLOCA not defined */
+
+#ifdef YYSTACK_USE_ALLOCA
+#define YYSTACK_ALLOC alloca
+#else
+#define YYSTACK_ALLOC malloc
+#endif
+
+/* Note: there must be only one dollar sign in this file.
+   It is replaced by the list of actions, each action
+   as one case of the switch.  */
+
+#define yyerrok                (yyerrstatus = 0)
+#define yyclearin      (yychar = YYEMPTY)
+#define YYEMPTY                -2
+#define YYEOF          0
+#define YYACCEPT       goto yyacceptlab
+#define YYABORT        goto yyabortlab
+#define YYERROR                goto yyerrlab1
+/* Like YYERROR except do call yyerror.
+   This remains here temporarily to ease the
+   transition to the new meaning of YYERROR, for GCC.
+   Once GCC version 2 has supplanted version 1, this can go.  */
+#define YYFAIL         goto yyerrlab
+#define YYRECOVERING()  (!!yyerrstatus)
+#define YYBACKUP(token, value) \
+do                                                             \
+  if (yychar == YYEMPTY && yylen == 1)                         \
+    { yychar = (token), yylval = (value);                      \
+      yychar1 = YYTRANSLATE (yychar);                          \
+      YYPOPSTACK;                                              \
+      goto yybackup;                                           \
+    }                                                          \
+  else                                                         \
+    { yyerror ("syntax error: cannot back up"); YYERROR; }     \
+while (0)
+
+#define YYTERROR       1
+#define YYERRCODE      256
+
+#ifndef YYPURE
+#define YYLEX          yylex()
+#endif
+
+#ifdef YYPURE
+#ifdef YYLSP_NEEDED
+#ifdef YYLEX_PARAM
+#define YYLEX          yylex(&yylval, &yylloc, YYLEX_PARAM)
+#else
+#define YYLEX          yylex(&yylval, &yylloc)
+#endif
+#else /* not YYLSP_NEEDED */
+#ifdef YYLEX_PARAM
+#define YYLEX          yylex(&yylval, YYLEX_PARAM)
+#else
+#define YYLEX          yylex(&yylval)
+#endif
+#endif /* not YYLSP_NEEDED */
+#endif
+
+/* If nonreentrant, generate the variables here */
+
+#ifndef YYPURE
+
+int    yychar;                 /*  the lookahead symbol                */
+YYSTYPE        yylval;                 /*  the semantic value of the           */
+                               /*  lookahead symbol                    */
+
+#ifdef YYLSP_NEEDED
+YYLTYPE yylloc;                        /*  location data for the lookahead     */
+                               /*  symbol                              */
+#endif
+
+int yynerrs;                   /*  number of parse errors so far       */
+#endif  /* not YYPURE */
+
+#if YYDEBUG != 0
+int yydebug;                   /*  nonzero means print parse trace     */
+/* Since this is uninitialized, it does not stop multiple parsers
+   from coexisting.  */
+#endif
+
+/*  YYINITDEPTH indicates the initial size of the parser's stacks      */
+
+#ifndef        YYINITDEPTH
+#define YYINITDEPTH 200
+#endif
+
+/*  YYMAXDEPTH is the maximum size the stacks can grow to
+    (effective only if the built-in stack extension method is used).  */
+
+#if YYMAXDEPTH == 0
+#undef YYMAXDEPTH
+#endif
+
+#ifndef YYMAXDEPTH
+#define YYMAXDEPTH 10000
+#endif
+\f
+/* Define __yy_memcpy.  Note that the size argument
+   should be passed with type unsigned int, because that is what the non-GCC
+   definitions require.  With GCC, __builtin_memcpy takes an arg
+   of type size_t, but it can handle unsigned int.  */
+
+#if __GNUC__ > 1               /* GNU C and GNU C++ define this.  */
+#define __yy_memcpy(TO,FROM,COUNT)     __builtin_memcpy(TO,FROM,COUNT)
+#else                          /* not GNU C or C++ */
+#ifndef __cplusplus
+
+/* This is the most reliable way to avoid incompatibilities
+   in available built-in functions on various systems.  */
+static void
+__yy_memcpy (to, from, count)
+     char *to;
+     char *from;
+     unsigned int count;
+{
+  register char *f = from;
+  register char *t = to;
+  register int i = count;
+
+  while (i-- > 0)
+    *t++ = *f++;
+}
+
+#else /* __cplusplus */
+
+/* This is the most reliable way to avoid incompatibilities
+   in available built-in functions on various systems.  */
+static void
+__yy_memcpy (char *to, char *from, unsigned int count)
+{
+  register char *t = to;
+  register char *f = from;
+  register int i = count;
+
+  while (i-- > 0)
+    *t++ = *f++;
+}
+
+#endif
+#endif
+\f
+#line 217 "/home/haible/gnu/arch/linuxlibc6/share/bison.simple"
+
+/* The user can define YYPARSE_PARAM as the name of an argument to be passed
+   into yyparse.  The argument should have type void *.
+   It should actually point to an object.
+   Grammar actions can access the variable by casting it
+   to the proper pointer type.  */
+
+#ifdef YYPARSE_PARAM
+#ifdef __cplusplus
+#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
+#define YYPARSE_PARAM_DECL
+#else /* not __cplusplus */
+#define YYPARSE_PARAM_ARG YYPARSE_PARAM
+#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
+#endif /* not __cplusplus */
+#else /* not YYPARSE_PARAM */
+#define YYPARSE_PARAM_ARG
+#define YYPARSE_PARAM_DECL
+#endif /* not YYPARSE_PARAM */
+
+/* Prevent warning if -Wstrict-prototypes.  */
+#ifdef __GNUC__
+#ifdef YYPARSE_PARAM
+int yyparse (void *);
+#else
+int yyparse (void);
+#endif
+#endif
+
+int
+yyparse(YYPARSE_PARAM_ARG)
+     YYPARSE_PARAM_DECL
+{
+  register int yystate;
+  register int yyn;
+  register short *yyssp;
+  register YYSTYPE *yyvsp;
+  int yyerrstatus;     /*  number of tokens to shift before error messages enabled */
+  int yychar1 = 0;             /*  lookahead token as an internal (translated) token number */
+
+  short        yyssa[YYINITDEPTH];     /*  the state stack                     */
+  YYSTYPE yyvsa[YYINITDEPTH];  /*  the semantic value stack            */
+
+  short *yyss = yyssa;         /*  refer to the stacks thru separate pointers */
+  YYSTYPE *yyvs = yyvsa;       /*  to allow yyoverflow to reallocate them elsewhere */
+
+#ifdef YYLSP_NEEDED
+  YYLTYPE yylsa[YYINITDEPTH];  /*  the location stack                  */
+  YYLTYPE *yyls = yylsa;
+  YYLTYPE *yylsp;
+
+#define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
+#else
+#define YYPOPSTACK   (yyvsp--, yyssp--)
+#endif
+
+  int yystacksize = YYINITDEPTH;
+  int yyfree_stacks = 0;
+
+#ifdef YYPURE
+  int yychar;
+  YYSTYPE yylval;
+  int yynerrs;
+#ifdef YYLSP_NEEDED
+  YYLTYPE yylloc;
+#endif
+#endif
+
+  YYSTYPE yyval;               /*  the variable used to return         */
+                               /*  semantic values from the action     */
+                               /*  routines                            */
+
+  int yylen;
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Starting parse\n");
+#endif
+
+  yystate = 0;
+  yyerrstatus = 0;
+  yynerrs = 0;
+  yychar = YYEMPTY;            /* Cause a token to be read.  */
+
+  /* Initialize stack pointers.
+     Waste one element of value and location stack
+     so that they stay on the same level as the state stack.
+     The wasted elements are never initialized.  */
+
+  yyssp = yyss - 1;
+  yyvsp = yyvs;
+#ifdef YYLSP_NEEDED
+  yylsp = yyls;
+#endif
+
+/* Push a new state, which is found in  yystate  .  */
+/* In all cases, when you get here, the value and location stacks
+   have just been pushed. so pushing a state here evens the stacks.  */
+yynewstate:
+
+  *++yyssp = yystate;
+
+  if (yyssp >= yyss + yystacksize - 1)
+    {
+      /* Give user a chance to reallocate the stack */
+      /* Use copies of these so that the &'s don't force the real ones into memory. */
+      YYSTYPE *yyvs1 = yyvs;
+      short *yyss1 = yyss;
+#ifdef YYLSP_NEEDED
+      YYLTYPE *yyls1 = yyls;
+#endif
+
+      /* Get the current used size of the three stacks, in elements.  */
+      int size = yyssp - yyss + 1;
+
+#ifdef yyoverflow
+      /* Each stack pointer address is followed by the size of
+        the data in use in that stack, in bytes.  */
+#ifdef YYLSP_NEEDED
+      /* This used to be a conditional around just the two extra args,
+        but that might be undefined if yyoverflow is a macro.  */
+      yyoverflow("parser stack overflow",
+                &yyss1, size * sizeof (*yyssp),
+                &yyvs1, size * sizeof (*yyvsp),
+                &yyls1, size * sizeof (*yylsp),
+                &yystacksize);
+#else
+      yyoverflow("parser stack overflow",
+                &yyss1, size * sizeof (*yyssp),
+                &yyvs1, size * sizeof (*yyvsp),
+                &yystacksize);
+#endif
+
+      yyss = yyss1; yyvs = yyvs1;
+#ifdef YYLSP_NEEDED
+      yyls = yyls1;
+#endif
+#else /* no yyoverflow */
+      /* Extend the stack our own way.  */
+      if (yystacksize >= YYMAXDEPTH)
+       {
+         yyerror("parser stack overflow");
+         if (yyfree_stacks)
+           {
+             free (yyss);
+             free (yyvs);
+#ifdef YYLSP_NEEDED
+             free (yyls);
+#endif
+           }
+         return 2;
+       }
+      yystacksize *= 2;
+      if (yystacksize > YYMAXDEPTH)
+       yystacksize = YYMAXDEPTH;
+#ifndef YYSTACK_USE_ALLOCA
+      yyfree_stacks = 1;
+#endif
+      yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp));
+      __yy_memcpy ((char *)yyss, (char *)yyss1,
+                  size * (unsigned int) sizeof (*yyssp));
+      yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp));
+      __yy_memcpy ((char *)yyvs, (char *)yyvs1,
+                  size * (unsigned int) sizeof (*yyvsp));
+#ifdef YYLSP_NEEDED
+      yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp));
+      __yy_memcpy ((char *)yyls, (char *)yyls1,
+                  size * (unsigned int) sizeof (*yylsp));
+#endif
+#endif /* no yyoverflow */
+
+      yyssp = yyss + size - 1;
+      yyvsp = yyvs + size - 1;
+#ifdef YYLSP_NEEDED
+      yylsp = yyls + size - 1;
+#endif
+
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Stack size increased to %d\n", yystacksize);
+#endif
+
+      if (yyssp >= yyss + yystacksize - 1)
+       YYABORT;
+    }
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Entering state %d\n", yystate);
+#endif
+
+  goto yybackup;
+ yybackup:
+
+/* Do appropriate processing given the current state.  */
+/* Read a lookahead token if we need one and don't already have one.  */
+/* yyresume: */
+
+  /* First try to decide what to do without reference to lookahead token.  */
+
+  yyn = yypact[yystate];
+  if (yyn == YYFLAG)
+    goto yydefault;
+
+  /* Not known => get a lookahead token if don't already have one.  */
+
+  /* yychar is either YYEMPTY or YYEOF
+     or a valid token in external form.  */
+
+  if (yychar == YYEMPTY)
+    {
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Reading a token: ");
+#endif
+      yychar = YYLEX;
+    }
+
+  /* Convert token to internal form (in yychar1) for indexing tables with */
+
+  if (yychar <= 0)             /* This means end of input. */
+    {
+      yychar1 = 0;
+      yychar = YYEOF;          /* Don't call YYLEX any more */
+
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Now at end of input.\n");
+#endif
+    }
+  else
+    {
+      yychar1 = YYTRANSLATE(yychar);
+
+#if YYDEBUG != 0
+      if (yydebug)
+       {
+         fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
+         /* Give the individual parser a way to print the precise meaning
+            of a token, for further debugging info.  */
+#ifdef YYPRINT
+         YYPRINT (stderr, yychar, yylval);
+#endif
+         fprintf (stderr, ")\n");
+       }
+#endif
+    }
+
+  yyn += yychar1;
+  if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
+    goto yydefault;
+
+  yyn = yytable[yyn];
+
+  /* yyn is what to do for this token type in this state.
+     Negative => reduce, -yyn is rule number.
+     Positive => shift, yyn is new state.
+       New state is final state => don't bother to shift,
+       just return success.
+     0, or most negative number => error.  */
+
+  if (yyn < 0)
+    {
+      if (yyn == YYFLAG)
+       goto yyerrlab;
+      yyn = -yyn;
+      goto yyreduce;
+    }
+  else if (yyn == 0)
+    goto yyerrlab;
+
+  if (yyn == YYFINAL)
+    YYACCEPT;
+
+  /* Shift the lookahead token.  */
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
+#endif
+
+  /* Discard the token being shifted unless it is eof.  */
+  if (yychar != YYEOF)
+    yychar = YYEMPTY;
+
+  *++yyvsp = yylval;
+#ifdef YYLSP_NEEDED
+  *++yylsp = yylloc;
+#endif
+
+  /* count tokens shifted since error; after three, turn off error status.  */
+  if (yyerrstatus) yyerrstatus--;
+
+  yystate = yyn;
+  goto yynewstate;
+
+/* Do the default action for the current state.  */
+yydefault:
+
+  yyn = yydefact[yystate];
+  if (yyn == 0)
+    goto yyerrlab;
+
+/* Do a reduction.  yyn is the number of a rule to reduce with.  */
+yyreduce:
+  yylen = yyr2[yyn];
+  if (yylen > 0)
+    yyval = yyvsp[1-yylen]; /* implement default value of the action */
+
+#if YYDEBUG != 0
+  if (yydebug)
+    {
+      int i;
+
+      fprintf (stderr, "Reducing via rule %d (line %d), ",
+              yyn, yyrline[yyn]);
+
+      /* Print the symbols being reduced, and their result.  */
+      for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
+       fprintf (stderr, "%s ", yytname[yyrhs[i]]);
+      fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
+    }
+#endif
+
+
+  switch (yyn) {
+
+case 1:
+#line 178 "plural.y"
+{
+           if (yyvsp[0].exp == NULL)
+             YYABORT;
+           ((struct parse_args *) arg)->res = yyvsp[0].exp;
+         ;
+    break;}
+case 2:
+#line 186 "plural.y"
+{
+           yyval.exp = new_exp_3 (qmop, yyvsp[-4].exp, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 3:
+#line 190 "plural.y"
+{
+           yyval.exp = new_exp_2 (lor, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 4:
+#line 194 "plural.y"
+{
+           yyval.exp = new_exp_2 (land, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 5:
+#line 198 "plural.y"
+{
+           yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 6:
+#line 202 "plural.y"
+{
+           yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 7:
+#line 206 "plural.y"
+{
+           yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 8:
+#line 210 "plural.y"
+{
+           yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp);
+         ;
+    break;}
+case 9:
+#line 214 "plural.y"
+{
+           yyval.exp = new_exp_1 (lnot, yyvsp[0].exp);
+         ;
+    break;}
+case 10:
+#line 218 "plural.y"
+{
+           yyval.exp = new_exp_0 (var);
+         ;
+    break;}
+case 11:
+#line 222 "plural.y"
+{
+           if ((yyval.exp = new_exp_0 (num)) != NULL)
+             yyval.exp->val.num = yyvsp[0].num;
+         ;
+    break;}
+case 12:
+#line 227 "plural.y"
+{
+           yyval.exp = yyvsp[-1].exp;
+         ;
+    break;}
+}
+   /* the action file gets copied in in place of this dollarsign */
+#line 543 "/home/haible/gnu/arch/linuxlibc6/share/bison.simple"
+\f
+  yyvsp -= yylen;
+  yyssp -= yylen;
+#ifdef YYLSP_NEEDED
+  yylsp -= yylen;
+#endif
+
+#if YYDEBUG != 0
+  if (yydebug)
+    {
+      short *ssp1 = yyss - 1;
+      fprintf (stderr, "state stack now");
+      while (ssp1 != yyssp)
+       fprintf (stderr, " %d", *++ssp1);
+      fprintf (stderr, "\n");
+    }
+#endif
+
+  *++yyvsp = yyval;
+
+#ifdef YYLSP_NEEDED
+  yylsp++;
+  if (yylen == 0)
+    {
+      yylsp->first_line = yylloc.first_line;
+      yylsp->first_column = yylloc.first_column;
+      yylsp->last_line = (yylsp-1)->last_line;
+      yylsp->last_column = (yylsp-1)->last_column;
+      yylsp->text = 0;
+    }
+  else
+    {
+      yylsp->last_line = (yylsp+yylen-1)->last_line;
+      yylsp->last_column = (yylsp+yylen-1)->last_column;
+    }
+#endif
+
+  /* Now "shift" the result of the reduction.
+     Determine what state that goes to,
+     based on the state we popped back to
+     and the rule number reduced by.  */
+
+  yyn = yyr1[yyn];
+
+  yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
+  if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
+    yystate = yytable[yystate];
+  else
+    yystate = yydefgoto[yyn - YYNTBASE];
+
+  goto yynewstate;
+
+yyerrlab:   /* here on detecting error */
+
+  if (! yyerrstatus)
+    /* If not already recovering from an error, report this error.  */
+    {
+      ++yynerrs;
+
+#ifdef YYERROR_VERBOSE
+      yyn = yypact[yystate];
+
+      if (yyn > YYFLAG && yyn < YYLAST)
+       {
+         int size = 0;
+         char *msg;
+         int x, count;
+
+         count = 0;
+         /* Start X at -yyn if nec to avoid negative indexes in yycheck.  */
+         for (x = (yyn < 0 ? -yyn : 0);
+              x < (sizeof(yytname) / sizeof(char *)); x++)
+           if (yycheck[x + yyn] == x)
+             size += strlen(yytname[x]) + 15, count++;
+         msg = (char *) malloc(size + 15);
+         if (msg != 0)
+           {
+             strcpy(msg, "parse error");
+
+             if (count < 5)
+               {
+                 count = 0;
+                 for (x = (yyn < 0 ? -yyn : 0);
+                      x < (sizeof(yytname) / sizeof(char *)); x++)
+                   if (yycheck[x + yyn] == x)
+                     {
+                       strcat(msg, count == 0 ? ", expecting `" : " or `");
+                       strcat(msg, yytname[x]);
+                       strcat(msg, "'");
+                       count++;
+                     }
+               }
+             yyerror(msg);
+             free(msg);
+           }
+         else
+           yyerror ("parse error; also virtual memory exceeded");
+       }
+      else
+#endif /* YYERROR_VERBOSE */
+       yyerror("parse error");
+    }
+
+  goto yyerrlab1;
+yyerrlab1:   /* here on error raised explicitly by an action */
+
+  if (yyerrstatus == 3)
+    {
+      /* if just tried and failed to reuse lookahead token after an error, discard it.  */
+
+      /* return failure if at end of input */
+      if (yychar == YYEOF)
+       YYABORT;
+
+#if YYDEBUG != 0
+      if (yydebug)
+       fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
+#endif
+
+      yychar = YYEMPTY;
+    }
+
+  /* Else will try to reuse lookahead token
+     after shifting the error token.  */
+
+  yyerrstatus = 3;             /* Each real token shifted decrements this */
+
+  goto yyerrhandle;
+
+yyerrdefault:  /* current state does not do anything special for the error token. */
+
+#if 0
+  /* This is wrong; only states that explicitly want error tokens
+     should shift them.  */
+  yyn = yydefact[yystate];  /* If its default is to accept any token, ok.  Otherwise pop it.*/
+  if (yyn) goto yydefault;
+#endif
+
+yyerrpop:   /* pop the current state because it cannot handle the error token */
+
+  if (yyssp == yyss) YYABORT;
+  yyvsp--;
+  yystate = *--yyssp;
+#ifdef YYLSP_NEEDED
+  yylsp--;
+#endif
+
+#if YYDEBUG != 0
+  if (yydebug)
+    {
+      short *ssp1 = yyss - 1;
+      fprintf (stderr, "Error: state stack now");
+      while (ssp1 != yyssp)
+       fprintf (stderr, " %d", *++ssp1);
+      fprintf (stderr, "\n");
+    }
+#endif
+
+yyerrhandle:
+
+  yyn = yypact[yystate];
+  if (yyn == YYFLAG)
+    goto yyerrdefault;
+
+  yyn += YYTERROR;
+  if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
+    goto yyerrdefault;
+
+  yyn = yytable[yyn];
+  if (yyn < 0)
+    {
+      if (yyn == YYFLAG)
+       goto yyerrpop;
+      yyn = -yyn;
+      goto yyreduce;
+    }
+  else if (yyn == 0)
+    goto yyerrpop;
+
+  if (yyn == YYFINAL)
+    YYACCEPT;
+
+#if YYDEBUG != 0
+  if (yydebug)
+    fprintf(stderr, "Shifting error token, ");
+#endif
+
+  *++yyvsp = yylval;
+#ifdef YYLSP_NEEDED
+  *++yylsp = yylloc;
+#endif
+
+  yystate = yyn;
+  goto yynewstate;
+
+ yyacceptlab:
+  /* YYACCEPT comes here.  */
+  if (yyfree_stacks)
+    {
+      free (yyss);
+      free (yyvs);
+#ifdef YYLSP_NEEDED
+      free (yyls);
+#endif
+    }
+  return 0;
+
+ yyabortlab:
+  /* YYABORT comes here.  */
+  if (yyfree_stacks)
+    {
+      free (yyss);
+      free (yyvs);
+#ifdef YYLSP_NEEDED
+      free (yyls);
+#endif
+    }
+  return 1;
+}
+#line 232 "plural.y"
+
+
+void
+internal_function
+FREE_EXPRESSION (exp)
+     struct expression *exp;
+{
+  if (exp == NULL)
+    return;
+
+  /* Handle the recursive case.  */
+  switch (exp->nargs)
+    {
+    case 3:
+      FREE_EXPRESSION (exp->val.args[2]);
+      /* FALLTHROUGH */
+    case 2:
+      FREE_EXPRESSION (exp->val.args[1]);
+      /* FALLTHROUGH */
+    case 1:
+      FREE_EXPRESSION (exp->val.args[0]);
+      /* FALLTHROUGH */
+    default:
+      break;
+    }
+
+  free (exp);
+}
+
+
+static int
+yylex (lval, pexp)
+     YYSTYPE *lval;
+     const char **pexp;
+{
+  const char *exp = *pexp;
+  int result;
+
+  while (1)
+    {
+      if (exp[0] == '\0')
+       {
+         *pexp = exp;
+         return YYEOF;
+       }
+
+      if (exp[0] != ' ' && exp[0] != '\t')
+       break;
+
+      ++exp;
+    }
+
+  result = *exp++;
+  switch (result)
+    {
+    case '0': case '1': case '2': case '3': case '4':
+    case '5': case '6': case '7': case '8': case '9':
+      {
+       unsigned long int n = result - '0';
+       while (exp[0] >= '0' && exp[0] <= '9')
+         {
+           n *= 10;
+           n += exp[0] - '0';
+           ++exp;
+         }
+       lval->num = n;
+       result = NUMBER;
+      }
+      break;
+
+    case '=':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = equal;
+         result = EQUOP2;
+       }
+      else
+       result = YYERRCODE;
+      break;
+
+    case '!':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = not_equal;
+         result = EQUOP2;
+       }
+      break;
+
+    case '&':
+    case '|':
+      if (exp[0] == result)
+       ++exp;
+      else
+       result = YYERRCODE;
+      break;
+
+    case '<':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = less_or_equal;
+       }
+      else
+       lval->op = less_than;
+      result = CMPOP2;
+      break;
+
+    case '>':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = greater_or_equal;
+       }
+      else
+       lval->op = greater_than;
+      result = CMPOP2;
+      break;
+
+    case '*':
+      lval->op = mult;
+      result = MULOP2;
+      break;
+
+    case '/':
+      lval->op = divide;
+      result = MULOP2;
+      break;
+
+    case '%':
+      lval->op = module;
+      result = MULOP2;
+      break;
+
+    case '+':
+      lval->op = plus;
+      result = ADDOP2;
+      break;
+
+    case '-':
+      lval->op = minus;
+      result = ADDOP2;
+      break;
+
+    case 'n':
+    case '?':
+    case ':':
+    case '(':
+    case ')':
+      /* Nothing, just return the character.  */
+      break;
+
+    case ';':
+    case '\n':
+    case '\0':
+      /* Be safe and let the user call this function again.  */
+      --exp;
+      result = YYEOF;
+      break;
+
+    default:
+      result = YYERRCODE;
+#if YYDEBUG != 0
+      --exp;
+#endif
+      break;
+    }
+
+  *pexp = exp;
+
+  return result;
+}
+
+
+static void
+yyerror (str)
+     const char *str;
+{
+  /* Do nothing.  We don't print error messages here.  */
+}
diff --git a/intl/plural.y b/intl/plural.y
new file mode 100644 (file)
index 0000000..42ffa0e
--- /dev/null
@@ -0,0 +1,412 @@
+%{
+/* Expression parsing for plural form selection.
+   Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+   Written by Ulrich Drepper <drepper@cygnus.com>, 2000.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+   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.  */
+
+/* The bison generated parser uses alloca.  AIX 3 forces us to put this
+   declaration at the beginning of the file.  The declaration in bison's
+   skeleton file comes too late.  This must come before <config.h>
+   because <config.h> may include arbitrary system headers.  */
+#if defined _AIX && !defined __GNUC__
+ #pragma alloca
+#endif
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <stdlib.h>
+#include "gettextP.h"
+
+/* Names for the libintl functions are a problem.  They must not clash
+   with existing names and they should follow ANSI C.  But this source
+   code is also used in GNU C Library where the names have a __
+   prefix.  So we have to make a difference here.  */
+#ifdef _LIBC
+# define FREE_EXPRESSION __gettext_free_exp
+#else
+# define FREE_EXPRESSION gettext_free_exp__
+# define __gettextparse gettextparse__
+#endif
+
+#define YYLEX_PARAM    &((struct parse_args *) arg)->cp
+#define YYPARSE_PARAM  arg
+%}
+%pure_parser
+%expect 10
+
+%union {
+  unsigned long int num;
+  enum operator op;
+  struct expression *exp;
+}
+
+%{
+/* Prototypes for local functions.  */
+static struct expression *new_exp PARAMS ((int nargs, enum operator op,
+                                          struct expression * const *args));
+static inline struct expression *new_exp_0 PARAMS ((enum operator op));
+static inline struct expression *new_exp_1 PARAMS ((enum operator op,
+                                                  struct expression *right));
+static struct expression *new_exp_2 PARAMS ((enum operator op,
+                                            struct expression *left,
+                                            struct expression *right));
+static inline struct expression *new_exp_3 PARAMS ((enum operator op,
+                                                  struct expression *bexp,
+                                                  struct expression *tbranch,
+                                                  struct expression *fbranch));
+static int yylex PARAMS ((YYSTYPE *lval, const char **pexp));
+static void yyerror PARAMS ((const char *str));
+
+/* Allocation of expressions.  */
+
+static struct expression *
+new_exp (nargs, op, args)
+     int nargs;
+     enum operator op;
+     struct expression * const *args;
+{
+  int i;
+  struct expression *newp;
+
+  /* If any of the argument could not be malloc'ed, just return NULL.  */
+  for (i = nargs - 1; i >= 0; i--)
+    if (args[i] == NULL)
+      goto fail;
+
+  /* Allocate a new expression.  */
+  newp = (struct expression *) malloc (sizeof (*newp));
+  if (newp != NULL)
+    {
+      newp->nargs = nargs;
+      newp->operation = op;
+      for (i = nargs - 1; i >= 0; i--)
+       newp->val.args[i] = args[i];
+      return newp;
+    }
+
+ fail:
+  for (i = nargs - 1; i >= 0; i--)
+    FREE_EXPRESSION (args[i]);
+
+  return NULL;
+}
+
+static inline struct expression *
+new_exp_0 (op)
+     enum operator op;
+{
+  return new_exp (0, op, NULL);
+}
+
+static inline struct expression *
+new_exp_1 (op, right)
+     enum operator op;
+     struct expression *right;
+{
+  struct expression *args[1];
+
+  args[0] = right;
+  return new_exp (1, op, args);
+}
+
+static struct expression *
+new_exp_2 (op, left, right)
+     enum operator op;
+     struct expression *left;
+     struct expression *right;
+{
+  struct expression *args[2];
+
+  args[0] = left;
+  args[1] = right;
+  return new_exp (2, op, args);
+}
+
+static inline struct expression *
+new_exp_3 (op, bexp, tbranch, fbranch)
+     enum operator op;
+     struct expression *bexp;
+     struct expression *tbranch;
+     struct expression *fbranch;
+{
+  struct expression *args[3];
+
+  args[0] = bexp;
+  args[1] = tbranch;
+  args[2] = fbranch;
+  return new_exp (3, op, args);
+}
+
+%}
+
+/* This declares that all operators have the same associativity and the
+   precedence order as in C.  See [Harbison, Steele: C, A Reference Manual].
+   There is no unary minus and no bitwise operators.
+   Operators with the same syntactic behaviour have been merged into a single
+   token, to save space in the array generated by bison.  */
+%right '?'             /*   ?          */
+%left '|'              /*   ||         */
+%left '&'              /*   &&         */
+%left EQUOP2           /*   == !=      */
+%left CMPOP2           /*   < > <= >=  */
+%left ADDOP2           /*   + -        */
+%left MULOP2           /*   * / %      */
+%right '!'             /*   !          */
+
+%token <op> EQUOP2 CMPOP2 ADDOP2 MULOP2
+%token <num> NUMBER
+%type <exp> exp
+
+%%
+
+start:   exp
+         {
+           if ($1 == NULL)
+             YYABORT;
+           ((struct parse_args *) arg)->res = $1;
+         }
+       ;
+
+exp:     exp '?' exp ':' exp
+         {
+           $$ = new_exp_3 (qmop, $1, $3, $5);
+         }
+       | exp '|' exp
+         {
+           $$ = new_exp_2 (lor, $1, $3);
+         }
+       | exp '&' exp
+         {
+           $$ = new_exp_2 (land, $1, $3);
+         }
+       | exp EQUOP2 exp
+         {
+           $$ = new_exp_2 ($2, $1, $3);
+         }
+       | exp CMPOP2 exp
+         {
+           $$ = new_exp_2 ($2, $1, $3);
+         }
+       | exp ADDOP2 exp
+         {
+           $$ = new_exp_2 ($2, $1, $3);
+         }
+       | exp MULOP2 exp
+         {
+           $$ = new_exp_2 ($2, $1, $3);
+         }
+       | '!' exp
+         {
+           $$ = new_exp_1 (lnot, $2);
+         }
+       | 'n'
+         {
+           $$ = new_exp_0 (var);
+         }
+       | NUMBER
+         {
+           if (($$ = new_exp_0 (num)) != NULL)
+             $$->val.num = $1;
+         }
+       | '(' exp ')'
+         {
+           $$ = $2;
+         }
+       ;
+
+%%
+
+void
+internal_function
+FREE_EXPRESSION (exp)
+     struct expression *exp;
+{
+  if (exp == NULL)
+    return;
+
+  /* Handle the recursive case.  */
+  switch (exp->nargs)
+    {
+    case 3:
+      FREE_EXPRESSION (exp->val.args[2]);
+      /* FALLTHROUGH */
+    case 2:
+      FREE_EXPRESSION (exp->val.args[1]);
+      /* FALLTHROUGH */
+    case 1:
+      FREE_EXPRESSION (exp->val.args[0]);
+      /* FALLTHROUGH */
+    default:
+      break;
+    }
+
+  free (exp);
+}
+
+
+static int
+yylex (lval, pexp)
+     YYSTYPE *lval;
+     const char **pexp;
+{
+  const char *exp = *pexp;
+  int result;
+
+  while (1)
+    {
+      if (exp[0] == '\0')
+       {
+         *pexp = exp;
+         return YYEOF;
+       }
+
+      if (exp[0] != ' ' && exp[0] != '\t')
+       break;
+
+      ++exp;
+    }
+
+  result = *exp++;
+  switch (result)
+    {
+    case '0': case '1': case '2': case '3': case '4':
+    case '5': case '6': case '7': case '8': case '9':
+      {
+       unsigned long int n = result - '0';
+       while (exp[0] >= '0' && exp[0] <= '9')
+         {
+           n *= 10;
+           n += exp[0] - '0';
+           ++exp;
+         }
+       lval->num = n;
+       result = NUMBER;
+      }
+      break;
+
+    case '=':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = equal;
+         result = EQUOP2;
+       }
+      else
+       result = YYERRCODE;
+      break;
+
+    case '!':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = not_equal;
+         result = EQUOP2;
+       }
+      break;
+
+    case '&':
+    case '|':
+      if (exp[0] == result)
+       ++exp;
+      else
+       result = YYERRCODE;
+      break;
+
+    case '<':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = less_or_equal;
+       }
+      else
+       lval->op = less_than;
+      result = CMPOP2;
+      break;
+
+    case '>':
+      if (exp[0] == '=')
+       {
+         ++exp;
+         lval->op = greater_or_equal;
+       }
+      else
+       lval->op = greater_than;
+      result = CMPOP2;
+      break;
+
+    case '*':
+      lval->op = mult;
+      result = MULOP2;
+      break;
+
+    case '/':
+      lval->op = divide;
+      result = MULOP2;
+      break;
+
+    case '%':
+      lval->op = module;
+      result = MULOP2;
+      break;
+
+    case '+':
+      lval->op = plus;
+      result = ADDOP2;
+      break;
+
+    case '-':
+      lval->op = minus;
+      result = ADDOP2;
+      break;
+
+    case 'n':
+    case '?':
+    case ':':
+    case '(':
+    case ')':
+      /* Nothing, just return the character.  */
+      break;
+
+    case ';':
+    case '\n':
+    case '\0':
+      /* Be safe and let the user call this function again.  */
+      --exp;
+      result = YYEOF;
+      break;
+
+    default:
+      result = YYERRCODE;
+#if YYDEBUG != 0
+      --exp;
+#endif
+      break;
+    }
+
+  *pexp = exp;
+
+  return result;
+}
+
+
+static void
+yyerror (str)
+     const char *str;
+{
+  /* Do nothing.  We don't print error messages here.  */
+}
diff --git a/intl/po2tbl.sed.in b/intl/po2tbl.sed.in
deleted file mode 100644 (file)
index b3bcca4..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-# po2tbl.sed - Convert Uniforum style .po file to lookup table for catgets
-# Copyright (C) 1995 Free Software Foundation, Inc.
-# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# 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.
-#
-1 {
-  i\
-/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot.  */\
-\
-#if HAVE_CONFIG_H\
-# include <config.h>\
-#endif\
-\
-#include "libgettext.h"\
-\
-const struct _msg_ent _msg_tbl[] = {
-  h
-  s/.*/0/
-  x
-}
-#
-# Write msgid entries in C array form.
-#
-/^msgid/ {
-  s/msgid[     ]*\(".*"\)/  {\1/
-  tb
-# Append the next line
-  :b
-  N
-# Look whether second part is continuation line.
-  s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/
-# Yes, then branch.
-  ta
-# Because we assume that the input file correctly formed the line
-# just read cannot be again be a msgid line.  So it's safe to ignore
-# it.
-  s/\(.*\)\n.*/\1/
-  bc
-# We found a continuation line.  But before printing insert '\'.
-  :a
-  s/\(.*\)\(\n.*\)/\1\\\2/
-  P
-# We cannot use D here.
-  s/.*\n\(.*\)/\1/
-# Some buggy seds do not clear the `successful substitution since last ``t'''
-# flag on `N', so we do a `t' here to clear it.
-  tb
-# Not reached
-  :c
-  x
-# The following nice solution is by
-# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
-  td
-# Increment a decimal number in pattern space.
-# First hide trailing `9' digits.
-  :d
-  s/9\(_*\)$/_\1/
-  td
-# Assure at least one digit is available.
-  s/^\(_*\)$/0\1/
-# Increment the last digit.
-  s/8\(_*\)$/9\1/
-  s/7\(_*\)$/8\1/
-  s/6\(_*\)$/7\1/
-  s/5\(_*\)$/6\1/
-  s/4\(_*\)$/5\1/
-  s/3\(_*\)$/4\1/
-  s/2\(_*\)$/3\1/
-  s/1\(_*\)$/2\1/
-  s/0\(_*\)$/1\1/
-# Convert the hidden `9' digits to `0's.
-  s/_/0/g
-  x
-  G
-  s/\(.*\)\n\([0-9]*\)/\1, \2},/
-  s/\(.*\)"$/\1/
-  p
-}
-#
-# Last line.
-#
-$ {
-  i\
-};\
-
-  g
-  s/0*\(.*\)/int _msg_tbl_length = \1;/p
-}
-d
diff --git a/intl/ref-add.sin b/intl/ref-add.sin
new file mode 100644 (file)
index 0000000..167374e
--- /dev/null
@@ -0,0 +1,31 @@
+# Add this package to a list of references stored in a text file.
+#
+#   Copyright (C) 2000 Free Software Foundation, Inc.
+#
+#   This program is free software; you can redistribute it and/or modify it
+#   under the terms of the GNU Library General Public License as published
+#   by the Free Software Foundation; either version 2, 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
+#   Library General Public License for more details.
+#
+#   You should have received a copy of the GNU Library 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.
+#
+# Written by Bruno Haible <haible@clisp.cons.org>.
+#
+/^# Packages using this file: / {
+  s/# Packages using this file://
+  ta
+  :a
+  s/ @PACKAGE@ / @PACKAGE@ /
+  tb
+  s/ $/ @PACKAGE@ /
+  :b
+  s/^/# Packages using this file:/
+}
diff --git a/intl/ref-del.sin b/intl/ref-del.sin
new file mode 100644 (file)
index 0000000..613cf37
--- /dev/null
@@ -0,0 +1,26 @@
+# Remove this package from a list of references stored in a text file.
+#
+#   Copyright (C) 2000 Free Software Foundation, Inc.
+#
+#   This program is free software; you can redistribute it and/or modify it
+#   under the terms of the GNU Library General Public License as published
+#   by the Free Software Foundation; either version 2, 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
+#   Library General Public License for more details.
+#
+#   You should have received a copy of the GNU Library 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.
+#
+# Written by Bruno Haible <haible@clisp.cons.org>.
+#
+/^# Packages using this file: / {
+  s/# Packages using this file://
+  s/ @PACKAGE@ / /
+  s/^/# Packages using this file:/
+}
index 88557460f3b3a6535da599ba233f51309b276999..05c2fd76b3c7655fccca0d5e73a895424d6dd4f4 100644 (file)
@@ -1,6 +1,5 @@
 /* Implementation of the textdomain(3) function.
-   Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
-   Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
+   Copyright (C) 1995-1998, 2000, 2001 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
 # include <config.h>
 #endif
 
-#if defined STDC_HEADERS || defined _LIBC
-# include <stdlib.h>
-#endif
+#include <stdlib.h>
+#include <string.h>
 
-#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC
-# include <string.h>
+#ifdef _LIBC
+# include <libintl.h>
 #else
-# include <strings.h>
-# ifndef memcpy
-#  define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
-# endif
+# include "libgnuintl.h"
 #endif
+#include "gettextP.h"
 
 #ifdef _LIBC
-# include <libintl.h>
+/* We have to handle multi-threaded applications.  */
+# include <bits/libc-lock.h>
 #else
-# include "libgettext.h"
+/* Provide dummy implementation if this is outside glibc.  */
+# define __libc_rwlock_define(CLASS, NAME)
+# define __libc_rwlock_wrlock(NAME)
+# define __libc_rwlock_unlock(NAME)
+#endif
+
+/* The internal variables in the standalone libintl.a must have different
+   names than the internal variables in GNU libc, otherwise programs
+   using libintl.a cannot be linked statically.  */
+#if !defined _LIBC
+# define _nl_default_default_domain _nl_default_default_domain__
+# define _nl_current_default_domain _nl_current_default_domain__
 #endif
 
 /* @@ end of prolog @@ */
@@ -61,6 +69,9 @@ extern const char *_nl_current_default_domain;
 # define TEXTDOMAIN textdomain__
 #endif
 
+/* Lock variable to protect the global data in the gettext implementation.  */
+__libc_rwlock_define (extern, _nl_state_lock)
+
 /* Set the current default message catalog to DOMAINNAME.
    If DOMAINNAME is null, return the current default.
    If DOMAINNAME is "", reset to the default of "messages".  */
@@ -68,38 +79,60 @@ char *
 TEXTDOMAIN (domainname)
      const char *domainname;
 {
-  char *old;
+  char *new_domain;
+  char *old_domain;
 
   /* A NULL pointer requests the current setting.  */
   if (domainname == NULL)
     return (char *) _nl_current_default_domain;
 
-  old = (char *) _nl_current_default_domain;
+  __libc_rwlock_wrlock (_nl_state_lock);
+
+  old_domain = (char *) _nl_current_default_domain;
 
   /* If domain name is the null string set to default domain "messages".  */
   if (domainname[0] == '\0'
       || strcmp (domainname, _nl_default_default_domain) == 0)
-    _nl_current_default_domain = _nl_default_default_domain;
+    {
+      _nl_current_default_domain = _nl_default_default_domain;
+      new_domain = (char *) _nl_current_default_domain;
+    }
+  else if (strcmp (domainname, old_domain) == 0)
+    /* This can happen and people will use it to signal that some
+       environment variable changed.  */
+    new_domain = old_domain;
   else
     {
       /* If the following malloc fails `_nl_current_default_domain'
         will be NULL.  This value will be returned and so signals we
         are out of core.  */
 #if defined _LIBC || defined HAVE_STRDUP
-      _nl_current_default_domain = strdup (domainname);
+      new_domain = strdup (domainname);
 #else
       size_t len = strlen (domainname) + 1;
-      char *cp = (char *) malloc (len);
-      if (cp != NULL)
-       memcpy (cp, domainname, len);
-      _nl_current_default_domain = cp;
+      new_domain = (char *) malloc (len);
+      if (new_domain != NULL)
+       memcpy (new_domain, domainname, len);
 #endif
+
+      if (new_domain != NULL)
+       _nl_current_default_domain = new_domain;
+    }
+
+  /* We use this possibility to signal a change of the loaded catalogs
+     since this is most likely the case and there is no other easy we
+     to do it.  Do it only when the call was successful.  */
+  if (new_domain != NULL)
+    {
+      ++_nl_msg_cat_cntr;
+
+      if (old_domain != new_domain && old_domain != _nl_default_default_domain)
+       free (old_domain);
     }
 
-  if (old != _nl_default_default_domain)
-    free (old);
+  __libc_rwlock_unlock (_nl_state_lock);
 
-  return (char *) _nl_current_default_domain;
+  return new_domain;
 }
 
 #ifdef _LIBC
diff --git a/intl/xopen-msg.sed b/intl/xopen-msg.sed
deleted file mode 100644 (file)
index b19c0bb..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-# po2msg.sed - Convert Uniforum style .po file to X/Open style .msg file
-# Copyright (C) 1995 Free Software Foundation, Inc.
-# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# 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.
-#
-#
-# The first directive in the .msg should be the definition of the
-# message set number.  We use always set number 1.
-#
-1 {
-  i\
-$set 1 # Automatically created by po2msg.sed
-  h
-  s/.*/0/
-  x
-}
-#
-# We copy all comments into the .msg file.  Perhaps they can help.
-#
-/^#/ s/^#[     ]*/$ /p
-#
-# We copy the original message as a comment into the .msg file.
-#
-/^msgid/ {
-# Does not work now
-#  /"$/! {
-#    s/\\$//
-#    s/$/ ... (more lines following)"/
-#  }
-  s/^msgid[    ]*"\(.*\)"$/$ Original Message: \1/
-  p
-}
-#
-# The .msg file contains, other then the .po file, only the translations
-# but each given a unique ID.  Starting from 1 and incrementing by 1 for
-# each message we assign them to the messages.
-# It is important that the .po file used to generate the cat-id-tbl.c file
-# (with po-to-tbl) is the same as the one used here.  (At least the order
-# of declarations must not be changed.)
-#
-/^msgstr/ {
-  s/msgstr[    ]*"\(.*\)"/\1/
-  x
-# The following nice solution is by
-# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de>
-  td
-# Increment a decimal number in pattern space.
-# First hide trailing `9' digits.
-  :d
-  s/9\(_*\)$/_\1/
-  td
-# Assure at least one digit is available.
-  s/^\(_*\)$/0\1/
-# Increment the last digit.
-  s/8\(_*\)$/9\1/
-  s/7\(_*\)$/8\1/
-  s/6\(_*\)$/7\1/
-  s/5\(_*\)$/6\1/
-  s/4\(_*\)$/5\1/
-  s/3\(_*\)$/4\1/
-  s/2\(_*\)$/3\1/
-  s/1\(_*\)$/2\1/
-  s/0\(_*\)$/1\1/
-# Convert the hidden `9' digits to `0's.
-  s/_/0/g
-  x
-# Bring the line in the format `<number> <message>'
-  G
-  s/^[^\n]*$/& /
-  s/\(.*\)\n\([0-9]*\)/\2 \1/
-# Clear flag from last substitution.
-  tb
-# Append the next line.
-  :b
-  N
-# Look whether second part is a continuation line.
-  s/\(.*\n\)"\(.*\)"/\1\2/
-# Yes, then branch.
-  ta
-  P
-  D
-# Note that `D' includes a jump to the start!!
-# We found a continuation line.  But before printing insert '\'.
-  :a
-  s/\(.*\)\(\n.*\)/\1\\\2/
-  P
-# We cannot use the sed command `D' here
-  s/.*\n\(.*\)/\1/
-  tb
-}
-d
diff --git a/lib/.indent.pro b/lib/.indent.pro
new file mode 100644 (file)
index 0000000..73c4022
--- /dev/null
@@ -0,0 +1,3 @@
+-kr
+-i8
+-bad
index f3de6fe0edc777b83be03082c09f543d6045ebd9..f3f1fa8266fdfc1ab6a1b1f1fa2c163edc41ae38 100644 (file)
@@ -1,13 +1,60 @@
 
 AUTOMAKE_OPTIONS = 1.0 foreign
 
-noinst_HEADERS = commonio.h defines.h dialchk.h dialup.h \
- faillog.h getdef.h groupio.h md5.h pam_defs.h port.h prototypes.h \
- pwauth.h pwio.h rcsid.h sgroupio.h shadowio.h snprintf.h \
- tcfsio.h
+DEFS = 
+INCLUDES = -I$(top_srcdir)
 
-localedir = $(datadir)/locale
-DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
+lib_LTLIBRARIES = libshadow.la
+
+libshadow_la_LDFLAGS = -version-info 0:0:0
+libshadow_la_LIBADD = $(INTLLIBS) $(LIBCRYPT) $(LIBTCFS) $(LIBSKEY) $(LIBMD) \
+       $(top_builddir)/libmisc/libmisc.la
+
+libshadow_la_SOURCES = \
+       commonio.c \
+       commonio.h \
+       defines.h \
+       dialchk.c \
+       dialchk.h \
+       dialup.c \
+       dialup.h \
+       encrypt.c \
+       faillog.h \
+       fputsx.c \
+       getdef.c \
+       getdef.h \
+       getpass.c \
+       groupio.c \
+       groupio.h \
+       gshadow.c \
+       lockpw.c \
+       md5.h \
+       pam_defs.h \
+       port.c \
+       port.h \
+       prototypes.h \
+       pwauth.c \
+       pwauth.h \
+       pwio.c \
+       pwio.h \
+       rad64.c \
+       rcsid.h \
+       sgetgrent.c \
+       sgetpwent.c \
+       sgroupio.c \
+       sgroupio.h\
+       shadow.c \
+       shadowio.c \
+       shadowio.h \
+       snprintf.h \
+       tcfsio.c \
+       tcfsio.h \
+       utent.c
+
+EXTRA_libshadow_la_SOURCESS = grent.c pwent.c mkdir.c rename.c rmdir.c \
+       strdup.c strcasecmp.c strerror.c strstr.c putgrent.c \
+       putpwent.c putspent.c sgetgrent.c sgetpwent.c sgetspent.c \
+       snprintf.c md5.c md5crypt.c
 
 # These files are unneeded for some reason, listed in
 # order of appearance:
@@ -17,41 +64,8 @@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
 # sources for LIBOBJS (which are normally in libc)
 # misc header sources
 
-EXTRA_DIST = grdbm.c gsdbm.c pwdbm.c spdbm.c \
- grpack.c gspack.c pwpack.c sppack.c \
- gshadow_.h shadow_.h lastlog_.h snprintf.h
-
-EXTRA_libshadow_a_SOURCESS = grent.c pwent.c \
- mkdir.c rename.c rmdir.c strdup.c strcasecmp.c strerror.c strstr.c \
- putgrent.c putpwent.c putspent.c \
- sgetgrent.c sgetpwent.c sgetspent.c snprintf.c \
- md5.c md5crypt.c
-
-# We build libshadow for our tools.
-
-noinst_LIBRARIES = libshadow.a
-
-libshadow_a_SOURCES = commonio.c dialchk.c dialup.c encrypt.c \
- fputsx.c getdef.c getpass.c groupio.c gshadow.c lockpw.c port.c \
- pwauth.c pwio.c rad64.c sgroupio.c shadow.c shadowio.c utent.c \
- tcfsio.c
-
-libshadow_a_LIBADD = @LIBOBJS@
-
-INCLUDES = -I$(top_srcdir)/lib
-
-# shared library support
-libdir = ${exec_prefix}/lib
-#lib_PROGRAMS = libshadow.la
-lib_LTLIBRARIES = libshadow.la
-libshadow_la_SOURCES = ${libshadow_a_SOURCES}
-libshadow_la_LIBADD = @LTLIBOBJS@
-#libshadow_la_LDFLAGS = -version-info 0:0:0 -rpath $(libdir)
-libshadow_la_LDFLAGS = -version-info 0:0:0
-
-# remove the libshadow.so -> libshadow.so.x.x symlink, because this
-# library is for internal use by this package only.  Shadow support
-# is in libc and no one should be using -lshadow anymore.
-install-exec-hook:
-       rm -f $(libdir)/libshadow.so
-
+EXTRA_DIST = \
+       .indent.pro \
+       grdbm.c gsdbm.c pwdbm.c spdbm.c \
+       grpack.c gspack.c pwpack.c sppack.c \
+       gshadow_.h shadow_.h lastlog_.h snprintf.h
index 2722c9adf44c1a49ec8c6a785bad8139d6832c83..8d45e4afad464412b7d11d2d1f89485197c880f1 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
@@ -10,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
 
 SHELL = @SHELL@
 
@@ -26,17 +28,14 @@ datadir = @datadir@
 sysconfdir = @sysconfdir@
 sharedstatedir = @sharedstatedir@
 localstatedir = @localstatedir@
+libdir = @libdir@
 infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -48,9 +47,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -59,54 +57,116 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
 AUTOMAKE_OPTIONS = 1.0 foreign
 
-noinst_HEADERS = commonio.h defines.h dialchk.h dialup.h  faillog.h getdef.h groupio.h md5.h pam_defs.h port.h prototypes.h  pwauth.h pwio.h rcsid.h sgroupio.h shadowio.h snprintf.h  tcfsio.h
+DEFS = 
+INCLUDES = -I$(top_srcdir)
+
+lib_LTLIBRARIES = libshadow.la
+
+libshadow_la_LDFLAGS = -version-info 0:0:0
+libshadow_la_LIBADD = $(INTLLIBS) $(LIBCRYPT) $(LIBTCFS) $(LIBSKEY) $(LIBMD) \
+       $(top_builddir)/libmisc/libmisc.la
+
+
+libshadow_la_SOURCES = \
+       commonio.c \
+       commonio.h \
+       defines.h \
+       dialchk.c \
+       dialchk.h \
+       dialup.c \
+       dialup.h \
+       encrypt.c \
+       faillog.h \
+       fputsx.c \
+       getdef.c \
+       getdef.h \
+       getpass.c \
+       groupio.c \
+       groupio.h \
+       gshadow.c \
+       lockpw.c \
+       md5.h \
+       pam_defs.h \
+       port.c \
+       port.h \
+       prototypes.h \
+       pwauth.c \
+       pwauth.h \
+       pwio.c \
+       pwio.h \
+       rad64.c \
+       rcsid.h \
+       sgetgrent.c \
+       sgetpwent.c \
+       sgroupio.c \
+       sgroupio.h\
+       shadow.c \
+       shadowio.c \
+       shadowio.h \
+       snprintf.h \
+       tcfsio.c \
+       tcfsio.h \
+       utent.c
+
+
+EXTRA_libshadow_la_SOURCESS = grent.c pwent.c mkdir.c rename.c rmdir.c \
+       strdup.c strcasecmp.c strerror.c strstr.c putgrent.c \
+       putpwent.c putspent.c sgetgrent.c sgetpwent.c sgetspent.c \
+       snprintf.c md5.c md5crypt.c
 
 
-localedir = $(datadir)/locale
-DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
 
 # These files are unneeded for some reason, listed in
 # order of appearance:
@@ -115,119 +175,56 @@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
 # sources for dbm support (not yet used)
 # sources for LIBOBJS (which are normally in libc)
 # misc header sources
+EXTRA_DIST = \
+       .indent.pro \
+       grdbm.c gsdbm.c pwdbm.c spdbm.c \
+       grpack.c gspack.c pwpack.c sppack.c \
+       gshadow_.h shadow_.h lastlog_.h snprintf.h
 
-EXTRA_DIST = grdbm.c gsdbm.c pwdbm.c spdbm.c  grpack.c gspack.c pwpack.c sppack.c  gshadow_.h shadow_.h lastlog_.h snprintf.h
-
-
-EXTRA_libshadow_a_SOURCESS = grent.c pwent.c  mkdir.c rename.c rmdir.c strdup.c strcasecmp.c strerror.c strstr.c  putgrent.c putpwent.c putspent.c  sgetgrent.c sgetpwent.c sgetspent.c snprintf.c  md5.c md5crypt.c
-
-
-# We build libshadow for our tools.
-
-noinst_LIBRARIES = libshadow.a
-
-libshadow_a_SOURCES = commonio.c dialchk.c dialup.c encrypt.c  fputsx.c getdef.c getpass.c groupio.c gshadow.c lockpw.c port.c  pwauth.c pwio.c rad64.c sgroupio.c shadow.c shadowio.c utent.c  tcfsio.c
-
-
-libshadow_a_LIBADD = @LIBOBJS@
-
-INCLUDES = -I$(top_srcdir)/lib
-
-# shared library support
-libdir = ${exec_prefix}/lib
-#lib_PROGRAMS = libshadow.la
-lib_LTLIBRARIES = libshadow.la
-libshadow_la_SOURCES = ${libshadow_a_SOURCES}
-libshadow_la_LIBADD = @LTLIBOBJS@
-#libshadow_la_LDFLAGS = -version-info 0:0:0 -rpath $(libdir)
-libshadow_la_LDFLAGS = -version-info 0:0:0
+subdir = lib
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-LIBRARIES =  $(noinst_LIBRARIES)
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+LTLIBRARIES = $(lib_LTLIBRARIES)
+
+libshadow_la_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la
+am_libshadow_la_OBJECTS = commonio.lo dialchk.lo dialup.lo encrypt.lo \
+       fputsx.lo getdef.lo getpass.lo groupio.lo gshadow.lo lockpw.lo \
+       port.lo pwauth.lo pwio.lo rad64.lo sgetgrent.lo sgetpwent.lo \
+       sgroupio.lo shadow.lo shadowio.lo tcfsio.lo utent.lo
+libshadow_la_OBJECTS = $(am_libshadow_la_OBJECTS)
+DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
 CPPFLAGS = @CPPFLAGS@
 LDFLAGS = @LDFLAGS@
 LIBS = @LIBS@
-libshadow_a_DEPENDENCIES =  @LIBOBJS@
-libshadow_a_OBJECTS =  commonio.o dialchk.o dialup.o encrypt.o fputsx.o \
-getdef.o getpass.o groupio.o gshadow.o lockpw.o port.o pwauth.o pwio.o \
-rad64.o sgroupio.o shadow.o shadowio.o utent.o tcfsio.o
-AR = ar
-LTLIBRARIES =  $(lib_LTLIBRARIES)
-
-libshadow_la_DEPENDENCIES =  @LTLIBOBJS@
-libshadow_la_OBJECTS =  commonio.lo dialchk.lo dialup.lo encrypt.lo \
-fputsx.lo getdef.lo getpass.lo groupio.lo gshadow.lo lockpw.lo port.lo \
-pwauth.lo pwio.lo rad64.lo sgroupio.lo shadow.lo shadowio.lo utent.lo \
-tcfsio.lo
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+@AMDEP_TRUE@DEP_FILES = $(DEPDIR)/commonio.Plo $(DEPDIR)/dialchk.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/dialup.Plo $(DEPDIR)/encrypt.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/fputsx.Plo $(DEPDIR)/getdef.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/getpass.Plo $(DEPDIR)/groupio.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/gshadow.Plo $(DEPDIR)/lockpw.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/port.Plo $(DEPDIR)/pwauth.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/pwio.Plo $(DEPDIR)/rad64.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/sgetgrent.Plo $(DEPDIR)/sgetpwent.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/sgroupio.Plo $(DEPDIR)/shadow.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/shadowio.Plo $(DEPDIR)/tcfsio.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/utent.Plo
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
+       $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-HEADERS =  $(noinst_HEADERS)
-
-DIST_COMMON =  Makefile.am Makefile.in md5.c md5crypt.c mkdir.c \
-putgrent.c putpwent.c putspent.c rename.c rmdir.c sgetgrent.c \
-sgetpwent.c sgetspent.c snprintf.c strcasecmp.c strdup.c strerror.c \
-strstr.c
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+       $(AM_LDFLAGS) $(LDFLAGS) -o $@
+CFLAGS = @CFLAGS@
+DIST_SOURCES = $(libshadow_la_SOURCES)
+DIST_COMMON = Makefile.am Makefile.in
+SOURCES = $(libshadow_la_SOURCES)
 
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = $(libshadow_a_SOURCES) $(libshadow_la_SOURCES)
-OBJECTS = $(libshadow_a_OBJECTS) $(libshadow_la_OBJECTS)
+all: all-am
 
-all: all-redirect
 .SUFFIXES:
-.SUFFIXES: .S .c .lo .o .s
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps lib/Makefile
-
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
-       -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
-
-maintainer-clean-noinstLIBRARIES:
-
-.c.o:
-       $(COMPILE) -c $<
-
-.s.o:
-       $(COMPILE) -c $<
-
-.S.o:
-       $(COMPILE) -c $<
-
-mostlyclean-compile:
-       -rm -f *.o core *.core
-
-clean-compile:
-
-distclean-compile:
-       -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-.c.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.s.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.S.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+.SUFFIXES: .c .lo .o .obj
 
 mostlyclean-libtool:
        -rm -f *.lo
@@ -236,174 +233,220 @@ clean-libtool:
        -rm -rf .libs _libs
 
 distclean-libtool:
-
-maintainer-clean-libtool:
-
-libshadow.a: $(libshadow_a_OBJECTS) $(libshadow_a_DEPENDENCIES)
-       -rm -f libshadow.a
-       $(AR) cru libshadow.a $(libshadow_a_OBJECTS) $(libshadow_a_LIBADD)
-       $(RANLIB) libshadow.a
-
-mostlyclean-libLTLIBRARIES:
-
-clean-libLTLIBRARIES:
-       -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
-
-distclean-libLTLIBRARIES:
-
-maintainer-clean-libLTLIBRARIES:
-
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --foreign  lib/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
        @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(libdir)
        @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
          if test -f $$p; then \
-           echo "$(LIBTOOL)  --mode=install $(INSTALL) $$p $(DESTDIR)$(libdir)/$$p"; \
-           $(LIBTOOL)  --mode=install $(INSTALL) $$p $(DESTDIR)$(libdir)/$$p; \
+           echo " $(LIBTOOL) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$p"; \
+           $(LIBTOOL) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$p; \
          else :; fi; \
        done
 
 uninstall-libLTLIBRARIES:
        @$(NORMAL_UNINSTALL)
-       list='$(lib_LTLIBRARIES)'; for p in $$list; do \
-         $(LIBTOOL)  --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+         echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p"; \
+         $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
        done
 
-libshadow.la: $(libshadow_la_OBJECTS) $(libshadow_la_DEPENDENCIES)
+clean-libLTLIBRARIES:
+       -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+libshadow.la: $(libshadow_la_OBJECTS) $(libshadow_la_DEPENDENCIES) 
        $(LINK) -rpath $(libdir) $(libshadow_la_LDFLAGS) $(libshadow_la_OBJECTS) $(libshadow_la_LIBADD) $(LIBS)
 
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT) core *.core
+
+distclean-compile:
+       -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/commonio.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/dialchk.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/dialup.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/encrypt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/fputsx.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/getdef.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/getpass.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/groupio.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/gshadow.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/lockpw.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/port.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwauth.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwio.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/rad64.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sgetgrent.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sgetpwent.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sgroupio.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/shadow.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/shadowio.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/tcfsio.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/utent.Plo@am__quote@
+
+distclean-depend:
+       -rm -rf $(DEPDIR)
+
+.c.o:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(COMPILE) -c `test -f $< || echo '$(srcdir)/'`$<
+
+.c.obj:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(COMPILE) -c `cygpath -w $<`
+
+.c.lo:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(LTCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
+CCDEPMODE = @CCDEPMODE@
+uninstall-info-am:
+
 tags: TAGS
 
-ID: $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(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; }'`; \
-       here=`pwd` && cd $(srcdir) \
-         && mkid -f$$here/ID $$unique $(LISP)
+       mkid -fID $$unique $(LISP)
 
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP)
+TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
        tags=; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+       list='$(SOURCES) $(HEADERS) $(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 "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-         || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
+         || etags $(ETAGS_ARGS) $$tags  $$unique $(LISP)
 
-mostlyclean-tags:
-
-clean-tags:
+GTAGS:
+       here=`CDPATH=: && cd $(top_builddir) && pwd` \
+         && cd $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) $$here
 
 distclean-tags:
-       -rm -f TAGS ID
-
-maintainer-clean-tags:
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = lib
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am: install-libLTLIBRARIES
-       @$(NORMAL_INSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-install-exec: install-exec-am
+all-am: Makefile $(LTLIBRARIES)
 
-install-data-am:
-install-data: install-data-am
+installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(libdir)
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am: uninstall-libLTLIBRARIES
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS)
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
-       $(mkinstalldirs)  $(DESTDIR)$(libdir)
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-noinstLIBRARIES mostlyclean-compile \
-               mostlyclean-libtool mostlyclean-libLTLIBRARIES \
-               mostlyclean-tags mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+       mostlyclean-am
 
-clean-am:  clean-noinstLIBRARIES clean-compile clean-libtool \
-               clean-libLTLIBRARIES clean-tags clean-generic \
-               mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-compile distclean-depend \
+       distclean-generic distclean-libtool distclean-tags
 
-distclean-am:  distclean-noinstLIBRARIES distclean-compile \
-               distclean-libtool distclean-libLTLIBRARIES \
-               distclean-tags distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-noinstLIBRARIES \
-               maintainer-clean-compile maintainer-clean-libtool \
-               maintainer-clean-libLTLIBRARIES maintainer-clean-tags \
-               maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am: install-libLTLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile mostlyclean-libtool distclean-libtool \
-clean-libtool maintainer-clean-libtool mostlyclean-libLTLIBRARIES \
-distclean-libLTLIBRARIES clean-libLTLIBRARIES \
-maintainer-clean-libLTLIBRARIES uninstall-libLTLIBRARIES \
-install-libLTLIBRARIES tags mostlyclean-tags distclean-tags clean-tags \
-maintainer-clean-tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
-
-
-# remove the libshadow.so -> libshadow.so.x.x symlink, because this
-# library is for internal use by this package only.  Shadow support
-# is in libc and no one should be using -lshadow anymore.
-install-exec-hook:
-       rm -f $(libdir)/libshadow.so
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+       mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES
+
+.PHONY: GTAGS all all-am check check-am clean clean-generic \
+       clean-libLTLIBRARIES clean-libtool distclean distclean-compile \
+       distclean-depend distclean-generic distclean-libtool \
+       distclean-tags distdir dvi dvi-am info info-am install \
+       install-am install-data install-data-am install-exec \
+       install-exec-am install-info install-info-am \
+       install-libLTLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic mostlyclean-libtool tags uninstall \
+       uninstall-am uninstall-info-am uninstall-libLTLIBRARIES
 
 # 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.
index 4adb8eeee4e850b8d9c6ebcd1dfece5876f0f966..961ff481fb98557915044c7494117b61529be91b 100644 (file)
@@ -2,7 +2,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID("$Id: commonio.c,v 1.16 2000/09/02 18:40:42 marekm Exp $")
+RCSID("$Id: commonio.c,v 1.20 2001/09/07 15:35:57 kloczek Exp $")
 
 #include "defines.h"
 #include <sys/stat.h>
@@ -210,7 +210,7 @@ free_linked_list(struct commonio_db *db)
 int
 commonio_setname(struct commonio_db *db, const char *name)
 {
-       strcpy(db->filename, name);
+       snprintf(db->filename, sizeof(db->filename), "%s", name);
        return 1;
 }
 
@@ -305,6 +305,7 @@ commonio_lock(struct commonio_db *db)
 static void
 reload_nscd(void)
 {
+#ifdef ENABLE_NSCD_SIGHUP  /* not every version of nscd can handle it */
        FILE *pidfile;
        int pid;
 
@@ -316,6 +317,7 @@ reload_nscd(void)
                        kill(pid, SIGHUP);
                fclose(pidfile);
        }
+#endif
 }
 
 
@@ -470,12 +472,15 @@ commonio_open(struct commonio_db *db, int mode)
 
        while (db->ops->fgets(buf, buflen, db->fp)) {
                while (!(cp = strrchr(buf, '\n')) && !feof(db->fp)) {
+                       int len;
+
                        buflen += BUFLEN;
                        cp = (char *) realloc(buf, buflen);
                        if (!cp)
                                goto cleanup_buf;
                        buf = cp;
-                       db->ops->fgets(buf + buflen - BUFLEN, BUFLEN, db->fp);
+                       len = strlen(buf);
+                       db->ops->fgets(buf + len, buflen - len, db->fp);
                }
                if ((cp = strrchr(buf, '\n')))
                        *cp = '\0';
@@ -521,6 +526,83 @@ cleanup:
        return 0;
 }
 
+/*
+ * Sort given db according to cmp function (usually compares uids)
+ */
+int
+commonio_sort(struct commonio_db *db, int (*cmp)(const void *, const void *))
+{
+       struct commonio_entry **entries, *ptr;
+       int n = 0, i;
+
+       for (ptr = db->head; ptr; ptr = ptr->next)
+               n++;
+
+       if (n <= 1)
+               return 0;
+               
+       entries = malloc(n * sizeof(struct commonio_entry*));
+       if (entries == NULL)
+               return -1;
+       
+       n = 0;
+       for (ptr = db->head; ptr; ptr = ptr->next)
+               entries[n++] = ptr;
+       qsort(entries, n, sizeof(struct commonio_entry*), cmp);
+       
+       db->head = entries[0];
+       db->tail = entries[--n];
+       db->head->prev = NULL;
+       db->head->next = entries[1];
+       db->tail->prev = entries[n-1];
+       db->tail->next = NULL;
+
+       for (i = 1; i < n; i++) {
+               entries[i]->prev = entries[i-1];
+               entries[i]->next = entries[i+1];
+       }
+
+       free(entries);
+       db->changed = 1;
+
+       return 0;
+}
+
+/*
+ * Sort entries in db according to order in another.
+ */
+int
+commonio_sort_wrt(struct commonio_db *shadow, struct commonio_db *passwd)
+{
+       struct commonio_entry *head = NULL, *pw_ptr, *spw_ptr;
+       const char *name;
+
+       for (pw_ptr = passwd->head; pw_ptr; pw_ptr = pw_ptr->next) {
+               name = passwd->ops->getname(pw_ptr->eptr);
+               for (spw_ptr = shadow->head; spw_ptr; spw_ptr = spw_ptr->next)
+                       if (strcmp(name, shadow->ops->getname(spw_ptr->eptr)) == 0)
+                               break;
+               if (spw_ptr == NULL) 
+                       continue;
+               commonio_del_entry(shadow, spw_ptr);
+               spw_ptr->next = head;
+               head = spw_ptr;
+       }
+       
+       for (spw_ptr = head; spw_ptr; spw_ptr = head) {
+               head = head->next;
+               
+               if (shadow->head)
+                       shadow->head->prev = spw_ptr;
+               spw_ptr->next = shadow->head;
+               shadow->head = spw_ptr;
+       }
+       
+       shadow->head->prev = NULL;
+       shadow->changed = 1;
+
+       return 0;
+}
 
 static int
 write_all(const struct commonio_db *db)
index f25883b8b68c0975b35192b1f9d5a641179da326..d67e252bd79d1299829dc4e20d8a39dd03343a52 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: commonio.h,v 1.6 2000/09/02 18:40:43 marekm Exp $ */
+/* $Id: commonio.h,v 1.7 2001/08/14 21:09:54 malekith Exp $ */
 
 /*
  * Linked list entry.
@@ -97,4 +97,6 @@ extern const void *commonio_next(struct commonio_db *);
 extern int commonio_close(struct commonio_db *);
 extern int commonio_unlock(struct commonio_db *);
 extern void commonio_del_entry(struct commonio_db *, const struct commonio_entry *);
+extern int commonio_sort_wrt(struct commonio_db *shadow, struct commonio_db *passwd);
+extern int commonio_sort(struct commonio_db *db, int (*cmp)(const void *, const void *));
 
index c020f9e50c5496378a1dd65d5e51a944a26bdc9b..af91c1f995dfc5b61ebf62691d73c81c2e510ba0 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: defines.h,v 1.17 2000/09/02 18:40:43 marekm Exp $ */
+/* $Id: defines.h,v 1.18 2001/06/28 20:47:05 kloczek Exp $ */
 /* some useful defines */
 
 #ifndef _DEFINES_H_
@@ -339,10 +339,4 @@ extern char *strerror();
 #define SHADOW_PASSWD_STRING "x"
 #endif
 
-#ifdef PAM_STRERROR_NEEDS_TWO_ARGS  /* Linux-PAM 0.59+ */
-#define PAM_STRERROR(pamh, err) pam_strerror(pamh, err)
-#else
-#define PAM_STRERROR(pamh, err) pam_strerror(err)
-#endif
-
 #endif  /* _DEFINES_H_ */
index a59faadd4d807ab6a5ffab4c606a43232f4821c6..90f61d987b684a7d4af84f47667784e69bac3646 100644 (file)
@@ -2,7 +2,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID("$Id: groupio.c,v 1.9 2000/09/02 18:40:43 marekm Exp $")
+RCSID("$Id: groupio.c,v 1.10 2001/08/14 21:10:36 malekith Exp $")
 
 #include "prototypes.h"
 #include "defines.h"
@@ -177,8 +177,42 @@ __gr_get_head(void)
        return group_db.head;
 }
 
+struct commonio_db *
+__gr_get_db(void)
+{
+       return &group_db;
+}
+
 void
 __gr_del_entry(const struct commonio_entry *ent)
 {
        commonio_del_entry(&group_db, ent);
 }
+
+static int
+gr_cmp(const void *p1, const void *p2)
+{
+       gid_t u1, u2;
+
+       if ((*(struct commonio_entry**)p1)->eptr == NULL)
+               return 1;
+       if ((*(struct commonio_entry**)p2)->eptr == NULL)
+               return -1;
+       
+       u1 = ((struct group *)(*(struct commonio_entry**)p1)->eptr)->gr_gid;
+       u2 = ((struct group *)(*(struct commonio_entry**)p2)->eptr)->gr_gid;
+
+       if (u1 < u2)
+               return -1;
+       else if (u1 > u2)
+               return 1;
+       else
+               return 0;
+}
+
+/* Sort entries by gid */
+int
+gr_sort()
+{
+       return commonio_sort(&group_db, gr_cmp);
+}
index 7c083cea0ecd2c146a1e2ce227fbc4da95163351..a79b85b9dc375618f80d95c5aa1dcbcf6accdcfe 100644 (file)
@@ -10,3 +10,4 @@ extern int gr_remove(const char *);
 extern int gr_rewind(void);
 extern int gr_unlock(void);
 extern int gr_update(const struct group *);
+extern int gr_sort(void);
diff --git a/lib/md5.c b/lib/md5.c
deleted file mode 100644 (file)
index 766fafe..0000000
--- a/lib/md5.c
+++ /dev/null
@@ -1,261 +0,0 @@
-/*
- * This code implements the MD5 message-digest algorithm.
- * The algorithm is due to Ron Rivest.  This code was
- * written by Colin Plumb in 1993, no copyright is claimed.
- * This code is in the public domain; do with it what you wish.
- *
- * Equivalent code is available from RSA Data Security, Inc.
- * This code has been tested against that, and is equivalent,
- * except that you don't need to include two pages of legalese
- * with every copy.
- *
- * To compute the message digest of a chunk of bytes, declare an
- * MD5Context structure, pass it to MD5Init, call MD5Update as
- * needed on buffers full of bytes, and then call MD5Final, which
- * will fill a supplied 16-byte array with the digest.
- */
-#include <config.h>
-
-#ifdef MD5_CRYPT
-#include <string.h>            /* for memcpy() */
-#include "md5.h"
-
-#ifndef HIGHFIRST
-#define byteReverse(buf, len)  /* Nothing */
-#else
-void byteReverse(unsigned char *buf, unsigned longs);
-
-#ifndef ASM_MD5
-/*
- * Note: this code is harmless on little-endian machines.
- */
-void
-byteReverse(unsigned char *buf, unsigned longs)
-{
-    uint32 t;
-    do {
-       t = (uint32) ((unsigned) buf[3] << 8 | buf[2]) << 16 |
-           ((unsigned) buf[1] << 8 | buf[0]);
-       *(uint32 *) buf = t;
-       buf += 4;
-    } while (--longs);
-}
-#endif
-#endif
-
-/*
- * Start MD5 accumulation.  Set bit count to 0 and buffer to mysterious
- * initialization constants.
- */
-void
-MD5Init(struct MD5Context *ctx)
-{
-    ctx->buf[0] = 0x67452301;
-    ctx->buf[1] = 0xefcdab89;
-    ctx->buf[2] = 0x98badcfe;
-    ctx->buf[3] = 0x10325476;
-
-    ctx->bits[0] = 0;
-    ctx->bits[1] = 0;
-}
-
-/*
- * Update context to reflect the concatenation of another buffer full
- * of bytes.
- */
-void
-MD5Update(struct MD5Context *ctx, unsigned char const *buf, unsigned len)
-{
-    uint32 t;
-
-    /* Update bitcount */
-
-    t = ctx->bits[0];
-    if ((ctx->bits[0] = t + ((uint32) len << 3)) < t)
-       ctx->bits[1]++;         /* Carry from low to high */
-    ctx->bits[1] += len >> 29;
-
-    t = (t >> 3) & 0x3f;       /* Bytes already in shsInfo->data */
-
-    /* Handle any leading odd-sized chunks */
-
-    if (t) {
-       unsigned char *p = (unsigned char *) ctx->in + t;
-
-       t = 64 - t;
-       if (len < t) {
-           memcpy(p, buf, len);
-           return;
-       }
-       memcpy(p, buf, t);
-       byteReverse(ctx->in, 16);
-       MD5Transform(ctx->buf, (uint32 *) ctx->in);
-       buf += t;
-       len -= t;
-    }
-    /* Process data in 64-byte chunks */
-
-    while (len >= 64) {
-       memcpy(ctx->in, buf, 64);
-       byteReverse(ctx->in, 16);
-       MD5Transform(ctx->buf, (uint32 *) ctx->in);
-       buf += 64;
-       len -= 64;
-    }
-
-    /* Handle any remaining bytes of data. */
-
-    memcpy(ctx->in, buf, len);
-}
-
-/*
- * Final wrapup - pad to 64-byte boundary with the bit pattern 
- * 1 0* (64-bit count of bits processed, MSB-first)
- */
-void
-MD5Final(unsigned char digest[16], struct MD5Context *ctx)
-{
-    unsigned count;
-    unsigned char *p;
-
-    /* Compute number of bytes mod 64 */
-    count = (ctx->bits[0] >> 3) & 0x3F;
-
-    /* Set the first char of padding to 0x80.  This is safe since there is
-       always at least one byte free */
-    p = ctx->in + count;
-    *p++ = 0x80;
-
-    /* Bytes of padding needed to make 64 bytes */
-    count = 64 - 1 - count;
-
-    /* Pad out to 56 mod 64 */
-    if (count < 8) {
-       /* Two lots of padding:  Pad the first block to 64 bytes */
-       memset(p, 0, count);
-       byteReverse(ctx->in, 16);
-       MD5Transform(ctx->buf, (uint32 *) ctx->in);
-
-       /* Now fill the next block with 56 bytes */
-       memset(ctx->in, 0, 56);
-    } else {
-       /* Pad block to 56 bytes */
-       memset(p, 0, count - 8);
-    }
-    byteReverse(ctx->in, 14);
-
-    /* Append length in bits and transform */
-    ((uint32 *) ctx->in)[14] = ctx->bits[0];
-    ((uint32 *) ctx->in)[15] = ctx->bits[1];
-
-    MD5Transform(ctx->buf, (uint32 *) ctx->in);
-    byteReverse((unsigned char *) ctx->buf, 4);
-    memcpy(digest, ctx->buf, 16);
-    memset((char *) ctx, 0, sizeof(ctx));      /* In case it's sensitive */
-}
-
-#ifndef ASM_MD5
-
-/* The four core functions - F1 is optimized somewhat */
-
-/* #define F1(x, y, z) (x & y | ~x & z) */
-#define F1(x, y, z) (z ^ (x & (y ^ z)))
-#define F2(x, y, z) F1(z, x, y)
-#define F3(x, y, z) (x ^ y ^ z)
-#define F4(x, y, z) (y ^ (x | ~z))
-
-/* This is the central step in the MD5 algorithm. */
-#define MD5STEP(f, w, x, y, z, data, s) \
-       ( w += f(x, y, z) + data,  w = w<<s | w>>(32-s),  w += x )
-
-/*
- * The core of the MD5 algorithm, this alters an existing MD5 hash to
- * reflect the addition of 16 longwords of new data.  MD5Update blocks
- * the data and converts bytes into longwords for this routine.
- */
-void
-MD5Transform(uint32 buf[4], uint32 const in[16])
-{
-    register uint32 a, b, c, d;
-
-    a = buf[0];
-    b = buf[1];
-    c = buf[2];
-    d = buf[3];
-
-    MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7);
-    MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12);
-    MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17);
-    MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22);
-    MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7);
-    MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12);
-    MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17);
-    MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22);
-    MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7);
-    MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12);
-    MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17);
-    MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22);
-    MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7);
-    MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12);
-    MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17);
-    MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22);
-
-    MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5);
-    MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9);
-    MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14);
-    MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);
-    MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5);
-    MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9);
-    MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14);
-    MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);
-    MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5);
-    MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9);
-    MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14);
-    MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20);
-    MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5);
-    MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);
-    MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14);
-    MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);
-
-    MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4);
-    MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11);
-    MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16);
-    MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23);
-    MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4);
-    MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);
-    MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);
-    MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23);
-    MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4);
-    MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11);
-    MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16);
-    MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23);
-    MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4);
-    MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11);
-    MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);
-    MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23);
-
-    MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6);
-    MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10);
-    MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15);
-    MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21);
-    MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6);
-    MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);
-    MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15);
-    MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21);
-    MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);
-    MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);
-    MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15);
-    MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21);
-    MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6);
-    MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10);
-    MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);
-    MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21);
-
-    buf[0] += a;
-    buf[1] += b;
-    buf[2] += c;
-    buf[3] += d;
-}
-
-#endif
-#endif  /* MD5_CRYPT */
diff --git a/lib/md5crypt.c b/lib/md5crypt.c
deleted file mode 100644 (file)
index e1595aa..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * ----------------------------------------------------------------------------
- * "THE BEER-WARE LICENSE" (Revision 42):
- * <phk@login.dknet.dk> wrote this file.  As long as you retain this notice you
- * can do whatever you want with this stuff. If we meet some day, and you think
- * this stuff is worth it, you can buy me a beer in return.   Poul-Henning Kamp
- * ----------------------------------------------------------------------------
- */
-
-/*
- * Ported from FreeBSD to Linux, only minimal changes.  --marekm
- */
-
-#include <config.h>
-
-#ifdef MD5_CRYPT
-
-#include "rcsid.h"
-RCSID("$Id: md5crypt.c,v 1.3 1998/01/29 23:22:29 marekm Exp $")
-
-#include <unistd.h>
-/* #include <stdio.h> */
-#include <string.h>
-#include "md5.h"
-
-static unsigned char itoa64[] =                /* 0 ... 63 => ascii - 64 */
-       "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
-
-static void
-to64(char *s, unsigned long v, int n)
-{
-       while (--n >= 0) {
-               *s++ = itoa64[v&0x3f];
-               v >>= 6;
-       }
-}
-
-/*
- * UNIX password
- *
- * Use MD5 for what it is best at...
- */
-
-char *
-libshadow_md5_crypt(const char *pw, const char *salt)
-{
-       static char     *magic = "$1$"; /*
-                                                * This string is magic for
-                                                * this algorithm.  Having
-                                                * it this way, we can get
-                                                * get better later on
-                                                */
-       static char     passwd[120], *p;
-       static const char *sp,*ep;
-       unsigned char   final[16];
-       int sl,pl,i,j;
-       MD5_CTX ctx,ctx1;
-       unsigned long l;
-
-       /* Refine the Salt first */
-       sp = salt;
-
-       /* If it starts with the magic string, then skip that */
-       if(!strncmp(sp,magic,strlen(magic)))
-               sp += strlen(magic);
-
-       /* It stops at the first '$', max 8 chars */
-       for(ep=sp;*ep && *ep != '$' && ep < (sp+8);ep++)
-               continue;
-
-       /* get the length of the true salt */
-       sl = ep - sp;
-
-       MD5Init(&ctx);
-
-       /* The password first, since that is what is most unknown */
-       MD5Update(&ctx,pw,strlen(pw));
-
-       /* Then our magic string */
-       MD5Update(&ctx,magic,strlen(magic));
-
-       /* Then the raw salt */
-       MD5Update(&ctx,sp,sl);
-
-       /* Then just as many characters of the MD5(pw,salt,pw) */
-       MD5Init(&ctx1);
-       MD5Update(&ctx1,pw,strlen(pw));
-       MD5Update(&ctx1,sp,sl);
-       MD5Update(&ctx1,pw,strlen(pw));
-       MD5Final(final,&ctx1);
-       for(pl = strlen(pw); pl > 0; pl -= 16)
-               MD5Update(&ctx,final,pl>16 ? 16 : pl);
-
-       /* Don't leave anything around in vm they could use. */
-       memset(final,0,sizeof final);
-
-       /* Then something really weird... */
-       for (j=0,i = strlen(pw); i ; i >>= 1)
-               if(i&1)
-                   MD5Update(&ctx, final+j, 1);
-               else
-                   MD5Update(&ctx, pw+j, 1);
-
-       /* Now make the output string */
-       strcpy(passwd,magic);
-       strncat(passwd,sp,sl);
-       strcat(passwd,"$");
-
-       MD5Final(final,&ctx);
-
-       /*
-        * and now, just to make sure things don't run too fast
-        * On a 60 Mhz Pentium this takes 34 msec, so you would
-        * need 30 seconds to build a 1000 entry dictionary...
-        */
-       for(i=0;i<1000;i++) {
-               MD5Init(&ctx1);
-               if(i & 1)
-                       MD5Update(&ctx1,pw,strlen(pw));
-               else
-                       MD5Update(&ctx1,final,16);
-
-               if(i % 3)
-                       MD5Update(&ctx1,sp,sl);
-
-               if(i % 7)
-                       MD5Update(&ctx1,pw,strlen(pw));
-
-               if(i & 1)
-                       MD5Update(&ctx1,final,16);
-               else
-                       MD5Update(&ctx1,pw,strlen(pw));
-               MD5Final(final,&ctx1);
-       }
-
-       p = passwd + strlen(passwd);
-
-       l = (final[ 0]<<16) | (final[ 6]<<8) | final[12]; to64(p,l,4); p += 4;
-       l = (final[ 1]<<16) | (final[ 7]<<8) | final[13]; to64(p,l,4); p += 4;
-       l = (final[ 2]<<16) | (final[ 8]<<8) | final[14]; to64(p,l,4); p += 4;
-       l = (final[ 3]<<16) | (final[ 9]<<8) | final[15]; to64(p,l,4); p += 4;
-       l = (final[ 4]<<16) | (final[10]<<8) | final[ 5]; to64(p,l,4); p += 4;
-       l =                    final[11]                ; to64(p,l,2); p += 2;
-       *p = '\0';
-
-       /* Don't leave anything around in vm they could use. */
-       memset(final,0,sizeof final);
-
-       return passwd;
-}
-#endif
diff --git a/lib/mkdir.c b/lib/mkdir.c
deleted file mode 100644 (file)
index 9e26b22..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright 1991, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-#include <fcntl.h>
-
-#include "rcsid.h"
-RCSID("$Id: mkdir.c,v 1.4 1998/01/29 23:22:30 marekm Exp $")
-
-/*
- * mkdir - create a directory
- *
- *     mkdir is provided for systems which do not include the mkdir()
- *     system call.
- */
-
-int
-mkdir(const char *dir, int mode)
-{
-       int status;
-
-       if (fork()) {
-               while (wait(&status) != -1)
-                       ;
-
-               return status >> 8;
-       }
-       close(2);
-       open("/dev/null", O_WRONLY);
-       umask(0777 & ~ mode);
-       execl("/bin/mkdir", "mkdir", dir, 0);
-       _exit(127);
-       /*NOTREACHED*/
-}
index 58d25c5cca71180f0cf878534b99a9e56b6eb9d8..6dbc2925e60691d23e84394f9da629b5d0efc31d 100644 (file)
@@ -14,8 +14,3 @@
 #ifndef PAM_DATA_SILENT
 #define PAM_DATA_SILENT 0
 #endif
-#ifdef PAM_STRERROR_NEEDS_TWO_ARGS  /* Linux-PAM 0.59+ */
-#define PAM_STRERROR(pamh, err) pam_strerror(pamh, err)
-#else
-#define PAM_STRERROR(pamh, err) pam_strerror(err)
-#endif
diff --git a/lib/putgrent.c b/lib/putgrent.c
deleted file mode 100644 (file)
index 6559cd9..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright 1990 - 1994, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-
-#include <stdio.h>
-#include <grp.h>
-#include "prototypes.h"
-#include "defines.h"
-
-int
-putgrent(const struct group *g, FILE *f)
-{
-       char *buf, *cp;
-       int i;
-       size_t size;
-
-       if (!g || !f)
-               return -1;
-
-       /* calculate the required buffer size (40 is added for the
-          numeric GID, colons, newline, and terminating NUL).  */
-       size = strlen(g->gr_name) + strlen(g->gr_passwd) + 40;
-       for (i = 0; g->gr_mem && g->gr_mem[i]; i++)
-               size += strlen(g->gr_mem[i]) + 1;
-
-       buf = malloc(size);
-       if (!buf)
-               return -1;
-
-       sprintf(buf, "%s:%s:%ld:", g->gr_name, g->gr_passwd, (long) g->gr_gid);
-       cp = buf + strlen(buf);
-       for (i = 0; g->gr_mem && g->gr_mem[i]; i++) {
-               if (i > 0)
-                       *cp++ = ',';
-               strcpy(cp, g->gr_mem[i]);
-               cp += strlen(cp);
-       }
-       *cp++ = '\n';
-       *cp = '\0';
-
-       if (fputsx(buf, f) == EOF || ferror(f)) {
-               free(buf);
-               return -1;
-       }
-
-       free(buf);
-       return 0;
-}
diff --git a/lib/putpwent.c b/lib/putpwent.c
deleted file mode 100644 (file)
index bdc011c..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Copyright 1989 - 1994, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-
-#include "rcsid.h"
-RCSID("$Id: putpwent.c,v 1.3 1997/12/07 23:26:54 marekm Exp $")
-
-#include "defines.h"
-#include <stdio.h>
-#include <pwd.h>
-
-/*
- * putpwent - Output a (struct passwd) in character format
- *
- *     putpwent() writes out a (struct passwd) in the format it appears
- *     in in flat ASCII files.
- *
- *     (Author: Dr. Micheal Newberry)
- */
-
-int
-putpwent(const struct passwd *p, FILE *f)
-{
-       int status;
-
-#if defined(SUN) || defined(BSD) || defined(SUN4)
-       status = fprintf (f, "%s:%s:%d:%d:%s,%s:%s:%s\n",
-               p->pw_name, p->pw_passwd, p->pw_uid, p->pw_gid,
-               p->pw_gecos, p->pw_comment, p->pw_dir, p->pw_shell) == EOF;
-#else
-       status = fprintf (f, "%s:%s", p->pw_name, p->pw_passwd) == EOF;
-#ifdef ATT_AGE
-       if (p->pw_age && p->pw_age[0])
-               status |= fprintf (f, ",%s", p->pw_age) == EOF;
-#endif
-       status |= fprintf (f, ":%d:%d:%s", p->pw_uid, p->pw_gid,
-               p->pw_gecos) == EOF;
-#ifdef ATT_COMMENT
-       if (p->pw_comment && p->pw_comment[0])
-               status |= fprintf (f, ",%s", p->pw_comment) == EOF;
-#endif
-       status |= fprintf (f, ":%s:%s\n", p->pw_dir, p->pw_shell) == EOF;
-#endif
-       return status;
-}
diff --git a/lib/putspent.c b/lib/putspent.c
deleted file mode 100644 (file)
index 941d76b..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright 1989 - 1994, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-
-#ifdef SHADOWPWD /*{*/
-#ifndef HAVE_PUTSPENT
-
-#include "rcsid.h"
-RCSID("$Id: putspent.c,v 1.3 1997/12/07 23:26:54 marekm Exp $")
-
-#include <sys/types.h>
-#include "prototypes.h"
-#include "defines.h"
-#include <stdio.h>
-
-int
-putspent(const struct spwd *sp, FILE *fp)
-{
-       int     errors = 0;
-
-       if (! fp || ! sp)
-               return -1;
-
-       if (fprintf (fp, "%s:%s:", sp->sp_namp, sp->sp_pwdp) < 0)
-               errors++;
-
-       if (sp->sp_lstchg != -1) {
-               if (fprintf (fp, "%ld:", sp->sp_lstchg) < 0)
-                       errors++;
-       } else if (putc (':', fp) == EOF)
-               errors++;
-
-       if (sp->sp_min != -1) {
-               if (fprintf (fp, "%ld:", sp->sp_min) < 0)
-                       errors++;
-       } else if (putc (':', fp) == EOF)
-               errors++;
-
-       if (sp->sp_max != -1) {
-               if (fprintf (fp, "%ld:", sp->sp_max) < 0)
-                       errors++;
-       } else if (putc (':', fp) == EOF)
-               errors++;
-
-       if (sp->sp_warn != -1) {
-               if (fprintf (fp, "%ld:", sp->sp_warn) < 0)
-                       errors++;
-       } else if (putc (':', fp) == EOF)
-               errors++;
-
-       if (sp->sp_inact != -1) {
-               if (fprintf (fp, "%ld:", sp->sp_inact) < 0)
-                       errors++;
-       } else if (putc (':', fp) == EOF)
-               errors++;
-
-       if (sp->sp_expire != -1) {
-               if (fprintf (fp, "%ld:", sp->sp_expire) < 0)
-                       errors++;
-       } else if (putc (':', fp) == EOF)
-               errors++;
-
-       if (sp->sp_flag != -1) {
-               if (fprintf (fp, "%ld", sp->sp_flag) < 0)
-                       errors++;
-       }
-       if (putc ('\n', fp) == EOF)
-               errors++;
-
-       if (errors)
-               return -1;
-       else
-               return 0;
-}
-#endif
-#endif /*}*/
index 70b3d9ab6095715a32ca29fffd81c078324600b2..a0f2d3adcf1f95af1a0ad953f4d99bfe9165820c 100644 (file)
@@ -2,7 +2,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID("$Id: pwio.c,v 1.11 2000/09/02 18:40:43 marekm Exp $")
+RCSID("$Id: pwio.c,v 1.12 2001/08/14 21:10:36 malekith Exp $")
 
 #include "prototypes.h"
 #include "defines.h"
@@ -184,3 +184,37 @@ __pw_del_entry(const struct commonio_entry *ent)
 {
        commonio_del_entry(&passwd_db, ent);
 }
+
+struct commonio_db *
+__pw_get_db(void)
+{
+       return &passwd_db;
+}
+
+static int
+pw_cmp(const void *p1, const void *p2)
+{
+       uid_t u1, u2;
+
+       if ((*(struct commonio_entry**)p1)->eptr == NULL)
+               return 1;
+       if ((*(struct commonio_entry**)p2)->eptr == NULL)
+               return -1;
+       
+       u1 = ((struct passwd *)(*(struct commonio_entry**)p1)->eptr)->pw_uid;
+       u2 = ((struct passwd *)(*(struct commonio_entry**)p2)->eptr)->pw_uid;
+
+       if (u1 < u2)
+               return -1;
+       else if (u1 > u2)
+               return 1;
+       else
+               return 0;
+}
+
+/* Sort entries by uid */
+int
+pw_sort()
+{
+       return commonio_sort(&passwd_db, pw_cmp);
+}
index 199f67da7d9b4418781f084f9a5cae7aabf3c2c8..37874611a1c1909a2bd45aa1b3d6af55f36cdf4f 100644 (file)
@@ -10,3 +10,4 @@ extern int pw_remove(const char *);
 extern int pw_rewind(void);
 extern int pw_unlock(void);
 extern int pw_update(const struct passwd *);
+extern int pw_sort(void);
diff --git a/lib/rename.c b/lib/rename.c
deleted file mode 100644 (file)
index d693d79..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
- * Copyright 1993 - 1994, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-
-#include "rcsid.h"
-RCSID("$Id: rename.c,v 1.3 1997/12/07 23:26:57 marekm Exp $")
-
-#include "defines.h"
-#include <sys/stat.h>
-#include <errno.h>
-
-/*
- * rename - rename a file to another name
- *
- *     rename is provided for systems which do not include the rename()
- *     system call.
- */
-
-int
-rename(const char *begin, const char *end)
-{
-       struct  stat    s1, s2;
-       extern  int     errno;
-       int     orig_err = errno;
-
-       if (stat (begin, &s1))
-               return -1;
-
-       if (stat (end, &s2)) {
-               errno = orig_err;
-       } else {
-
-               /*
-                * See if this is a cross-device link.  We do this to
-                * insure that the link below has a chance of working.
-                */
-
-               if (s1.st_dev != s2.st_dev) {
-                       errno = EXDEV;
-                       return -1;
-               }
-
-               /*
-                * See if we can unlink the existing destination
-                * file.  If the unlink works the directory is writable,
-                * so there is no need here to figure that out.
-                */
-
-               if (unlink (end))
-                       return -1;
-       }
-
-       /*
-        * Now just link the original name to the final name.  If there
-        * was no file previously, this link will fail if the target
-        * directory isn't writable.  The unlink will fail if the source
-        * directory isn't writable, but life stinks ...
-        */
-
-       if (link (begin, end) || unlink (begin))
-               return -1;
-
-       return 0;
-}
diff --git a/lib/rmdir.c b/lib/rmdir.c
deleted file mode 100644 (file)
index d6a5750..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright 1991, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-#include <fcntl.h>
-
-#include "rcsid.h"
-RCSID("$Id: rmdir.c,v 1.4 1998/01/29 23:22:31 marekm Exp $")
-
-/*
- * rmdir - remove a directory
- *
- *     rmdir is provided for systems which do not include the rmdir()
- *     system call.
- */
-
-int
-rmdir(const char *dir)
-{
-       int status;
-
-       if (fork()) {
-               while (wait(&status) != -1)
-                       ;
-
-               return status >> 8;
-       }
-       close(2);
-       open("/dev/null", O_WRONLY);
-       execl("/bin/rmdir", "rmdir", dir, 0);
-       _exit(127);
-       /*NOTREACHED*/
-}
diff --git a/lib/sgetspent.c b/lib/sgetspent.c
deleted file mode 100644 (file)
index 1860075..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-/*
- * Copyright 1989 - 1994, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-
-#ifdef SHADOWPWD       /*{*/
-
-#include "rcsid.h"
-RCSID("$Id: sgetspent.c,v 1.5 1998/04/02 21:51:47 marekm Exp $")
-
-#include <sys/types.h>
-#include "prototypes.h"
-#include "defines.h"
-#include <stdio.h>
-
-#define        FIELDS  9
-#define        OFIELDS 5
-
-/*
- * sgetspent - convert string in shadow file format to (struct spwd *)
- */
-
-struct spwd *
-sgetspent(const char *string)
-{
-       static char spwbuf[1024];
-       static struct spwd spwd;
-       char    *fields[FIELDS];
-       char    *cp;
-       char    *cpp;
-       int     i;
-
-       /*
-        * Copy string to local buffer.  It has to be tokenized and we
-        * have to do that to our private copy.
-        */
-
-       if (strlen(string) >= sizeof spwbuf)
-               return 0;  /* fail if too long */
-       strcpy(spwbuf, string);
-
-       if ((cp = strrchr (spwbuf, '\n')))
-               *cp = '\0';
-
-       /*
-        * Tokenize the string into colon separated fields.  Allow up to
-        * FIELDS different fields.
-        */
-
-       for (cp = spwbuf, i = 0;*cp && i < FIELDS;i++) {
-               fields[i] = cp;
-               while (*cp && *cp != ':')
-                       cp++;
-
-               if (*cp)
-                       *cp++ = '\0';
-       }
-
-       /*
-        * It is acceptable for the last SVR4 field to be blank.  This
-        * results in the loop being terminated early.  In which case,
-        * we just make the last field be blank and be done with it.
-        */
-
-       if (i == (FIELDS-1))
-               fields[i++] = cp;
-
-       if ((cp && *cp) || (i != FIELDS && i != OFIELDS))
-               return 0;
-
-       /*
-        * Start populating the structure.  The fields are all in
-        * static storage, as is the structure we pass back.
-        */
-
-       spwd.sp_namp = fields[0];
-       spwd.sp_pwdp = fields[1];
-
-       /*
-        * Get the last changed date.  For all of the integer fields,
-        * we check for proper format.  It is an error to have an
-        * incorrectly formatted number.
-        */
-
-       if ((spwd.sp_lstchg = strtol (fields[2], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[2][0] == '\0')
-               spwd.sp_lstchg = -1;
-
-       /*
-        * Get the minimum period between password changes.
-        */
-
-       if ((spwd.sp_min = strtol (fields[3], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[3][0] == '\0')
-               spwd.sp_min = -1;
-
-       /*
-        * Get the maximum number of days a password is valid.
-        */
-
-       if ((spwd.sp_max = strtol (fields[4], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[4][0] == '\0')
-               spwd.sp_max = -1;
-
-       /*
-        * If there are only OFIELDS fields (this is a SVR3.2 /etc/shadow
-        * formatted file), initialize the other field members to -1.
-        */
-
-#if 0  /* SVR4 */
-       if (i == OFIELDS)
-               return 0;
-#else
-       if (i == OFIELDS) {
-               spwd.sp_warn = spwd.sp_inact = spwd.sp_expire =
-                       spwd.sp_flag = -1;
-
-               return &spwd;
-       }
-#endif
-
-       /*
-        * The rest of the fields are mandatory for SVR4, but optional
-        * for anything else.  However, if one is present the others
-        * must be as well.
-        */
-
-       /*
-        * Get the number of days of password expiry warning.
-        */
-
-       if ((spwd.sp_warn = strtol (fields[5], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[5][0] == '\0')
-               spwd.sp_warn = -1;
-
-       /*
-        * Get the number of days of inactivity before an account is
-        * disabled.
-        */
-
-       if ((spwd.sp_inact = strtol (fields[6], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[6][0] == '\0')
-               spwd.sp_inact = -1;
-
-       /*
-        * Get the number of days after the epoch before the account is
-        * set to expire.
-        */
-
-       if ((spwd.sp_expire = strtol (fields[7], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[7][0] == '\0')
-               spwd.sp_expire = -1;
-
-       /*
-        * This field is reserved for future use.  But it isn't supposed
-        * to have anything other than a valid integer in it.
-        */
-
-       if ((spwd.sp_flag = strtol (fields[8], &cpp, 10)) == 0 && *cpp) {
-               return 0;
-       } else if (fields[8][0] == '\0')
-               spwd.sp_flag = -1;
-
-       return (&spwd);
-}
-#endif /*}*/
index 3bf2a0878d33d5e87beab7cb97fc3f6cb8acc828..f5965f82892e378f240692036a1363f12fa91c69 100644 (file)
@@ -4,7 +4,7 @@
 #ifdef SHADOWGRP
 
 #include "rcsid.h"
-RCSID("$Id: sgroupio.c,v 1.11 2000/09/02 18:40:43 marekm Exp $")
+RCSID("$Id: sgroupio.c,v 1.12 2001/08/14 21:10:36 malekith Exp $")
 
 #include "prototypes.h"
 #include "defines.h"
@@ -207,6 +207,15 @@ __sgr_del_entry(const struct commonio_entry *ent)
 {
        commonio_del_entry(&gshadow_db, ent);
 }
+
+/* Sort with respect to group ordering. */
+int
+sgr_sort()
+{
+       extern struct commonio_db *__gr_get_db();
+
+       return commonio_sort_wrt(&gshadow_db, __gr_get_db());
+}
 #else
 extern int errno;  /* warning: ANSI C forbids an empty source file */
 #endif
index e9c93bf6304b12640e93b6e977db3bef61994d48..462b58bdcef16516bcb0e2e7562d776fa3191c7b 100644 (file)
@@ -11,3 +11,4 @@ extern int sgr_remove(const char *);
 extern int sgr_rewind(void);
 extern int sgr_unlock(void);
 extern int sgr_update(const struct sgrp *);
+extern int sgr_sort(void);
index e6707cf2b1e9ba86e3d907afccceb8b16035c76a..0fceeb751701d7c6aeb78a865167beb3cd7fd2e9 100644 (file)
@@ -4,7 +4,7 @@
 #ifdef SHADOWPWD
 
 #include "rcsid.h"
-RCSID("$Id: shadowio.c,v 1.12 2000/09/02 18:40:43 marekm Exp $")
+RCSID("$Id: shadowio.c,v 1.13 2001/08/14 21:10:36 malekith Exp $")
 
 #include "prototypes.h"
 #include "defines.h"
@@ -168,4 +168,13 @@ __spw_del_entry(const struct commonio_entry *ent)
 {
        commonio_del_entry(&shadow_db, ent);
 }
+
+/* Sort with respect to passwd ordering. */
+int
+spw_sort()
+{
+       extern struct commonio_db *__pw_get_db();
+
+       return commonio_sort_wrt(&shadow_db, __pw_get_db());
+}
 #endif
index b3118d5c2c39b0d04c60c6d158820559bc17af14..25ffed0f45e9981fd304d35357c34c26ab9aa329 100644 (file)
@@ -11,3 +11,4 @@ extern int spw_remove(const char *);
 extern int spw_rewind(void);
 extern int spw_unlock(void);
 extern int spw_update(const struct spwd *);
+extern int spw_sort(void);
diff --git a/lib/snprintf.c b/lib/snprintf.c
deleted file mode 100644 (file)
index c62366d..0000000
+++ /dev/null
@@ -1,320 +0,0 @@
-/**************************************************************
- * Original:
- * Patrick Powell Tue Apr 11 09:48:21 PDT 1995
- * A bombproof version of doprnt (dopr) included.
- * Sigh.  This sort of thing is always nasty do deal with.  Note that
- * the version here does not include floating point...
- *
- * snprintf() is used instead of sprintf() as it does limit checks
- * for string length.  This covers a nasty loophole.
- *
- * The other functions are there to prevent NULL pointers from
- * causing nast effects.
- **************************************************************/
-
-/* $XFree86: xc/lib/misc/snprintf.c,v 3.0 1996/08/26 06:19:23 dawes Exp $ */
-
-#include <ctype.h>
-#include "snprintf.h"
-
-static void dopr();
-static char *end;
-
-/* varargs declarations: */
-
-#if defined(HAVE_STDARG_H)
-# include <stdarg.h>
-# define HAVE_STDARGS    /* let's hope that works everywhere (mj) */
-# define VA_LOCAL_DECL   va_list ap;
-# define VA_START(f)     va_start(ap, f)
-# define VA_SHIFT(v,t)  ;   /* no-op for ANSI */
-# define VA_END          va_end(ap)
-#else
-# if defined(HAVE_VARARGS_H)
-#  include <varargs.h>
-#  undef HAVE_STDARGS
-#  define VA_LOCAL_DECL   va_list ap;
-#  define VA_START(f)     va_start(ap)      /* f is ignored! */
-#  define VA_SHIFT(v,t) v = va_arg(ap,t)
-#  define VA_END        va_end(ap)
-# else
-/*XX ** NO VARARGS ** XX*/
-# endif
-#endif
-
-#ifdef HAVE_STDARGS
-int snprintf (char *str, size_t count, const char *fmt, ...);
-int vsnprintf (char *str, size_t count, const char *fmt, va_list arg);
-#else
-int snprintf ();
-int vsnprintf ();
-#endif
-
-int
-vsnprintf(str, count, fmt, args)
-       char *str;
-       size_t count;
-       const char *fmt;
-       va_list args;
-{
-       str[0] = 0;
-       end = str+count-1;
-       dopr( str, fmt, args );
-       if( count>0 ){
-               end[0] = 0;
-       }
-       return(strlen(str));
-}
-
-/* VARARGS3 */
-#ifdef HAVE_STDARGS
-int
-snprintf (char *str,size_t count,const char *fmt,...)
-#else
-int
-snprintf (va_alist) va_dcl
-#endif
-{
-#ifndef HAVE_STDARGS
-    char *str;
-       size_t count;
-    char *fmt;
-#endif
-    VA_LOCAL_DECL
-
-    VA_START (fmt);
-    VA_SHIFT (str, char *);
-    VA_SHIFT (count, size_t );
-    VA_SHIFT (fmt, char *);
-    (void) vsnprintf ( str, count, fmt, ap);
-    VA_END;
-       return( strlen( str ) );
-}
-
-/*
- * dopr(): poor man's version of doprintf
- */
-
-static void fmtstr(
-#if NeedFunctionPrototypes
-       char *value, int ljust, int len, int zpad
-#endif
-);
-
-static void fmtnum(
-#if NeedFunctionPrototypes
-       long value, int base, int dosign, int ljust, int len, int zpad
-#endif
-);
-
-static void dostr(
-#if NeedFunctionPrototypes
-       char *
-#endif
-);
-
-static char *output;
-
-static void dopr_outch(
-#if NeedFunctionPrototypes
-       int c
-#endif
-);
-
-static void
-dopr( buffer, format, args )
-       char *buffer;
-       char *format;
-       va_list args;
-{
-       int ch;
-       long value;
-       int longflag = 0;
-       char *strvalue;
-       int ljust;
-       int len;
-       int zpad;
-
-       output = buffer;
-       while( (ch = *format++) ){
-               switch( ch ){
-               case '%':
-                       ljust = len = zpad = 0;
-               nextch:
-                       ch = *format++;
-                       switch( ch ){
-                       case 0:
-                               dostr( "**end of format**" );
-                               return;
-                       case '-': ljust = 1; goto nextch;
-                       case '0': /* set zero padding if len not set */
-                               if(len==0) zpad = '0';
-                       case '1': case '2': case '3':
-                       case '4': case '5': case '6':
-                       case '7': case '8': case '9':
-                               len = len*10 + ch - '0';
-                               goto nextch;
-                       case 'l': longflag = 1; goto nextch;
-                       case 'u': case 'U':
-                               /*fmtnum(value,base,dosign,ljust,len,zpad) */
-                               if( longflag ){
-                                       value = va_arg( args, long );
-                               } else {
-                                       value = va_arg( args, int );
-                               }
-                               fmtnum( value, 10,0, ljust, len, zpad ); break;
-                       case 'o': case 'O':
-                               /*fmtnum(value,base,dosign,ljust,len,zpad) */
-                               if( longflag ){
-                                       value = va_arg( args, long );
-                               } else {
-                                       value = va_arg( args, int );
-                               }
-                               fmtnum( value, 8,0, ljust, len, zpad ); break;
-                       case 'd': case 'D':
-                               if( longflag ){
-                                       value = va_arg( args, long );
-                               } else {
-                                       value = va_arg( args, int );
-                               }
-                               fmtnum( value, 10,1, ljust, len, zpad ); break;
-                       case 'x':
-                               if( longflag ){
-                                       value = va_arg( args, long );
-                               } else {
-                                       value = va_arg( args, int );
-                               }
-                               fmtnum( value, 16,0, ljust, len, zpad ); break;
-                       case 'X':
-                               if( longflag ){
-                                       value = va_arg( args, long );
-                               } else {
-                                       value = va_arg( args, int );
-                               }
-                               fmtnum( value,-16,0, ljust, len, zpad ); break;
-                       case 's':
-                               strvalue = va_arg( args, char *);
-                               fmtstr( strvalue,ljust,len,zpad ); break;
-                       case 'c':
-                               ch = va_arg( args, int );
-                               dopr_outch( ch ); break;
-                       case '%': dopr_outch( ch ); continue;
-                       default:
-                               dostr(  "???????" );
-                       }
-                       longflag = 0;
-                       break;
-               default:
-                       dopr_outch( ch );
-                       break;
-               }
-       }
-       *output = 0;
-}
-
-static void
-fmtstr(  value, ljust, len, zpad )
-       char *value;
-       int ljust, len, zpad;
-{
-       int padlen, strlen;     /* amount to pad */
-
-       if( value == 0 ){
-               value = "<NULL>";
-       }
-       for( strlen = 0; value[strlen]; ++ strlen ); /* strlen */
-       padlen = len - strlen;
-       if( padlen < 0 ) padlen = 0;
-       if( ljust ) padlen = -padlen;
-       while( padlen > 0 ) {
-               dopr_outch( ' ' );
-               --padlen;
-       }
-       dostr( value );
-       while( padlen < 0 ) {
-               dopr_outch( ' ' );
-               ++padlen;
-       }
-}
-
-static void
-fmtnum(  value, base, dosign, ljust, len, zpad )
-       long value;
-       int base, dosign, ljust, len, zpad;
-{
-       int signvalue = 0;
-       unsigned long uvalue;
-       char convert[20];
-       int place = 0;
-       int padlen = 0; /* amount to pad */
-       int caps = 0;
-
-       /* DEBUGP(("value 0x%x, base %d, dosign %d, ljust %d, len %d, zpad %d\n",
-               value, base, dosign, ljust, len, zpad )); */
-       uvalue = value;
-       if( dosign ){
-               if( value < 0 ) {
-                       signvalue = '-';
-                       uvalue = -value;
-               }
-       }
-       if( base < 0 ){
-               caps = 1;
-               base = -base;
-       }
-       do{
-               convert[place++] =
-                       (caps? "0123456789ABCDEF":"0123456789abcdef")
-                        [uvalue % (unsigned)base  ];
-               uvalue = (uvalue / (unsigned)base );
-       }while(uvalue);
-       convert[place] = 0;
-       padlen = len - place;
-       if( padlen < 0 ) padlen = 0;
-       if( ljust ) padlen = -padlen;
-       /* DEBUGP(( "str '%s', place %d, sign %c, padlen %d\n",
-               convert,place,signvalue,padlen)); */
-       if( zpad && padlen > 0 ){
-               if( signvalue ){
-                       dopr_outch( signvalue );
-                       --padlen;
-                       signvalue = 0;
-               }
-               while( padlen > 0 ){
-                       dopr_outch( zpad );
-                       --padlen;
-               }
-       }
-       while( padlen > 0 ) {
-               dopr_outch( ' ' );
-               --padlen;
-       }
-       if( signvalue ) dopr_outch( signvalue );
-       while( place > 0 ) dopr_outch( convert[--place] );
-       while( padlen < 0 ){
-               dopr_outch( ' ' );
-               ++padlen;
-       }
-}
-
-static void
-dostr( str )
-       char *str;
-{
-       while(*str) dopr_outch(*str++);
-}
-
-static void
-dopr_outch( c )
-       int c;
-{
-       if( iscntrl(c) && c != '\n' && c != '\t' ){
-               c = '@' + (c & 0x1F);
-               if( end == 0 || output < end ){
-                       *output++ = '^';
-               }
-       }
-       if( end == 0 || output < end ){
-               *output++ = c;
-       }
-}
diff --git a/lib/strcasecmp.c b/lib/strcasecmp.c
deleted file mode 100644 (file)
index 414a47a..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-#include <config.h>
-#include "defines.h"
-#include <ctype.h>
-
-#include "rcsid.h"
-RCSID("$Id: strcasecmp.c,v 1.1 1999/07/09 18:02:43 marekm Exp $")
-
-/*
- * strcasecmp - compare strings, ignoring case
- */
-
-char *
-strcasecmp(const char *s1, const char *s2)
-{
-       int ret;
-
-       for (;;) {
-               ret = tolower(*s1) - tolower(*s2);
-               if (ret || *s1 == '\0' || *s2 == '\0')
-                       break;
-               s1++;
-               s2++;
-       }
-       return ret;
-}
diff --git a/lib/strdup.c b/lib/strdup.c
deleted file mode 100644 (file)
index fe522b4..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-#include <config.h>
-#include "defines.h"
-#include "rcsid.h"
-RCSID("$Id: strdup.c,v 1.2 1997/12/07 23:26:59 marekm Exp $")
-
-extern char *malloc();
-
-char *
-strdup(const char *str)
-{
-       char *s = malloc(strlen(str) + 1);
-
-       if (s)
-               strcpy(s, str);
-       return s;
-}
diff --git a/lib/strerror.c b/lib/strerror.c
deleted file mode 100644 (file)
index 184b1a4..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#include <config.h>
-#include <errno.h>
-#include "defines.h"
-#include "rcsid.h"
-RCSID("$Id: strerror.c,v 1.3 1998/12/28 20:34:39 marekm Exp $")
-
-#include <stdio.h>
-
-extern int sys_nerr;
-extern char *sys_errlist[];
-
-char *
-strerror(int err)
-{
-       static char unknown[80];
-
-       if (err >= 0 && err < sys_nerr)
-               return sys_errlist[err];
-
-       snprintf(unknown, sizeof unknown, _("Unknown error %d"), err);
-       errno = EINVAL;
-       return unknown;
-}
diff --git a/lib/strstr.c b/lib/strstr.c
deleted file mode 100644 (file)
index b4fca45..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright 1989 - 1994, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <config.h>
-#include "defines.h"
-
-#include "rcsid.h"
-RCSID("$Id: strstr.c,v 1.4 1998/01/29 23:22:32 marekm Exp $")
-
-/*
- * strstr - find substring in string
- */
-
-char *
-strstr(const char *string, const char *pattern)
-{
-       char    *cp;
-       int     len;
-
-       len = strlen (pattern);
-
-       for (cp = string;cp = strchr (cp, *pattern);) {
-               if (strncmp (cp, pattern, len) == 0)
-                       return cp;
-
-               cp++;
-       }
-       return 0;
-}
index 0ef2f6f411733c97680b155b191603574c4dcd9d..bd2b3ce98d25e14d07866286157a4087840762a3 100644 (file)
@@ -1,20 +1,18 @@
 
-AUTOMAKE_OPTIONS = 1.0 foreign
+EXTRA_DOST = .indent.pro
 
-noinst_HEADERS = chkname.h failure.h getdate.h
+DEFS = -DHAVE_CONFIG_H
 
-noinst_LIBRARIES = libmisc.a
+INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/lib
 
-libdir = $(prefix)/lib
-localedir = $(datadir)/locale
-INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib
-DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
+lib_LTLIBRARIES = libmisc.la
 
-libmisc_a_SOURCES = \
+libmisc_la_SOURCES = \
        addgrps.c \
        age.c \
        basename.c \
        chkname.c \
+       chkname.h \
        chkshell.c \
        chowndir.c \
        chowntty.c \
@@ -23,8 +21,10 @@ libmisc_a_SOURCES = \
        entry.c \
        env.c \
        failure.c \
+       failure.h \
        fields.c \
        getdate.y \
+       getdate.h \
        hushed.c \
        isexpired.c \
        limits.c \
@@ -57,4 +57,3 @@ libmisc_a_SOURCES = \
        utmp.c \
        valid.c \
        xmalloc.c
-
index a1f049adb77c54fc32d012c5a8256a6ab759346b..fb14b21cd46c7f5770720e7c93679950a605257f 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
@@ -10,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
 
 SHELL = @SHELL@
 
@@ -26,17 +28,14 @@ datadir = @datadir@
 sysconfdir = @sysconfdir@
 sharedstatedir = @sharedstatedir@
 localstatedir = @localstatedir@
+libdir = @libdir@
 infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -48,9 +47,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -59,284 +57,438 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
-
-AUTOMAKE_OPTIONS = 1.0 foreign
-
-noinst_HEADERS = chkname.h failure.h getdate.h
-
-noinst_LIBRARIES = libmisc.a
-
-libdir = $(prefix)/lib
-localedir = $(datadir)/locale
-INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib
-DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
-
-libmisc_a_SOURCES =    addgrps.c       age.c   basename.c      chkname.c       chkshell.c      chowndir.c      chowntty.c      console.c       copydir.c       entry.c         env.c   failure.c       fields.c        getdate.y       hushed.c        isexpired.c     limits.c        list.c log.c    login_access.c  login_desrpc.c  login_krb.c     loginprompt.c   mail.c  motd.c  myname.c        obscure.c       pam_pass.c      pwd2spwd.c      pwdcheck.c      pwd_init.c      rlogin.c        salt.c  setugid.c       setup.c         setupenv.c      shell.c         strtoday.c      suauth.c        sub.c   sulog.c         ttytype.c       tz.c    ulimit.c        utmp.c  valid.c         xmalloc.c
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
+
+EXTRA_DOST = .indent.pro
+
+DEFS = -DHAVE_CONFIG_H
+
+INCLUDES = -I$(top_srcdir) -I$(top_srcdir)/lib
+
+lib_LTLIBRARIES = libmisc.la
+
+libmisc_la_SOURCES = \
+       addgrps.c \
+       age.c \
+       basename.c \
+       chkname.c \
+       chkname.h \
+       chkshell.c \
+       chowndir.c \
+       chowntty.c \
+       console.c \
+       copydir.c \
+       entry.c \
+       env.c \
+       failure.c \
+       failure.h \
+       fields.c \
+       getdate.y \
+       getdate.h \
+       hushed.c \
+       isexpired.c \
+       limits.c \
+       list.c log.c \
+       login_access.c \
+       login_desrpc.c \
+       login_krb.c \
+       loginprompt.c \
+       mail.c \
+       motd.c \
+       myname.c \
+       obscure.c \
+       pam_pass.c \
+       pwd2spwd.c \
+       pwdcheck.c \
+       pwd_init.c \
+       rlogin.c \
+       salt.c \
+       setugid.c \
+       setup.c \
+       setupenv.c \
+       shell.c \
+       strtoday.c \
+       suauth.c \
+       sub.c \
+       sulog.c \
+       ttytype.c \
+       tz.c \
+       ulimit.c \
+       utmp.c \
+       valid.c \
+       xmalloc.c
 
+subdir = libmisc
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-LIBRARIES =  $(noinst_LIBRARIES)
-
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+LTLIBRARIES = $(lib_LTLIBRARIES)
+
+libmisc_la_LDFLAGS =
+libmisc_la_LIBADD =
+am_libmisc_la_OBJECTS = addgrps.lo age.lo basename.lo chkname.lo \
+       chkshell.lo chowndir.lo chowntty.lo console.lo copydir.lo \
+       entry.lo env.lo failure.lo fields.lo getdate.lo hushed.lo \
+       isexpired.lo limits.lo list.lo log.lo login_access.lo \
+       login_desrpc.lo login_krb.lo loginprompt.lo mail.lo motd.lo \
+       myname.lo obscure.lo pam_pass.lo pwd2spwd.lo pwdcheck.lo \
+       pwd_init.lo rlogin.lo salt.lo setugid.lo setup.lo setupenv.lo \
+       shell.lo strtoday.lo suauth.lo sub.lo sulog.lo ttytype.lo tz.lo \
+       ulimit.lo utmp.lo valid.lo xmalloc.lo
+libmisc_la_OBJECTS = $(am_libmisc_la_OBJECTS)
+DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
 CPPFLAGS = @CPPFLAGS@
 LDFLAGS = @LDFLAGS@
 LIBS = @LIBS@
-libmisc_a_LIBADD = 
-libmisc_a_OBJECTS =  addgrps.o age.o basename.o chkname.o chkshell.o \
-chowndir.o chowntty.o console.o copydir.o entry.o env.o failure.o \
-fields.o getdate.o hushed.o isexpired.o limits.o list.o log.o \
-login_access.o login_desrpc.o login_krb.o loginprompt.o mail.o motd.o \
-myname.o obscure.o pam_pass.o pwd2spwd.o pwdcheck.o pwd_init.o rlogin.o \
-salt.o setugid.o setup.o setupenv.o shell.o strtoday.o suauth.o sub.o \
-sulog.o ttytype.o tz.o ulimit.o utmp.o valid.o xmalloc.o
-AR = ar
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+@AMDEP_TRUE@DEP_FILES = $(DEPDIR)/addgrps.Plo $(DEPDIR)/age.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/basename.Plo $(DEPDIR)/chkname.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/chkshell.Plo $(DEPDIR)/chowndir.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/chowntty.Plo $(DEPDIR)/console.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/copydir.Plo $(DEPDIR)/entry.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/env.Plo $(DEPDIR)/failure.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/fields.Plo $(DEPDIR)/getdate.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/hushed.Plo $(DEPDIR)/isexpired.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/limits.Plo $(DEPDIR)/list.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/log.Plo $(DEPDIR)/login_access.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/login_desrpc.Plo $(DEPDIR)/login_krb.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/loginprompt.Plo $(DEPDIR)/mail.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/motd.Plo $(DEPDIR)/myname.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/obscure.Plo $(DEPDIR)/pam_pass.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/pwd2spwd.Plo $(DEPDIR)/pwd_init.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/pwdcheck.Plo $(DEPDIR)/rlogin.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/salt.Plo $(DEPDIR)/setugid.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/setup.Plo $(DEPDIR)/setupenv.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/shell.Plo $(DEPDIR)/strtoday.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/suauth.Plo $(DEPDIR)/sub.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/sulog.Plo $(DEPDIR)/ttytype.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/tz.Plo $(DEPDIR)/ulimit.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/utmp.Plo $(DEPDIR)/valid.Plo \
+@AMDEP_TRUE@   $(DEPDIR)/xmalloc.Plo
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
+       $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-HEADERS =  $(noinst_HEADERS)
-
-DIST_COMMON =  Makefile.am Makefile.in getdate.c
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+       $(AM_LDFLAGS) $(LDFLAGS) -o $@
+CFLAGS = @CFLAGS@
+YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS)
+LTYACCCOMPILE = $(LIBTOOL) --mode=compile $(YACC) $(YFLAGS) $(AM_YFLAGS)
+DIST_SOURCES = $(libmisc_la_SOURCES)
+DIST_COMMON = Makefile.am Makefile.in getdate.c
+SOURCES = $(libmisc_la_SOURCES)
 
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = $(libmisc_a_SOURCES)
-OBJECTS = $(libmisc_a_OBJECTS)
+all: all-am
 
-all: all-redirect
 .SUFFIXES:
-.SUFFIXES: .S .c .lo .o .s .y
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps libmisc/Makefile
-
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
+.SUFFIXES: .c .lo .o .obj .y
 
-mostlyclean-noinstLIBRARIES:
-
-clean-noinstLIBRARIES:
-       -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-
-distclean-noinstLIBRARIES:
+mostlyclean-libtool:
+       -rm -f *.lo
 
-maintainer-clean-noinstLIBRARIES:
+clean-libtool:
+       -rm -rf .libs _libs
 
-.c.o:
-       $(COMPILE) -c $<
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  libmisc/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+install-libLTLIBRARIES: $(lib_LTLIBRARIES)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(libdir)
+       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+         if test -f $$p; then \
+           echo " $(LIBTOOL) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$p"; \
+           $(LIBTOOL) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$p; \
+         else :; fi; \
+       done
 
-.s.o:
-       $(COMPILE) -c $<
+uninstall-libLTLIBRARIES:
+       @$(NORMAL_UNINSTALL)
+       @list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+         echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p"; \
+         $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+       done
 
-.S.o:
-       $(COMPILE) -c $<
+clean-libLTLIBRARIES:
+       -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
+libmisc.la: $(libmisc_la_OBJECTS) $(libmisc_la_DEPENDENCIES) 
+       $(LINK) -rpath $(libdir) $(libmisc_la_LDFLAGS) $(libmisc_la_OBJECTS) $(libmisc_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
-       -rm -f *.o core *.core
-
-clean-compile:
+       -rm -f *.$(OBJEXT) core *.core
 
 distclean-compile:
        -rm -f *.tab.c
 
-maintainer-clean-compile:
-
-.c.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.s.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.S.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/addgrps.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/age.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/basename.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chkname.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chkshell.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chowndir.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chowntty.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/console.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/copydir.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/entry.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/env.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/failure.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/fields.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/getdate.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/hushed.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/isexpired.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/limits.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/list.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/log.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/login_access.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/login_desrpc.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/login_krb.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/loginprompt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/mail.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/motd.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/myname.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/obscure.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pam_pass.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwd2spwd.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwd_init.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwdcheck.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/rlogin.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/salt.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/setugid.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/setup.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/setupenv.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/shell.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/strtoday.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/suauth.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sub.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sulog.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/ttytype.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/tz.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/ulimit.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/utmp.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/valid.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/xmalloc.Plo@am__quote@
+
+distclean-depend:
+       -rm -rf $(DEPDIR)
 
-mostlyclean-libtool:
-       -rm -f *.lo
-
-clean-libtool:
-       -rm -rf .libs _libs
+.c.o:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(COMPILE) -c `test -f $< || echo '$(srcdir)/'`$<
 
-distclean-libtool:
+.c.obj:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(COMPILE) -c `cygpath -w $<`
 
-maintainer-clean-libtool:
+.c.lo:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(LTCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
+CCDEPMODE = @CCDEPMODE@
 
-libmisc.a: $(libmisc_a_OBJECTS) $(libmisc_a_DEPENDENCIES)
-       -rm -f libmisc.a
-       $(AR) cru libmisc.a $(libmisc_a_OBJECTS) $(libmisc_a_LIBADD)
-       $(RANLIB) libmisc.a
 .y.c:
-       $(YACC) $(AM_YFLAGS) $(YFLAGS) $< && mv y.tab.c $*.c
+       $(YACCCOMPILE) $< && mv y.tab.c $@
        if test -f y.tab.h; then \
-       if cmp -s y.tab.h $*.h; then rm -f y.tab.h; else mv y.tab.h $*.h; fi; \
-       else :; fi
-getdate.h: getdate.c
-
+         if cmp -s y.tab.h $*.h; then \
+           rm -f y.tab.h; \
+         else \
+           mv y.tab.h $*.h; \
+         fi; \
+       fi
+uninstall-info-am:
 
 tags: TAGS
 
-ID: $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(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; }'`; \
-       here=`pwd` && cd $(srcdir) \
-         && mkid -f$$here/ID $$unique $(LISP)
+       mkid -fID $$unique $(LISP)
 
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP)
+TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
        tags=; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+       list='$(SOURCES) $(HEADERS) $(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 "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-         || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
+         || etags $(ETAGS_ARGS) $$tags  $$unique $(LISP)
 
-clean-tags:
+GTAGS:
+       here=`CDPATH=: && cd $(top_builddir) && pwd` \
+         && cd $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) $$here
 
 distclean-tags:
-       -rm -f TAGS ID
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
 
-maintainer-clean-tags:
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
-
-subdir = libmisc
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
+all-am: Makefile $(LTLIBRARIES)
 
-install-data-am:
-install-data: install-data-am
+installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(libdir)
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am:
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile $(LIBRARIES) $(HEADERS)
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-       -test -z "getdatehgetdatec" || rm -f getdateh getdatec
-mostlyclean-am:  mostlyclean-noinstLIBRARIES mostlyclean-compile \
-               mostlyclean-libtool mostlyclean-tags \
-               mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
+       mostlyclean-am
 
-clean-am:  clean-noinstLIBRARIES clean-compile clean-libtool clean-tags \
-               clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-compile distclean-depend \
+       distclean-generic distclean-libtool distclean-tags
 
-distclean-am:  distclean-noinstLIBRARIES distclean-compile \
-               distclean-libtool distclean-tags distclean-generic \
-               clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-noinstLIBRARIES \
-               maintainer-clean-compile maintainer-clean-libtool \
-               maintainer-clean-tags maintainer-clean-generic \
-               distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am: install-libLTLIBRARIES
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: mostlyclean-noinstLIBRARIES distclean-noinstLIBRARIES \
-clean-noinstLIBRARIES maintainer-clean-noinstLIBRARIES \
-mostlyclean-compile distclean-compile clean-compile \
-maintainer-clean-compile mostlyclean-libtool distclean-libtool \
-clean-libtool maintainer-clean-libtool tags mostlyclean-tags \
-distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
-dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
-install-exec install-data-am install-data install-am install \
-uninstall-am uninstall all-redirect all-am all installdirs \
-mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
 
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+       mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES
+
+.PHONY: GTAGS all all-am check check-am clean clean-generic \
+       clean-libLTLIBRARIES clean-libtool distclean distclean-compile \
+       distclean-depend distclean-generic distclean-libtool \
+       distclean-tags distdir dvi dvi-am info info-am install \
+       install-am install-data install-data-am install-exec \
+       install-exec-am install-info install-info-am \
+       install-libLTLIBRARIES install-man install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-compile \
+       mostlyclean-generic mostlyclean-libtool tags uninstall \
+       uninstall-am uninstall-info-am uninstall-libLTLIBRARIES
 
 # 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.
index 589d295f89cb79c0aa19ec2aa77732356eceac5f..3a57d5c6fb03bd1fcd7bbc6cdfcb68972c3edc35 100644 (file)
@@ -10,7 +10,7 @@
 #include <errno.h>
 
 #include "rcsid.h"
-RCSID("$Id: addgrps.c,v 1.4 1998/12/28 20:34:41 marekm Exp $")
+RCSID("$Id: addgrps.c,v 1.5 2001/09/01 04:19:15 kloczek Exp $")
 
 #define SEP ",:"
 
@@ -67,7 +67,7 @@ add_groups(const char *list)
                if (i < ngroups)
                        continue;
 
-               if (ngroups >= NGROUPS_MAX) {
+               if (ngroups >= sysconf(_SC_NGROUPS_MAX)) {
                        fprintf(stderr, _("Warning: too many groups\n"));
                        break;
                }
index f52b5a4a4cfef4e068b4dbda007f46d03d92f711..055981385a1debfe44b2199ba459c49672146520 100644 (file)
 #include <config.h>
 
 #include "rcsid.h"
-RCSID("$Id: chowntty.c,v 1.7 1998/12/28 20:34:43 marekm Exp $")
+RCSID("$Id: chowntty.c,v 1.9 2001/06/23 11:09:02 marekm Exp $")
 
 #include <sys/types.h>
 #include <sys/stat.h>
 
 #include <stdio.h>
+#include <errno.h>
 #include <grp.h>
 
 #include "prototypes.h"
@@ -107,12 +108,16 @@ chown_tty(const char *tty, const struct passwd *info)
        
        if (chown(tty, info->pw_uid, gid) ||
                        chmod(tty, getdef_num("TTYPERM", 0600))) {
+               int err = errno;
+
                snprintf(buf, sizeof buf, _("Unable to change tty %s"), tty);
+               perror(buf);
                SYSLOG((LOG_WARN, "unable to change tty `%s' for user `%s'\n",
                        tty, info->pw_name));
                closelog();
-               perror (buf);
-               exit(1);
+
+               if (!(err == EROFS && info->pw_uid == 0))
+                       exit(1);
        }
 
 #ifdef __linux__
index 0f7fed2d544ce743c1d0610ed46cdf25b068a5f7..abbb9a03e66c76392eaefc73849b2a7a8ac66c9c 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID("$Id: copydir.c,v 1.7 2000/08/26 18:27:17 marekm Exp $")
+RCSID("$Id: copydir.c,v 1.8 2001/06/28 18:27:29 marekm Exp $")
 
 
 #include <sys/stat.h>
@@ -293,7 +293,7 @@ copy_tree(const char *src_root, const char *dst_root, uid_t uid, gid_t gid)
                        err++;
                        break;
                }
-               if ((ofd = open (dst_name, O_WRONLY|O_CREAT, 0)) < 0 ||
+               if ((ofd = open (dst_name, O_WRONLY|O_CREAT|O_TRUNC, 0)) < 0 ||
                        chown (dst_name, uid == (uid_t) -1 ? sb.st_uid:uid,
                                        gid == (gid_t) -1 ? sb.st_gid:gid) ||
                                chmod (dst_name, sb.st_mode & 07777)) {
index b3e7ac75c6df8b05cd07d3cf74611e14f911c5cd..68297aa401cab434a828fbca80b587638c813327 100644 (file)
@@ -3,7 +3,7 @@
 #ifdef USE_PAM
 
 #include "rcsid.h"
-RCSID("$Id: pam_pass.c,v 1.6 1999/06/07 16:40:44 marekm Exp $")
+RCSID("$Id: pam_pass.c,v 1.7 2001/06/28 20:47:06 kloczek Exp $")
 
 /*
  * Change the user's password using PAM.  Requires libpam and libpam_misc
@@ -46,7 +46,7 @@ do_pam_passwd(const char *user, int silent, int change_expired)
 
        ret = pam_chauthtok(pamh, flags);
        if (ret != PAM_SUCCESS) {
-               fprintf(stderr, _("passwd: %s\n"), PAM_STRERROR(pamh, ret));
+               fprintf(stderr, _("passwd: %s\n"), pam_strerror(pamh, ret));
                pam_end(pamh, ret);
                exit(10);  /* XXX */
        }
index 3de68692ea4f92784f99d11faf1d82fc60b1db72..cc7d51fd381f4611b4993fbbef7b9a2539471a53 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID("$Id: sulog.c,v 1.5 2000/08/26 18:27:17 marekm Exp $")
+RCSID("$Id: sulog.c,v 1.6 2001/08/23 23:17:37 kloczek Exp $")
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -65,7 +65,7 @@ sulog(const char *tty, int success, const char *oldname, const char *name)
        time(&now);
        tm = localtime(&now);
 
-       fprintf(fp, "SU %.02d/%.02d %.02d:%.02d %c %.6s %s-%s\n",
+       fprintf(fp, "SU %.02d/%.02d %.02d:%.02d %c %s %s-%s\n",
                tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min,
                success ? '+':'-', tty, oldname, name);
 
diff --git a/ltconfig b/ltconfig
deleted file mode 100755 (executable)
index c14d83c..0000000
--- a/ltconfig
+++ /dev/null
@@ -1,3114 +0,0 @@
-#! /bin/sh
-
-# ltconfig - Create a system-specific libtool.
-# Copyright (C) 1996-1999 Free Software Foundation, Inc.
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-#
-# 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
-# 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.
-#
-# 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.
-
-# A lot of this script is taken from autoconf-2.10.
-
-# Check that we are running under the correct shell.
-SHELL=${CONFIG_SHELL-/bin/sh}
-echo=echo
-if test "X$1" = X--no-reexec; then
-  # Discard the --no-reexec flag, and continue.
-  shift
-elif test "X$1" = X--fallback-echo; then
-  # Avoid inline document here, it may be left over
-  :
-elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
-  # Yippee, $echo works!
-  :
-else
-  # Restart under the correct shell.
-  exec "$SHELL" "$0" --no-reexec ${1+"$@"}
-fi
-
-if test "X$1" = X--fallback-echo; then
-  # used as fallback echo
-  shift
-  cat <<EOF
-$*
-EOF
-  exit 0
-fi
-
-# Find the correct PATH separator.  Usually this is `:', but
-# DJGPP uses `;' like DOS.
-if test "X${PATH_SEPARATOR+set}" != Xset; then
-  UNAME=${UNAME-`uname 2>/dev/null`}
-  case X$UNAME in
-    *-DOS) PATH_SEPARATOR=';' ;;
-    *)     PATH_SEPARATOR=':' ;;
-  esac
-fi
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-
-if test "X${echo_test_string+set}" != Xset; then
-  # find a string as large as possible, as long as the shell can cope with it
-  for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
-    # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
-    if (echo_test_string="`eval $cmd`") 2>/dev/null &&
-       echo_test_string="`eval $cmd`" &&
-       (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then
-      break
-    fi
-  done
-fi
-
-if test "X`($echo '\t') 2>/dev/null`" != 'X\t' ||
-   test "X`($echo "$echo_test_string") 2>/dev/null`" != X"$echo_test_string"; then
-  # The Solaris, AIX, and Digital Unix default echo programs unquote
-  # backslashes.  This makes it impossible to quote backslashes using
-  #   echo "$something" | sed 's/\\/\\\\/g'
-  #
-  # So, first we look for a working echo in the user's PATH.
-
-  IFS="${IFS=  }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
-  for dir in $PATH /usr/ucb; do
-    if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
-       test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
-       test "X`($dir/echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
-      echo="$dir/echo"
-      break
-    fi
-  done
-  IFS="$save_ifs"
-
-  if test "X$echo" = Xecho; then
-    # We didn't find a better echo, so look for alternatives.
-    if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
-       test "X`(print -r "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
-      # This shell has a builtin print -r that does the trick.
-      echo='print -r'
-    elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
-        test "X$CONFIG_SHELL" != X/bin/ksh; then
-      # If we have ksh, try running ltconfig again with it.
-      ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}"
-      export ORIGINAL_CONFIG_SHELL
-      CONFIG_SHELL=/bin/ksh
-      export CONFIG_SHELL
-      exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
-    else
-      # Try using printf.
-      echo='printf "%s\n"'
-      if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
-        test "X`($echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
-       # Cool, printf works
-       :
-      elif test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
-          test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
-       CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL"
-       export CONFIG_SHELL
-       SHELL="$CONFIG_SHELL"
-       export SHELL
-       echo="$CONFIG_SHELL $0 --fallback-echo"
-      elif test "X`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
-          test "X`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
-       echo="$CONFIG_SHELL $0 --fallback-echo"
-      else
-       # maybe with a smaller string...
-       prev=:
-
-       for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
-         if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then
-           break
-         fi
-         prev="$cmd"
-       done
-
-       if test "$prev" != 'sed 50q "$0"'; then
-         echo_test_string=`eval $prev`
-         export echo_test_string
-         exec "${ORIGINAL_CONFIG_SHELL}" "$0" ${1+"$@"}
-       else
-         # Oops.  We lost completely, so just stick with echo.
-         echo=echo
-       fi
-      fi
-    fi
-  fi
-fi
-
-# Sed substitution that helps us do robust quoting.  It backslashifies
-# metacharacters that are still active within double-quoted strings.
-Xsed='sed -e s/^X//'
-sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
-
-# Same as above, but do not quote variable references.
-double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
-
-# Sed substitution to delay expansion of an escaped shell variable in a
-# double_quote_subst'ed string.
-delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
-
-# The name of this program.
-progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
-
-# Constants:
-PROGRAM=ltconfig
-PACKAGE=libtool
-VERSION=1.3.5
-TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)"
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-rm="rm -f"
-
-help="Try \`$progname --help' for more information."
-
-# Global variables:
-default_ofile=libtool
-can_build_shared=yes
-enable_shared=yes
-# All known linkers require a `.a' archive for static linking (except M$VC,
-# which needs '.lib').
-enable_static=yes
-enable_fast_install=yes
-enable_dlopen=unknown
-enable_win32_dll=no
-ltmain=
-silent=
-srcdir=
-ac_config_guess=
-ac_config_sub=
-host=
-nonopt=
-ofile="$default_ofile"
-verify_host=yes
-with_gcc=no
-with_gnu_ld=no
-need_locks=yes
-ac_ext=c
-objext=o
-libext=a
-exeext=
-cache_file=
-
-old_AR="$AR"
-old_CC="$CC"
-old_CFLAGS="$CFLAGS"
-old_CPPFLAGS="$CPPFLAGS"
-old_LDFLAGS="$LDFLAGS"
-old_LD="$LD"
-old_LN_S="$LN_S"
-old_LIBS="$LIBS"
-old_NM="$NM"
-old_RANLIB="$RANLIB"
-old_DLLTOOL="$DLLTOOL"
-old_OBJDUMP="$OBJDUMP"
-old_AS="$AS"
-
-# Parse the command line options.
-args=
-prev=
-for option
-do
-  case "$option" in
-  -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-  *) optarg= ;;
-  esac
-
-  # If the previous option needs an argument, assign it.
-  if test -n "$prev"; then
-    eval "$prev=\$option"
-    prev=
-    continue
-  fi
-
-  case "$option" in
-  --help) cat <<EOM
-Usage: $progname [OPTION]... [HOST [LTMAIN]]
-
-Generate a system-specific libtool script.
-
-    --debug                enable verbose shell tracing
-    --disable-shared       do not build shared libraries
-    --disable-static       do not build static libraries
-    --disable-fast-install do not optimize for fast installation
-    --enable-dlopen        enable dlopen support
-    --enable-win32-dll     enable building dlls on win32 hosts
-    --help                 display this help and exit
-    --no-verify            do not verify that HOST is a valid host type
--o, --output=FILE          specify the output file [default=$default_ofile]
-    --quiet                same as \`--silent'
-    --silent               do not print informational messages
-    --srcdir=DIR           find \`config.guess' in DIR
-    --version              output version information and exit
-    --with-gcc             assume that the GNU C compiler will be used
-    --with-gnu-ld          assume that the C compiler uses the GNU linker
-    --disable-lock         disable file locking
-    --cache-file=FILE      configure cache file
-
-LTMAIN is the \`ltmain.sh' shell script fragment or \`ltmain.c' program
-that provides basic libtool functionality.
-
-HOST is the canonical host system name [default=guessed].
-EOM
-  exit 0
-  ;;
-
-  --debug)
-    echo "$progname: enabling shell trace mode"
-    set -x
-    ;;
-
-  --disable-shared) enable_shared=no ;;
-
-  --disable-static) enable_static=no ;;
-
-  --disable-fast-install) enable_fast_install=no ;;
-
-  --enable-dlopen) enable_dlopen=yes ;;
-
-  --enable-win32-dll) enable_win32_dll=yes ;;
-
-  --quiet | --silent) silent=yes ;;
-
-  --srcdir) prev=srcdir ;;
-  --srcdir=*) srcdir="$optarg" ;;
-
-  --no-verify) verify_host=no ;;
-
-  --output | -o) prev=ofile ;;
-  --output=*) ofile="$optarg" ;;
-
-  --version) echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"; exit 0 ;;
-
-  --with-gcc) with_gcc=yes ;;
-  --with-gnu-ld) with_gnu_ld=yes ;;
-
-  --disable-lock) need_locks=no ;;
-
-  --cache-file=*) cache_file="$optarg" ;;
-
-  -*)
-    echo "$progname: unrecognized option \`$option'" 1>&2
-    echo "$help" 1>&2
-    exit 1
-    ;;
-
-  *)
-    if test -z "$ltmain"; then
-      ltmain="$option"
-    elif test -z "$host"; then
-# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1
-#      if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then
-#        echo "$progname: warning \`$option' is not a valid host type" 1>&2
-#      fi
-      host="$option"
-    else
-      echo "$progname: too many arguments" 1>&2
-      echo "$help" 1>&2
-      exit 1
-    fi ;;
-  esac
-done
-
-if test -z "$ltmain"; then
-  echo "$progname: you must specify a LTMAIN file" 1>&2
-  echo "$help" 1>&2
-  exit 1
-fi
-
-if test ! -f "$ltmain"; then
-  echo "$progname: \`$ltmain' does not exist" 1>&2
-  echo "$help" 1>&2
-  exit 1
-fi
-
-# Quote any args containing shell metacharacters.
-ltconfig_args=
-for arg
-do
-  case "$arg" in
-  *" "*|*"     "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
-  ltconfig_args="$ltconfig_args '$arg'" ;;
-  *) ltconfig_args="$ltconfig_args $arg" ;;
-  esac
-done
-
-# A relevant subset of AC_INIT.
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 5 compiler messages saved in config.log
-# 6 checking for... messages and results
-if test "$silent" = yes; then
-  exec 6>/dev/null
-else
-  exec 6>&1
-fi
-exec 5>>./config.log
-
-# NLS nuisances.
-# Only set LANG and LC_ALL to C if already set.
-# These must not be set unconditionally because not all systems understand
-# e.g. LANG=C (notably SCO).
-if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi
-if test "X${LANG+set}"   = Xset; then LANG=C;   export LANG;   fi
-
-if test -n "$cache_file" && test -r "$cache_file"; then
-  echo "loading cache $cache_file within ltconfig"
-  . $cache_file
-fi
-
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
-  # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
-  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
-    ac_n= ac_c='
-' ac_t='       '
-  else
-    ac_n=-n ac_c= ac_t=
-  fi
-else
-  ac_n= ac_c='\c' ac_t=
-fi
-
-if test -z "$srcdir"; then
-  # Assume the source directory is the same one as the path to LTMAIN.
-  srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'`
-  test "$srcdir" = "$ltmain" && srcdir=.
-fi
-
-trap "$rm conftest*; exit 1" 1 2 15
-if test "$verify_host" = yes; then
-  # Check for config.guess and config.sub.
-  ac_aux_dir=
-  for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
-    if test -f $ac_dir/config.guess; then
-      ac_aux_dir=$ac_dir
-      break
-    fi
-  done
-  if test -z "$ac_aux_dir"; then
-    echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2
-    echo "$help" 1>&2
-    exit 1
-  fi
-  ac_config_guess=$ac_aux_dir/config.guess
-  ac_config_sub=$ac_aux_dir/config.sub
-
-  # Make sure we can run config.sub.
-  if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then :
-  else
-    echo "$progname: cannot run $ac_config_sub" 1>&2
-    echo "$help" 1>&2
-    exit 1
-  fi
-
-  echo $ac_n "checking host system type""... $ac_c" 1>&6
-
-  host_alias=$host
-  case "$host_alias" in
-  "")
-    if host_alias=`$SHELL $ac_config_guess`; then :
-    else
-      echo "$progname: cannot guess host type; you must specify one" 1>&2
-      echo "$help" 1>&2
-      exit 1
-    fi ;;
-  esac
-  host=`$SHELL $ac_config_sub $host_alias`
-  echo "$ac_t$host" 1>&6
-
-  # Make sure the host verified.
-  test -z "$host" && exit 1
-
-elif test -z "$host"; then
-  echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2
-  echo "$help" 1>&2
-  exit 1
-else
-  host_alias=$host
-fi
-
-# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
-case "$host_os" in
-linux-gnu*) ;;
-linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
-esac
-
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-
-case "$host_os" in
-aix3*)
-  # AIX sometimes has problems with the GCC collect2 program.  For some
-  # reason, if we set the COLLECT_NAMES environment variable, the problems
-  # vanish in a puff of smoke.
-  if test "X${COLLECT_NAMES+set}" != Xset; then
-    COLLECT_NAMES=
-    export COLLECT_NAMES
-  fi
-  ;;
-esac
-
-# Determine commands to create old-style static archives.
-old_archive_cmds='$AR cru $oldlib$oldobjs'
-old_postinstall_cmds='chmod 644 $oldlib'
-old_postuninstall_cmds=
-
-# Set a sane default for `AR'.
-test -z "$AR" && AR=ar
-
-# Set a sane default for `OBJDUMP'.
-test -z "$OBJDUMP" && OBJDUMP=objdump
-
-# If RANLIB is not set, then run the test.
-if test "${RANLIB+set}" != "set"; then
-  result=no
-
-  echo $ac_n "checking for ranlib... $ac_c" 1>&6
-  IFS="${IFS=  }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
-  for dir in $PATH; do
-    test -z "$dir" && dir=.
-    if test -f $dir/ranlib || test -f $dir/ranlib$ac_exeext; then
-      RANLIB="ranlib"
-      result="ranlib"
-      break
-    fi
-  done
-  IFS="$save_ifs"
-
-  echo "$ac_t$result" 1>&6
-fi
-
-if test -n "$RANLIB"; then
-  old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
-  old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
-fi
-
-# Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin.
-test -z "$DLLTOOL" && DLLTOOL=dlltool
-test -z "$OBJDUMP" && OBJDUMP=objdump
-test -z "$AS" && AS=as
-
-# Check to see if we are using GCC.
-if test "$with_gcc" != yes || test -z "$CC"; then
-  # If CC is not set, then try to find GCC or a usable CC.
-  if test -z "$CC"; then
-    echo $ac_n "checking for gcc... $ac_c" 1>&6
-    IFS="${IFS=        }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
-    for dir in $PATH; do
-      test -z "$dir" && dir=.
-      if test -f $dir/gcc || test -f $dir/gcc$ac_exeext; then
-       CC="gcc"
-       break
-      fi
-    done
-    IFS="$save_ifs"
-
-    if test -n "$CC"; then
-      echo "$ac_t$CC" 1>&6
-    else
-      echo "$ac_t"no 1>&6
-    fi
-  fi
-
-  # Not "gcc", so try "cc", rejecting "/usr/ucb/cc".
-  if test -z "$CC"; then
-    echo $ac_n "checking for cc... $ac_c" 1>&6
-    IFS="${IFS=        }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
-    cc_rejected=no
-    for dir in $PATH; do
-      test -z "$dir" && dir=.
-      if test -f $dir/cc || test -f $dir/cc$ac_exeext; then
-       if test "$dir/cc" = "/usr/ucb/cc"; then
-         cc_rejected=yes
-         continue
-       fi
-       CC="cc"
-       break
-      fi
-    done
-    IFS="$save_ifs"
-    if test $cc_rejected = yes; then
-      # We found a bogon in the path, so make sure we never use it.
-      set dummy $CC
-      shift
-      if test $# -gt 0; then
-       # We chose a different compiler from the bogus one.
-       # However, it has the same name, so the bogon will be chosen
-       # first if we set CC to just the name; use the full file name.
-       shift
-       set dummy "$dir/cc" "$@"
-       shift
-       CC="$@"
-      fi
-    fi
-
-    if test -n "$CC"; then
-      echo "$ac_t$CC" 1>&6
-    else
-      echo "$ac_t"no 1>&6
-    fi
-
-    if test -z "$CC"; then
-      echo "$progname: error: no acceptable cc found in \$PATH" 1>&2
-      exit 1
-    fi
-  fi
-
-  # Now see if the compiler is really GCC.
-  with_gcc=no
-  echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
-  echo "$progname:581: checking whether we are using GNU C" >&5
-
-  $rm conftest.c
-  cat > conftest.c <<EOF
-#ifdef __GNUC__
-  yes;
-#endif
-EOF
-  if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:589: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-    with_gcc=yes
-  fi
-  $rm conftest.c
-  echo "$ac_t$with_gcc" 1>&6
-fi
-
-# Allow CC to be a program name with arguments.
-set dummy $CC
-compiler="$2"
-
-echo $ac_n "checking for object suffix... $ac_c" 1>&6
-$rm conftest*
-echo 'int i = 1;' > conftest.c
-echo "$progname:603: checking for object suffix" >& 5
-if { (eval echo $progname:604: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then
-  # Append any warnings to the config.log.
-  cat conftest.err 1>&5
-
-  for ac_file in conftest.*; do
-    case $ac_file in
-    *.c) ;;
-    *) objext=`echo $ac_file | sed -e s/conftest.//` ;;
-    esac
-  done
-else
-  cat conftest.err 1>&5
-  echo "$progname: failed program was:" >&5
-  cat conftest.c >&5
-fi
-$rm conftest*
-echo "$ac_t$objext" 1>&6
-
-echo $ac_n "checking for executable suffix... $ac_c" 1>&6
-if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_cv_exeext="no"
-  $rm conftest*
-  echo 'main () { return 0; }' > conftest.c
-  echo "$progname:629: checking for executable suffix" >& 5
-  if { (eval echo $progname:630: \"$ac_link\") 1>&5; (eval $ac_link) 2>conftest.err; }; then
-    # Append any warnings to the config.log.
-    cat conftest.err 1>&5
-
-    for ac_file in conftest.*; do
-      case $ac_file in
-      *.c | *.err | *.$objext ) ;;
-      *) ac_cv_exeext=.`echo $ac_file | sed -e s/conftest.//` ;;
-      esac
-    done
-  else
-    cat conftest.err 1>&5
-    echo "$progname: failed program was:" >&5
-    cat conftest.c >&5
-  fi
-  $rm conftest*
-fi
-if test "X$ac_cv_exeext" = Xno; then
-  exeext=""
-else
-  exeext="$ac_cv_exeext"
-fi
-echo "$ac_t$ac_cv_exeext" 1>&6
-
-echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6
-pic_flag=
-special_shlib_compile_flags=
-wl=
-link_static_flag=
-no_builtin_flag=
-
-if test "$with_gcc" = yes; then
-  wl='-Wl,'
-  link_static_flag='-static'
-
-  case "$host_os" in
-  beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
-    # PIC is the default for these OSes.
-    ;;
-  aix*)
-    # Below there is a dirty hack to force normal static linking with -ldl
-    # The problem is because libdl dynamically linked with both libc and
-    # libC (AIX C++ library), which obviously doesn't included in libraries
-    # list by gcc. This cause undefined symbols with -static flags.
-    # This hack allows C programs to be linked with "-static -ldl", but
-    # we not sure about C++ programs.
-    link_static_flag="$link_static_flag ${wl}-lC"
-    ;;
-  cygwin* | mingw* | os2*)
-    # We can build DLLs from non-PIC.
-    ;;
-  amigaos*)
-    # FIXME: we need at least 68020 code to build shared libraries, but
-    # adding the `-m68020' flag to GCC prevents building anything better,
-    # like `-m68040'.
-    pic_flag='-m68020 -resident32 -malways-restore-a4'
-    ;;
-  sysv4*MP*)
-    if test -d /usr/nec; then
-       pic_flag=-Kconform_pic
-    fi
-    ;;
-  *)
-    pic_flag='-fPIC'
-    ;;
-  esac
-else
-  # PORTME Check for PIC flags for the system compiler.
-  case "$host_os" in
-  aix3* | aix4*)
-    # All AIX code is PIC.
-    link_static_flag='-bnso -bI:/lib/syscalls.exp'
-    ;;
-
-  hpux9* | hpux10* | hpux11*)
-    # Is there a better link_static_flag that works with the bundled CC?
-    wl='-Wl,'
-    link_static_flag="${wl}-a ${wl}archive"
-    pic_flag='+Z'
-    ;;
-
-  irix5* | irix6*)
-    wl='-Wl,'
-    link_static_flag='-non_shared'
-    # PIC (with -KPIC) is the default.
-    ;;
-
-  cygwin* | mingw* | os2*)
-    # We can build DLLs from non-PIC.
-    ;;
-
-  osf3* | osf4* | osf5*)
-    # All OSF/1 code is PIC.
-    wl='-Wl,'
-    link_static_flag='-non_shared'
-    ;;
-
-  sco3.2v5*)
-    pic_flag='-Kpic'
-    link_static_flag='-dn'
-    special_shlib_compile_flags='-belf'
-    ;;
-
-  solaris*)
-    pic_flag='-KPIC'
-    link_static_flag='-Bstatic'
-    wl='-Wl,'
-    ;;
-
-  sunos4*)
-    pic_flag='-PIC'
-    link_static_flag='-Bstatic'
-    wl='-Qoption ld '
-    ;;
-
-  sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-    pic_flag='-KPIC'
-    link_static_flag='-Bstatic'
-    wl='-Wl,'
-    ;;
-
-  uts4*)
-    pic_flag='-pic'
-    link_static_flag='-Bstatic'
-    ;;
-  sysv4*MP*)
-    if test -d /usr/nec ;then
-      pic_flag='-Kconform_pic'
-      link_static_flag='-Bstatic'
-    fi
-    ;;
-  *)
-    can_build_shared=no
-    ;;
-  esac
-fi
-
-if test -n "$pic_flag"; then
-  echo "$ac_t$pic_flag" 1>&6
-
-  # Check to make sure the pic_flag actually works.
-  echo $ac_n "checking if $compiler PIC flag $pic_flag works... $ac_c" 1>&6
-  $rm conftest*
-  echo "int some_variable = 0;" > conftest.c
-  save_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS $pic_flag -DPIC"
-  echo "$progname:776: checking if $compiler PIC flag $pic_flag works" >&5
-  if { (eval echo $progname:777: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then
-    # Append any warnings to the config.log.
-    cat conftest.err 1>&5
-    
-    case "$host_os" in
-    hpux9* | hpux10* | hpux11*)
-      # On HP-UX, both CC and GCC only warn that PIC is supported... then they
-      # create non-PIC objects.  So, if there were any warnings, we assume that
-      # PIC is not supported.
-      if test -s conftest.err; then
-       echo "$ac_t"no 1>&6
-       can_build_shared=no
-       pic_flag=
-      else
-       echo "$ac_t"yes 1>&6
-       pic_flag=" $pic_flag"
-      fi
-      ;;
-    *)
-      echo "$ac_t"yes 1>&6
-      pic_flag=" $pic_flag"
-      ;;
-    esac
-  else
-    # Append any errors to the config.log.
-    cat conftest.err 1>&5
-    can_build_shared=no
-    pic_flag=
-    echo "$ac_t"no 1>&6
-  fi
-  CFLAGS="$save_CFLAGS"
-  $rm conftest*
-else
-  echo "$ac_t"none 1>&6
-fi
-
-# Check to see if options -o and -c are simultaneously supported by compiler
-echo $ac_n "checking if $compiler supports -c -o file.o... $ac_c" 1>&6
-$rm -r conftest 2>/dev/null
-mkdir conftest
-cd conftest
-$rm conftest*
-echo "int some_variable = 0;" > conftest.c
-mkdir out
-# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
-# that will create temporary files in the current directory regardless of
-# the output directory.  Thus, making CWD read-only will cause this test
-# to fail, enabling locking or at least warning the user not to do parallel
-# builds.
-chmod -w .
-save_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS -o out/conftest2.o"
-echo "$progname:829: checking if $compiler supports -c -o file.o" >&5
-if { (eval echo $progname:830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then
-
-  # The compiler can only warn and ignore the option if not recognized
-  # So say no if there are warnings
-    if test -s out/conftest.err; then
-      echo "$ac_t"no 1>&6
-      compiler_c_o=no
-    else
-      echo "$ac_t"yes 1>&6
-      compiler_c_o=yes
-    fi
-else
-  # Append any errors to the config.log.
-  cat out/conftest.err 1>&5
-  compiler_c_o=no
-  echo "$ac_t"no 1>&6
-fi
-CFLAGS="$save_CFLAGS"
-chmod u+w .
-$rm conftest* out/*
-rmdir out
-cd ..
-rmdir conftest
-$rm -r conftest 2>/dev/null
-
-if test x"$compiler_c_o" = x"yes"; then
-  # Check to see if we can write to a .lo
-  echo $ac_n "checking if $compiler supports -c -o file.lo... $ac_c" 1>&6
-  $rm conftest*
-  echo "int some_variable = 0;" > conftest.c
-  save_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -c -o conftest.lo"
-  echo "$progname:862: checking if $compiler supports -c -o file.lo" >&5
-if { (eval echo $progname:863: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then
-
-    # The compiler can only warn and ignore the option if not recognized
-    # So say no if there are warnings
-      if test -s conftest.err; then
-       echo "$ac_t"no 1>&6
-       compiler_o_lo=no
-      else
-       echo "$ac_t"yes 1>&6
-       compiler_o_lo=yes
-      fi
-  else
-    # Append any errors to the config.log.
-    cat conftest.err 1>&5
-    compiler_o_lo=no
-    echo "$ac_t"no 1>&6
-  fi
-  CFLAGS="$save_CFLAGS"
-  $rm conftest*
-else
-  compiler_o_lo=no
-fi
-
-# Check to see if we can do hard links to lock some files if needed
-hard_links="nottested"
-if test "$compiler_c_o" = no && test "$need_locks" != no; then
-  # do not overwrite the value of need_locks provided by the user
-  echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6
-  hard_links=yes
-  $rm conftest*
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  touch conftest.a
-  ln conftest.a conftest.b 2>&5 || hard_links=no
-  ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  echo "$ac_t$hard_links" 1>&6
-  $rm conftest*
-  if test "$hard_links" = no; then
-    echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2
-    need_locks=warn
-  fi
-else
-  need_locks=no
-fi
-
-if test "$with_gcc" = yes; then
-  # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
-  echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6
-  $rm conftest*
-  echo "int some_variable = 0;" > conftest.c
-  save_CFLAGS="$CFLAGS"
-  CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c"
-  echo "$progname:914: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-  if { (eval echo $progname:915: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
-
-    # The compiler can only warn and ignore the option if not recognized
-    # So say no if there are warnings
-      if test -s conftest.err; then
-       echo "$ac_t"no 1>&6
-       compiler_rtti_exceptions=no
-      else
-       echo "$ac_t"yes 1>&6
-       compiler_rtti_exceptions=yes
-      fi
-  else
-    # Append any errors to the config.log.
-    cat conftest.err 1>&5
-    compiler_rtti_exceptions=no
-    echo "$ac_t"no 1>&6
-  fi
-  CFLAGS="$save_CFLAGS"
-  $rm conftest*
-
-  if test "$compiler_rtti_exceptions" = "yes"; then
-    no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
-  else
-    no_builtin_flag=' -fno-builtin'
-  fi
-  
-fi
-
-# Check for any special shared library compilation flags.
-if test -n "$special_shlib_compile_flags"; then
-  echo "$progname: warning: \`$CC' requires \`$special_shlib_compile_flags' to build shared libraries" 1>&2
-  if echo "$old_CC $old_CFLAGS " | egrep -e "[         ]$special_shlib_compile_flags[  ]" >/dev/null; then :
-  else
-    echo "$progname: add \`$special_shlib_compile_flags' to the CC or CFLAGS env variable and reconfigure" 1>&2
-    can_build_shared=no
-  fi
-fi
-
-echo $ac_n "checking if $compiler static flag $link_static_flag works... $ac_c" 1>&6
-$rm conftest*
-echo 'main(){return(0);}' > conftest.c
-save_LDFLAGS="$LDFLAGS"
-LDFLAGS="$LDFLAGS $link_static_flag"
-echo "$progname:958: checking if $compiler static flag $link_static_flag works" >&5
-if { (eval echo $progname:959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
-  echo "$ac_t$link_static_flag" 1>&6
-else
-  echo "$ac_t"none 1>&6
-  link_static_flag=
-fi
-LDFLAGS="$save_LDFLAGS"
-$rm conftest*
-
-if test -z "$LN_S"; then
-  # Check to see if we can use ln -s, or we need hard links.
-  echo $ac_n "checking whether ln -s works... $ac_c" 1>&6
-  $rm conftest.dat
-  if ln -s X conftest.dat 2>/dev/null; then
-    $rm conftest.dat
-    LN_S="ln -s"
-  else
-    LN_S=ln
-  fi
-  if test "$LN_S" = "ln -s"; then
-    echo "$ac_t"yes 1>&6
-  else
-    echo "$ac_t"no 1>&6
-  fi
-fi
-
-# Make sure LD is an absolute path.
-if test -z "$LD"; then
-  ac_prog=ld
-  if test "$with_gcc" = yes; then
-    # Check if gcc -print-prog-name=ld gives a path.
-    echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
-    echo "$progname:991: checking for ld used by GCC" >&5
-    ac_prog=`($CC -print-prog-name=ld) 2>&5`
-    case "$ac_prog" in
-    # Accept absolute paths.
-    [\\/]* | [A-Za-z]:[\\/]*)
-      re_direlt='/[^/][^/]*/\.\./'
-      # Canonicalize the path of ld
-      ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
-      while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
-       ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
-      done
-      test -z "$LD" && LD="$ac_prog"
-      ;;
-    "")
-      # If it fails, then pretend we are not using GCC.
-      ac_prog=ld
-      ;;
-    *)
-      # If it is relative, then search for the first ld in PATH.
-      with_gnu_ld=unknown
-      ;;
-    esac
-  elif test "$with_gnu_ld" = yes; then
-    echo $ac_n "checking for GNU ld... $ac_c" 1>&6
-    echo "$progname:1015: checking for GNU ld" >&5
-  else
-    echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-    echo "$progname:1018: checking for non-GNU ld" >&5
-  fi
-
-  if test -z "$LD"; then
-    IFS="${IFS=        }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
-    for ac_dir in $PATH; do
-      test -z "$ac_dir" && ac_dir=.
-      if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
-       LD="$ac_dir/$ac_prog"
-       # Check to see if the program is GNU ld.  I'd rather use --version,
-       # but apparently some GNU ld's only accept -v.
-       # Break only if it was the GNU/non-GNU ld that we prefer.
-       if "$LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
-         test "$with_gnu_ld" != no && break
-       else
-         test "$with_gnu_ld" != yes && break
-       fi
-      fi
-    done
-    IFS="$ac_save_ifs"
-  fi
-
-  if test -n "$LD"; then
-    echo "$ac_t$LD" 1>&6
-  else
-    echo "$ac_t"no 1>&6
-  fi
-
-  if test -z "$LD"; then
-    echo "$progname: error: no acceptable ld found in \$PATH" 1>&2
-    exit 1
-  fi
-fi
-
-# Check to see if it really is or is not GNU ld.
-echo $ac_n "checking if the linker ($LD) is GNU ld... $ac_c" 1>&6
-# I'd rather use --version here, but apparently some GNU ld's only accept -v.
-if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
-  with_gnu_ld=yes
-else
-  with_gnu_ld=no
-fi
-echo "$ac_t$with_gnu_ld" 1>&6
-
-# See if the linker supports building shared libraries.
-echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6
-
-allow_undefined_flag=
-no_undefined_flag=
-need_lib_prefix=unknown
-need_version=unknown
-# when you set need_version to no, make sure it does not cause -set_version
-# flags to be left without arguments
-archive_cmds=
-archive_expsym_cmds=
-old_archive_from_new_cmds=
-export_dynamic_flag_spec=
-whole_archive_flag_spec=
-thread_safe_flag_spec=
-hardcode_libdir_flag_spec=
-hardcode_libdir_separator=
-hardcode_direct=no
-hardcode_minus_L=no
-hardcode_shlibpath_var=unsupported
-runpath_var=
-always_export_symbols=no
-export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
-# include_expsyms should be a list of space-separated symbols to be *always*
-# included in the symbol list
-include_expsyms=
-# exclude_expsyms can be an egrep regular expression of symbols to exclude
-# it will be wrapped by ` (' and `)$', so one must not match beginning or
-# end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
-# as well as any symbol that contains `d'.
-exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
-# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
-# platforms (ab)use it in PIC code, but their linkers get confused if
-# the symbol is explicitly referenced.  Since portable code cannot
-# rely on this symbol name, it's probably fine to never include it in
-# preloaded symbol tables.
-
-case "$host_os" in
-cygwin* | mingw*)
-  # FIXME: the MSVC++ port hasn't been tested in a loooong time
-  # When not using gcc, we currently assume that we are using
-  # Microsoft Visual C++.
-  if test "$with_gcc" != yes; then
-    with_gnu_ld=no
-  fi
-  ;;
-
-esac
-
-ld_shlibs=yes
-if test "$with_gnu_ld" = yes; then
-  # If archive_cmds runs LD, not CC, wlarc should be empty
-  wlarc='${wl}'
-
-  # See if GNU ld supports shared libraries.
-  case "$host_os" in
-  aix3* | aix4*)
-    # On AIX, the GNU linker is very broken
-    ld_shlibs=no
-    cat <<EOF 1>&2
-
-*** Warning: the GNU linker, at least up to release 2.9.1, is reported
-*** to be unable to reliably create shared libraries on AIX.
-*** Therefore, libtool is disabling shared libraries support.  If you
-*** really care for shared libraries, you may want to modify your PATH
-*** so that a non-GNU linker is found, and then restart.
-
-EOF
-    ;;
-
-  amigaos*)
-    archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
-    hardcode_libdir_flag_spec='-L$libdir'
-    hardcode_minus_L=yes
-
-    # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
-    # that the semantics of dynamic libraries on AmigaOS, at least up
-    # to version 4, is to share data among multiple programs linked
-    # with the same dynamic library.  Since this doesn't match the
-    # behavior of shared libraries on other platforms, we can use
-    # them.
-    ld_shlibs=no
-    ;;
-
-  beos*)
-    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-      allow_undefined_flag=unsupported
-      # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
-      # support --undefined.  This deserves some investigation.  FIXME
-      archive_cmds='$CC -nostart $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
-    else
-      ld_shlibs=no
-    fi
-    ;;
-
-  cygwin* | mingw*)
-    # hardcode_libdir_flag_spec is actually meaningless, as there is
-    # no search path for DLLs.
-    hardcode_libdir_flag_spec='-L$libdir'
-    allow_undefined_flag=unsupported
-    always_export_symbols=yes
-
-    # Extract the symbol export list from an `--export-all' def file,
-    # then regenerate the def file from the symbol export list, so that
-    # the compiled dll only exports the symbol export list.
-    # Be careful not to strip the DATA tag left by newer dlltools.
-    export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
-      test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~
-      $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def  $objdir/$soname-ltdll.$objext $libobjs $convenience~
-      sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $objdir/$soname-def > $export_symbols'
-
-    # If DATA tags from a recent dlltool are present, honour them!
-    archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
-      _lt_hint=1;
-      cat $export_symbols | while read symbol; do
-        set dummy \$symbol;
-        case \$# in
-          2) echo "    \$2 @ \$_lt_hint ; " >> $objdir/$soname-def;;
-          *) echo "     \$2 @ \$_lt_hint \$3 ; " >> $objdir/$soname-def;;
-        esac;
-       _lt_hint=`expr 1 + \$_lt_hint`;
-      done~
-      test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
-      test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~
-      $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
-      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
-      $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
-      $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
-      $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts'
-
-      old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a' 
-    ;;
-
-  netbsd*)
-    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
-      archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-    else
-      archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib'
-      # can we support soname and/or expsyms with a.out? -oliva
-    fi
-    ;;
-
-  solaris* | sysv5*)
-    if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
-      ld_shlibs=no
-      cat <<EOF 1>&2
-
-*** Warning: The releases 2.8.* of the GNU linker cannot reliably
-*** create shared libraries on Solaris systems.  Therefore, libtool
-*** is disabling shared libraries support.  We urge you to upgrade GNU
-*** binutils to release 2.9.1 or newer.  Another option is to modify
-*** your PATH or compiler configuration so that the native linker is
-*** used, and then restart.
-
-EOF
-    elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
-      archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-    else
-      ld_shlibs=no
-    fi
-    ;;      
-
-  sunos4*)
-    archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts'
-    wlarc=
-    hardcode_direct=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  *)
-    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
-      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
-      archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
-    else
-      ld_shlibs=no
-    fi
-    ;;
-  esac
-
-  if test "$ld_shlibs" = yes; then
-    runpath_var=LD_RUN_PATH
-    hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
-    export_dynamic_flag_spec='${wl}--export-dynamic'
-    case $host_os in
-    cygwin* | mingw*)
-      # dlltool doesn't understand --whole-archive et. al.
-      whole_archive_flag_spec=
-      ;;
-    *)
-      # ancient GNU ld didn't support --whole-archive et. al.
-      if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
-        whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
-      else
-        whole_archive_flag_spec=
-      fi
-      ;;
-    esac
-  fi
-else
-  # PORTME fill in a description of your system's linker (not GNU ld)
-  case "$host_os" in
-  aix3*)
-    allow_undefined_flag=unsupported
-    always_export_symbols=yes
-    archive_expsym_cmds='$LD -o $objdir/$soname $libobjs $deplibs $linkopts -bE:$export_symbols -T512 -H512 -bM:SRE~$AR cru $lib $objdir/$soname'
-    # Note: this linker hardcodes the directories in LIBPATH if there
-    # are no directories specified by -L.
-    hardcode_minus_L=yes
-    if test "$with_gcc" = yes && test -z "$link_static_flag"; then
-      # Neither direct hardcoding nor static linking is supported with a
-      # broken collect2.
-      hardcode_direct=unsupported
-    fi
-    ;;
-
-  aix4*)
-    hardcode_libdir_flag_spec='${wl}-b ${wl}nolibpath ${wl}-b ${wl}libpath:$libdir:/usr/lib:/lib'
-    hardcode_libdir_separator=':'
-    if test "$with_gcc" = yes; then
-      collect2name=`${CC} -print-prog-name=collect2`
-      if test -f "$collect2name" && \
-        strings "$collect2name" | grep resolve_lib_name >/dev/null
-      then
-       # We have reworked collect2
-       hardcode_direct=yes
-      else
-       # We have old collect2
-       hardcode_direct=unsupported
-       # It fails to find uninstalled libraries when the uninstalled
-       # path is not listed in the libpath.  Setting hardcode_minus_L
-       # to unsupported forces relinking
-       hardcode_minus_L=yes
-       hardcode_libdir_flag_spec='-L$libdir'
-       hardcode_libdir_separator=
-      fi
-      shared_flag='-shared'
-    else
-      shared_flag='${wl}-bM:SRE'
-      hardcode_direct=yes
-    fi
-    allow_undefined_flag=' ${wl}-berok'
-    archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}'
-    archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}'
-    case "$host_os" in aix4.[01]|aix4.[01].*)
-      # According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on
-      always_export_symbols=yes ;;
-    esac
-   ;;
-
-  amigaos*)
-    archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
-    hardcode_libdir_flag_spec='-L$libdir'
-    hardcode_minus_L=yes
-    # see comment about different semantics on the GNU ld section
-    ld_shlibs=no
-    ;;
-
-  cygwin* | mingw*)
-    # When not using gcc, we currently assume that we are using
-    # Microsoft Visual C++.
-    # hardcode_libdir_flag_spec is actually meaningless, as there is
-    # no search path for DLLs.
-    hardcode_libdir_flag_spec=' '
-    allow_undefined_flag=unsupported
-    # Tell ltmain to make .lib files, not .a files.
-    libext=lib
-    # FIXME: Setting linknames here is a bad hack.
-    archive_cmds='$CC -o $lib $libobjs $linkopts `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
-    # The linker will automatically build a .lib file if we build a DLL.
-    old_archive_from_new_cmds='true'
-    # FIXME: Should let the user specify the lib program.
-    old_archive_cmds='lib /OUT:$oldlib$oldobjs'
-    fix_srcfile_path='`cygpath -w $srcfile`'
-    ;;
-
-  freebsd1*)
-    ld_shlibs=no
-    ;;
-
-  # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
-  # support.  Future versions do this automatically, but an explicit c++rt0.o
-  # does not break anything, and helps significantly (at the cost of a little
-  # extra space).
-  freebsd2.2*)
-    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts /usr/lib/c++rt0.o'
-    hardcode_libdir_flag_spec='-R$libdir'
-    hardcode_direct=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  # Unfortunately, older versions of FreeBSD 2 do not have this feature.
-  freebsd2*)
-    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
-    hardcode_direct=yes
-    hardcode_minus_L=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-  freebsd*)
-    archive_cmds='$CC -shared -o $lib $libobjs $deplibs $linkopts'
-    hardcode_libdir_flag_spec='-R$libdir'
-    hardcode_direct=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  hpux9* | hpux10* | hpux11*)
-    case "$host_os" in
-    hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;;
-    *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linkopts' ;;
-    esac
-    hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-    hardcode_libdir_separator=:
-    hardcode_direct=yes
-    hardcode_minus_L=yes # Not in the search PATH, but as the default
-                        # location of the library.
-    export_dynamic_flag_spec='${wl}-E'
-    ;;
-
-  irix5* | irix6*)
-    if test "$with_gcc" = yes; then
-      archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
-    else
-      archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
-    fi
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    hardcode_libdir_separator=:
-    ;;
-
-  netbsd*)
-    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-      archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'  # a.out
-    else
-      archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linkopts'      # ELF
-    fi
-    hardcode_libdir_flag_spec='${wl}-R$libdir'
-    hardcode_direct=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  openbsd*)
-    archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
-    hardcode_libdir_flag_spec='-R$libdir'
-    hardcode_direct=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  os2*)
-    hardcode_libdir_flag_spec='-L$libdir'
-    hardcode_minus_L=yes
-    allow_undefined_flag=unsupported
-    archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def~$echo DATA >> $objdir/$libname.def~$echo " SINGLE NONSHARED" >> $objdir/$libname.def~$echo EXPORTS >> $objdir/$libname.def~emxexp $libobjs >> $objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $linkopts $objdir/$libname.def'
-    old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
-    ;;
-
-  osf3*)
-    if test "$with_gcc" = yes; then
-      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
-    else
-      allow_undefined_flag=' -expect_unresolved \*'
-      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
-    fi
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    hardcode_libdir_separator=:
-    ;;
-
-  osf4* | osf5*)  # As osf3* with the addition of the -msym flag
-    if test "$with_gcc" = yes; then
-      allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
-      archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
-    else
-      allow_undefined_flag=' -expect_unresolved \*'
-      archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
-    fi
-    hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
-    hardcode_libdir_separator=:
-    ;;
-  rhapsody*)
-    archive_cmds='$CC -bundle -undefined suppress -o $lib $libobjs $deplibs $linkopts'
-    hardcode_libdir_flags_spec='-L$libdir'
-    hardcode_direct=yes
-    hardcode_shlibpath_var=no
-    ;;
-                                       
-  sco3.2v5*)
-    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-    hardcode_shlibpath_var=no
-    runpath_var=LD_RUN_PATH
-    hardcode_runpath_var=yes
-    ;;
-
-  solaris*)
-    no_undefined_flag=' -z text'
-    # $CC -shared without GNU ld will not create a library from C++
-    # object files and a static libstdc++, better avoid it by now
-    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts'
-    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp'
-    hardcode_libdir_flag_spec='-R$libdir'
-    hardcode_shlibpath_var=no
-    case "$host_os" in
-    solaris2.[0-5] | solaris2.[0-5].*) ;;
-    *) # Supported since Solaris 2.6 (maybe 2.5.1?)
-      whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
-    esac
-    ;;
-
-  sunos4*)
-    archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts'
-    hardcode_libdir_flag_spec='-L$libdir'
-    hardcode_direct=yes
-    hardcode_minus_L=yes
-    hardcode_shlibpath_var=no
-    ;;
-
-  sysv4)
-    if test "x$host_vendor" = xsequent; then
-      # Use $CC to link under sequent, because it throws in some extra .o 
-      # files that make .init and .fini sections work.
-      archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $linkopts'
-    else
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-    fi
-    runpath_var='LD_RUN_PATH'
-    hardcode_shlibpath_var=no
-    hardcode_direct=no #Motorola manual says yes, but my tests say they lie 
-    ;;  
-
-  sysv4.3*)
-    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-    hardcode_shlibpath_var=no
-    export_dynamic_flag_spec='-Bexport'
-    ;;
-
-  sysv5*)
-    no_undefined_flag=' -z text'
-    # $CC -shared without GNU ld will not create a library from C++
-    # object files and a static libstdc++, better avoid it by now
-    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts'
-    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
-               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp'
-    hardcode_libdir_flag_spec=
-    hardcode_shlibpath_var=no
-    runpath_var='LD_RUN_PATH'
-    ;;
-
-  uts4*)
-    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-    hardcode_libdir_flag_spec='-L$libdir'
-    hardcode_shlibpath_var=no
-    ;;
-
-  dgux*)
-    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-    hardcode_libdir_flag_spec='-L$libdir'
-    hardcode_shlibpath_var=no
-    ;;
-
-  sysv4*MP*)
-    if test -d /usr/nec; then
-      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-      hardcode_shlibpath_var=no
-      runpath_var=LD_RUN_PATH
-      hardcode_runpath_var=yes
-      ld_shlibs=yes
-    fi
-    ;;
-
-  sysv4.2uw2*)
-    archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts'
-    hardcode_direct=yes
-    hardcode_minus_L=no
-    hardcode_shlibpath_var=no
-    hardcode_runpath_var=yes
-    runpath_var=LD_RUN_PATH
-    ;;
-
-  unixware7*)
-    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
-    runpath_var='LD_RUN_PATH'
-    hardcode_shlibpath_var=no
-    ;;
-
-  *)
-    ld_shlibs=no
-    ;;
-  esac
-fi
-echo "$ac_t$ld_shlibs" 1>&6
-test "$ld_shlibs" = no && can_build_shared=no
-
-if test -z "$NM"; then
-  echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6
-  case "$NM" in
-  [\\/]* | [A-Za-z]:[\\/]*) ;; # Let the user override the test with a path.
-  *)
-    IFS="${IFS=        }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
-    for ac_dir in $PATH /usr/ucb /usr/ccs/bin /bin; do
-      test -z "$ac_dir" && ac_dir=.
-      if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext; then
-       # Check to see if the nm accepts a BSD-compat flag.
-       # Adding the `sed 1q' prevents false positives on HP-UX, which says:
-       #   nm: unknown option "B" ignored
-       if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-         NM="$ac_dir/nm -B"
-         break
-       elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
-         NM="$ac_dir/nm -p"
-         break
-       else
-         NM=${NM="$ac_dir/nm"} # keep the first match, but
-         continue # so that we can try to find one that supports BSD flags
-       fi
-      fi
-    done
-    IFS="$ac_save_ifs"
-    test -z "$NM" && NM=nm
-    ;;
-  esac
-  echo "$ac_t$NM" 1>&6
-fi
-
-# Check for command to grab the raw symbol name followed by C symbol from nm.
-echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6
-
-# These are sane defaults that work on at least a few old systems.
-# [They come from Ultrix.  What could be older than Ultrix?!! ;)]
-
-# Character class describing NM global symbol codes.
-symcode='[BCDEGRST]'
-
-# Regexp to match symbols that can be accessed directly from C.
-sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
-
-# Transform the above into a raw symbol and a C symbol.
-symxfrm='\1 \2\3 \3'
-
-# Transform an extracted symbol line into a proper C declaration
-global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
-
-# Define system-specific variables.
-case "$host_os" in
-aix*)
-  symcode='[BCDT]'
-  ;;
-cygwin* | mingw*)
-  symcode='[ABCDGISTW]'
-  ;;
-hpux*) # Its linker distinguishes data from code symbols
-  global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'"
-  ;;
-irix*)
-  symcode='[BCDEGRST]'
-  ;;
-solaris*)
-  symcode='[BDT]'
-  ;;
-sysv4)
-  symcode='[DFNSTU]'
-  ;;
-esac
-
-# If we're using GNU nm, then use its standard symbol codes.
-if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
-  symcode='[ABCDGISTW]'
-fi
-
-# Try without a prefix undercore, then with it.
-for ac_symprfx in "" "_"; do
-
-  # Write the raw and C identifiers.
-  global_symbol_pipe="sed -n -e 's/^.*[        ]\($symcode\)[  ][      ]*\($ac_symprfx\)$sympat$/$symxfrm/p'"
-
-  # Check to see that the pipe works correctly.
-  pipe_works=no
-  $rm conftest*
-  cat > conftest.c <<EOF
-#ifdef __cplusplus
-extern "C" {
-#endif
-char nm_test_var;
-void nm_test_func(){}
-#ifdef __cplusplus
-}
-#endif
-main(){nm_test_var='a';nm_test_func();return(0);}
-EOF
-
-  echo "$progname:1653: checking if global_symbol_pipe works" >&5
-  if { (eval echo $progname:1654: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then
-    # Now try to grab the symbols.
-    nlist=conftest.nm
-    if { echo "$progname:1657: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
-
-      # Try sorting and uniquifying the output.
-      if sort "$nlist" | uniq > "$nlist"T; then
-       mv -f "$nlist"T "$nlist"
-      else
-       rm -f "$nlist"T
-      fi
-
-      # Make sure that we snagged all the symbols we need.
-      if egrep ' nm_test_var$' "$nlist" >/dev/null; then
-       if egrep ' nm_test_func$' "$nlist" >/dev/null; then
-         cat <<EOF > conftest.c
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-EOF
-         # Now generate the symbol file.
-         eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.c'
-
-         cat <<EOF >> conftest.c
-#if defined (__STDC__) && __STDC__
-# define lt_ptr_t void *
-#else
-# define lt_ptr_t char *
-# define const
-#endif
-
-/* The mapping between symbol names and symbols. */
-const struct {
-  const char *name;
-  lt_ptr_t address;
-}
-lt_preloaded_symbols[] =
-{
-EOF
-         sed 's/^. \(.*\) \(.*\)$/  {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.c
-         cat <<\EOF >> conftest.c
-  {0, (lt_ptr_t) 0}
-};
-
-#ifdef __cplusplus
-}
-#endif
-EOF
-         # Now try linking the two files.
-         mv conftest.$objext conftstm.$objext
-         save_LIBS="$LIBS"
-         save_CFLAGS="$CFLAGS"
-         LIBS="conftstm.$objext"
-         CFLAGS="$CFLAGS$no_builtin_flag"
-         if { (eval echo $progname:1709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
-           pipe_works=yes
-         else
-           echo "$progname: failed program was:" >&5
-           cat conftest.c >&5
-         fi
-         LIBS="$save_LIBS"
-       else
-         echo "cannot find nm_test_func in $nlist" >&5
-       fi
-      else
-       echo "cannot find nm_test_var in $nlist" >&5
-      fi
-    else
-      echo "cannot run $global_symbol_pipe" >&5
-    fi
-  else
-    echo "$progname: failed program was:" >&5
-    cat conftest.c >&5
-  fi
-  $rm conftest* conftst*
-
-  # Do not use the global_symbol_pipe unless it works.
-  if test "$pipe_works" = yes; then
-    break
-  else
-    global_symbol_pipe=
-  fi
-done
-if test "$pipe_works" = yes; then
-  echo "${ac_t}ok" 1>&6
-else
-  echo "${ac_t}failed" 1>&6
-fi
-
-if test -z "$global_symbol_pipe"; then
-  global_symbol_to_cdecl=
-fi
-
-# Check hardcoding attributes.
-echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6
-hardcode_action=
-if test -n "$hardcode_libdir_flag_spec" || \
-   test -n "$runpath_var"; then
-
-  # We can hardcode non-existant directories.
-  if test "$hardcode_direct" != no &&
-     # If the only mechanism to avoid hardcoding is shlibpath_var, we
-     # have to relink, otherwise we might link with an installed library
-     # when we should be linking with a yet-to-be-installed one
-     ## test "$hardcode_shlibpath_var" != no &&
-     test "$hardcode_minus_L" != no; then
-    # Linking always hardcodes the temporary library directory.
-    hardcode_action=relink
-  else
-    # We can link without hardcoding, and we can hardcode nonexisting dirs.
-    hardcode_action=immediate
-  fi
-else
-  # We cannot hardcode anything, or else we can only hardcode existing
-  # directories.
-  hardcode_action=unsupported
-fi
-echo "$ac_t$hardcode_action" 1>&6
-
-
-reload_flag=
-reload_cmds='$LD$reload_flag -o $output$reload_objs'
-echo $ac_n "checking for $LD option to reload object files... $ac_c" 1>&6
-# PORTME Some linkers may need a different reload flag.
-reload_flag='-r'
-echo "$ac_t$reload_flag" 1>&6
-test -n "$reload_flag" && reload_flag=" $reload_flag"
-
-# PORTME Fill in your ld.so characteristics
-library_names_spec=
-libname_spec='lib$name'
-soname_spec=
-postinstall_cmds=
-postuninstall_cmds=
-finish_cmds=
-finish_eval=
-shlibpath_var=
-shlibpath_overrides_runpath=unknown
-version_type=none
-dynamic_linker="$host_os ld.so"
-sys_lib_dlsearch_path_spec="/lib /usr/lib"
-sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-file_magic_cmd=
-file_magic_test_file=
-deplibs_check_method='unknown'
-# Need to set the preceding variable on all platforms that support
-# interlibrary dependencies.
-# 'none' -- dependencies not supported.
-# `unknown' -- same as none, but documents that we really don't know.
-# 'pass_all' -- all dependencies passed with no checks.
-# 'test_compile' -- check by making test program.
-# 'file_magic [regex]' -- check by looking for files in library path
-# which responds to the $file_magic_cmd with a given egrep regex.
-# If you have `file' or equivalent on your system and you're not sure
-# whether `pass_all' will *always* work, you probably want this one.
-echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
-case "$host_os" in
-aix3*)
-  version_type=linux
-  library_names_spec='${libname}${release}.so$versuffix $libname.a'
-  shlibpath_var=LIBPATH
-
-  # AIX has no versioning support, so we append a major version to the name.
-  soname_spec='${libname}${release}.so$major'
-  ;;
-
-aix4*)
-  version_type=linux
-  # AIX has no versioning support, so currently we can not hardcode correct
-  # soname into executable. Probably we can add versioning support to
-  # collect2, so additional links can be useful in future.
-  # We preserve .a as extension for shared libraries though AIX4.2
-  # and later linker supports .so
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a'
-  shlibpath_var=LIBPATH
-  deplibs_check_method=pass_all
-  ;;
-
-amigaos*)
-  library_names_spec='$libname.ixlibrary $libname.a'
-  # Create ${libname}_ixlibrary.a entries in /sys/libs.
-  finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
-  ;;
-
-beos*)
-  library_names_spec='${libname}.so'
-  dynamic_linker="$host_os ld.so"
-  shlibpath_var=LIBRARY_PATH
-  deplibs_check_method=pass_all
-  lt_cv_dlopen="load_add_on"
-  lt_cv_dlopen_libs=
-  lt_cv_dlopen_self=yes
-  ;;
-
-bsdi4*)
-  version_type=linux
-  need_version=no
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  soname_spec='${libname}${release}.so$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
-  file_magic_cmd=/usr/bin/file
-  file_magic_test_file=/shlib/libc.so
-  sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
-  sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
-  export_dynamic_flag_spec=-rdynamic
-  # the default ld.so.conf also contains /usr/contrib/lib and
-  # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
-  # libtool to hard-code these into programs
-  ;;
-
-cygwin* | mingw*)
-  version_type=windows
-  need_version=no
-  need_lib_prefix=no
-  if test "$with_gcc" = yes; then
-    library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.a'
-  else
-    library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
-  fi
-  dynamic_linker='Win32 ld.exe'
-  deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-  file_magic_cmd='${OBJDUMP} -f'
-  # FIXME: first we should search . and the directory the executable is in
-  shlibpath_var=PATH
-  lt_cv_dlopen="LoadLibrary"
-  lt_cv_dlopen_libs=
-  ;;
-
-freebsd1*)
-  dynamic_linker=no
-  ;;
-  
-freebsd*)
-  objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
-  version_type=freebsd-$objformat
-  case "$version_type" in
-    freebsd-elf*)
-      deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
-      file_magic_cmd=/usr/bin/file
-      file_magic_test_file=`echo /usr/lib/libc.so*`
-      library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
-      need_version=no
-      need_lib_prefix=no
-      ;;
-    freebsd-*)
-      deplibs_check_method=unknown
-      library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
-      need_version=yes
-      ;;
-  esac
-  shlibpath_var=LD_LIBRARY_PATH
-  case "$host_os" in
-  freebsd2* | freebsd3.[01]* | freebsdelf3.[01]*)
-    shlibpath_overrides_runpath=yes
-    ;;
-  *) # from 3.2 on
-    shlibpath_overrides_runpath=no
-    ;;
-  esac
-  ;;
-
-gnu*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
-  soname_spec='${libname}${release}.so$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-hpux9* | hpux10* | hpux11*)
-  # Give a soname corresponding to the major version so that dld.sl refuses to
-  # link against other versions.
-  dynamic_linker="$host_os dld.sl"
-  version_type=sunos
-  need_lib_prefix=no
-  need_version=no
-  shlibpath_var=SHLIB_PATH
-  shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
-  library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
-  soname_spec='${libname}${release}.sl$major'
-  # HP-UX runs *really* slowly unless shared libraries are mode 555.
-  postinstall_cmds='chmod 555 $lib'
-  case "$host_os" in
-  hpux10.20*)
-    # TODO:  Does this work for hpux-11 too?
-    deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library'
-    file_magic_cmd=/usr/bin/file
-    file_magic_test_file=/usr/lib/libc.sl
-    ;;
-  esac
-  ;;
-
-irix5* | irix6*)
-  version_type=irix
-  need_lib_prefix=no
-  need_version=no
-  soname_spec='${libname}${release}.so.$major'
-  library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}${release}.so $libname.so'
-  case "$host_os" in
-  irix5*)
-    libsuff= shlibsuff=
-    # this will be overridden with pass_all, but let us keep it just in case
-    deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
-    ;;
-  *)
-    case "$LD" in # libtool.m4 will add one of these switches to LD
-    *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
-    *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
-    *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
-    *) libsuff= shlibsuff= libmagic=never-match;;
-    esac
-    ;;
-  esac
-  shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
-  shlibpath_overrides_runpath=no
-  sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
-  sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
-  file_magic_cmd=/usr/bin/file
-  file_magic_test_file=`echo /lib${libsuff}/libc.so*`
-  deplibs_check_method='pass_all'
-  ;;
-
-# No shared lib support for Linux oldld, aout, or coff.
-linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
-  dynamic_linker=no
-  ;;
-
-# This must be Linux ELF.
-linux-gnu*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  soname_spec='${libname}${release}.so$major'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  deplibs_check_method=pass_all
-
-  if test -f /lib/ld.so.1; then
-    dynamic_linker='GNU ld.so'
-  else
-    # Only the GNU ld.so supports shared libraries on MkLinux.
-    case "$host_cpu" in
-    powerpc*) dynamic_linker=no ;;
-    *) dynamic_linker='Linux ld.so' ;;
-    esac
-  fi
-  ;;
-
-netbsd*)
-  version_type=sunos
-  if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
-    library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-    finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-    dynamic_linker='NetBSD (a.out) ld.so'
-  else
-    library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
-    soname_spec='${libname}${release}.so$major'
-    dynamic_linker='NetBSD ld.elf_so'
-  fi
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-openbsd*)
-  version_type=sunos
-  if test "$with_gnu_ld" = yes; then
-    need_lib_prefix=no
-    need_version=no
-  fi
-  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-os2*)
-  libname_spec='$name'
-  need_lib_prefix=no
-  library_names_spec='$libname.dll $libname.a'
-  dynamic_linker='OS/2 ld.exe'
-  shlibpath_var=LIBPATH
-  ;;
-
-osf3* | osf4* | osf5*)
-  version_type=osf
-  need_version=no
-  soname_spec='${libname}${release}.so'
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
-  shlibpath_var=LD_LIBRARY_PATH
-  # this will be overridden with pass_all, but let us keep it just in case
-  deplibs_check_method='file_magic COFF format alpha shared library'
-  file_magic_cmd=/usr/bin/file
-  file_magic_test_file=/shlib/libc.so
-  deplibs_check_method='pass_all'
-  sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
-  sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
-  ;;
-
-rhapsody*)
-  version_type=sunos
-  library_names_spec='${libname}.so'
-  soname_spec='${libname}.so'
-  shlibpath_var=DYLD_LIBRARY_PATH
-  deplibs_check_method=pass_all
-  ;;
-
-sco3.2v5*)
-  version_type=osf
-  soname_spec='${libname}${release}.so$major'
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-solaris*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  soname_spec='${libname}${release}.so$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  # ldd complains unless libraries are executable
-  postinstall_cmds='chmod +x $lib'
-  deplibs_check_method="file_magic ELF [0-9][0-9]-bit [LM]SB dynamic lib"
-  file_magic_cmd=/usr/bin/file
-  file_magic_test_file=/lib/libc.so
-  ;;
-
-sunos4*)
-  version_type=sunos
-  library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
-  finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=yes
-  if test "$with_gnu_ld" = yes; then
-    need_lib_prefix=no
-  fi
-  need_version=yes
-  ;;
-
-sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
-  version_type=linux
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  soname_spec='${libname}${release}.so$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  case "$host_vendor" in
-    sequent)
-      file_magic_cmd='/bin/file'
-      deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
-      ;;
-    ncr)
-      deplibs_check_method='pass_all'
-      ;;
-    motorola)
-      need_lib_prefix=no
-      need_version=no
-      shlibpath_overrides_runpath=no
-      sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
-      deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
-      file_magic_cmd=/usr/bin/file
-      file_magic_test_file=`echo /usr/lib/libc.so*`
-      ;;
-  esac
-  ;;
-
-uts4*)
-  version_type=linux
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  soname_spec='${libname}${release}.so$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-dgux*)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
-  soname_spec='${libname}${release}.so$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  ;;
-
-sysv4*MP*)
-  if test -d /usr/nec ;then
-    version_type=linux
-    library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
-    soname_spec='$libname.so.$major'
-    shlibpath_var=LD_LIBRARY_PATH
-  fi
-  ;;
-
-*)
-  dynamic_linker=no
-  ;;
-esac
-echo "$ac_t$dynamic_linker" 1>&6
-test "$dynamic_linker" = no && can_build_shared=no
-
-# Report the final consequences.
-echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6
-
-# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in
-# configure.in, otherwise build static only libraries.
-case "$host_os" in
-cygwin* | mingw* | os2*)
-  if test x$can_build_shared = xyes; then
-    test x$enable_win32_dll = xno && can_build_shared=no
-    echo "checking if package supports dlls... $can_build_shared" 1>&6
-  fi
-;;
-esac
-
-if test -n "$file_magic_test_file" && test -n "$file_magic_cmd"; then
-  case "$deplibs_check_method" in
-  "file_magic "*)
-    file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
-    if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
-       egrep "$file_magic_regex" > /dev/null; then
-      :
-    else
-      cat <<EOF 1>&2
-
-*** Warning: the command libtool uses to detect shared libraries,
-*** $file_magic_cmd, produces output that libtool cannot recognize.
-*** The result is that libtool may fail to recognize shared libraries
-*** as such.  This will affect the creation of libtool libraries that
-*** depend on shared libraries, but programs linked with such libtool
-*** libraries will work regardless of this problem.  Nevertheless, you
-*** may want to report the problem to your system manager and/or to
-*** bug-libtool@gnu.org
-
-EOF
-    fi ;;
-  esac
-fi
-
-echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6
-test "$can_build_shared" = "no" && enable_shared=no
-
-# On AIX, shared libraries and static libraries use the same namespace, and
-# are all built from PIC.
-case "$host_os" in
-aix3*)
-  test "$enable_shared" = yes && enable_static=no
-  if test -n "$RANLIB"; then
-    archive_cmds="$archive_cmds~\$RANLIB \$lib"
-    postinstall_cmds='$RANLIB $lib'
-  fi
-  ;;
-
-aix4*)
-  test "$enable_shared" = yes && enable_static=no
-  ;;
-esac
-
-echo "$ac_t$enable_shared" 1>&6
-
-# Make sure either enable_shared or enable_static is yes.
-test "$enable_shared" = yes || enable_static=yes
-
-echo "checking whether to build static libraries... $enable_static" 1>&6
-
-if test "$hardcode_action" = relink; then
-  # Fast installation is not supported
-  enable_fast_install=no
-elif test "$shlibpath_overrides_runpath" = yes ||
-     test "$enable_shared" = no; then
-  # Fast installation is not necessary
-  enable_fast_install=needless
-fi
-
-echo $ac_n "checking for objdir... $ac_c" 1>&6
-rm -f .libs 2>/dev/null
-mkdir .libs 2>/dev/null
-if test -d .libs; then
-  objdir=.libs
-else
-  # MS-DOS does not allow filenames that begin with a dot.
-  objdir=_libs
-fi
-rmdir .libs 2>/dev/null
-echo "$ac_t$objdir" 1>&6
-
-if test "x$enable_dlopen" != xyes; then
-  enable_dlopen=unknown
-  enable_dlopen_self=unknown
-  enable_dlopen_self_static=unknown
-else
-if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then
-  lt_cv_dlopen=no lt_cv_dlopen_libs=
-echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "$progname:2248: checking for dlopen in -ldl" >&5
-ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-ldl  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2256 "ltconfig"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen();
-
-int main() {
-dlopen()
-; return 0; }
-EOF
-if { (eval echo $progname:2269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
-else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for dlopen""... $ac_c" 1>&6
-echo "$progname:2288: checking for dlopen" >&5
-if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2293 "ltconfig"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char dlopen(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dlopen();
-
-int main() {
-
-/* 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_dlopen) || defined (__stub___dlopen)
-choke me
-#else
-dlopen();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo $progname:2318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_dlopen=yes"
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_dlopen=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  lt_cv_dlopen="dlopen"
-else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
-echo "$progname:2335: checking for dld_link in -ldld" >&5
-ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-ldld  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2343 "ltconfig"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char dld_link();
-
-int main() {
-dld_link()
-; return 0; }
-EOF
-if { (eval echo $progname:2356: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
-else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for shl_load""... $ac_c" 1>&6
-echo "$progname:2375: checking for shl_load" >&5
-if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2380 "ltconfig"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char shl_load(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load();
-
-int main() {
-
-/* 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_shl_load) || defined (__stub___shl_load)
-choke me
-#else
-shl_load();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo $progname:2405: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_shl_load=yes"
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_shl_load=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  lt_cv_dlopen="shl_load"
-else
-  echo "$ac_t""no" 1>&6
-echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
-echo "$progname:2423: checking for shl_load in -ldld" >&5
-ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-ldld  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 2431 "ltconfig"
-#include "confdefs.h"
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char shl_load();
-
-int main() {
-shl_load()
-; return 0; }
-EOF
-if { (eval echo $progname:2445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-
-fi
-
-    
-fi
-
-  
-fi
-
-
-fi
-
-fi
-
-  if test "x$lt_cv_dlopen" != xno; then
-    enable_dlopen=yes
-  fi
-
-  case "$lt_cv_dlopen" in
-  dlopen)
-for ac_hdr in dlfcn.h; do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "$progname:2488: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 2493 "ltconfig"
-#include <$ac_hdr>
-int fnord = 0;
-EOF
-ac_try="$ac_compile >/dev/null 2>conftest.out"
-{ (eval echo $progname:2498: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
-else
-  echo "$ac_err" >&5
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
-fi
-rm -f conftest*
-fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
-
-    if test "x$ac_cv_header_dlfcn_h" = xyes; then
-      CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
-    fi
-    eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
-    LIBS="$lt_cv_dlopen_libs $LIBS"
-
-  echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
-echo "$progname:2526: checking whether a program can dlopen itself" >&5
-if test "${lt_cv_dlopen_self+set}" = set; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test "$cross_compiling" = yes; then
-    lt_cv_dlopen_self=cross
-  else
-    cat > conftest.c <<EOF
-#line 2534 "ltconfig"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LTDL_GLOBAL   RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-#  define LTDL_GLOBAL  DL_GLOBAL
-# else
-#  define LTDL_GLOBAL  0
-# endif
-#endif
-
-/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LTDL_LAZY_OR_NOW
-# ifdef RTLD_LAZY
-#  define LTDL_LAZY_OR_NOW     RTLD_LAZY
-# else
-#  ifdef DL_LAZY
-#   define LTDL_LAZY_OR_NOW    DL_LAZY
-#  else
-#   ifdef RTLD_NOW
-#    define LTDL_LAZY_OR_NOW   RTLD_NOW
-#   else
-#    ifdef DL_NOW
-#     define LTDL_LAZY_OR_NOW  DL_NOW
-#    else
-#     define LTDL_LAZY_OR_NOW  0
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-fnord() { int i=42;}
-main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
-    if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
-              if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } 
-
-EOF
-if { (eval echo $progname:2580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
-then
-  lt_cv_dlopen_self=yes
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  lt_cv_dlopen_self=no
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$lt_cv_dlopen_self" 1>&6
-
-  if test "$lt_cv_dlopen_self" = yes; then
-    LDFLAGS="$LDFLAGS $link_static_flag"
-  echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
-echo "$progname:2599: checking whether a statically linked program can dlopen itself" >&5
-if test "${lt_cv_dlopen_self_static+set}" = set; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test "$cross_compiling" = yes; then
-    lt_cv_dlopen_self_static=cross
-  else
-    cat > conftest.c <<EOF
-#line 2607 "ltconfig"
-
-#if HAVE_DLFCN_H
-#include <dlfcn.h>
-#endif
-
-#include <stdio.h>
-
-#ifdef RTLD_GLOBAL
-# define LTDL_GLOBAL   RTLD_GLOBAL
-#else
-# ifdef DL_GLOBAL
-#  define LTDL_GLOBAL  DL_GLOBAL
-# else
-#  define LTDL_GLOBAL  0
-# endif
-#endif
-
-/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
-   find out it does not work in some platform. */
-#ifndef LTDL_LAZY_OR_NOW
-# ifdef RTLD_LAZY
-#  define LTDL_LAZY_OR_NOW     RTLD_LAZY
-# else
-#  ifdef DL_LAZY
-#   define LTDL_LAZY_OR_NOW    DL_LAZY
-#  else
-#   ifdef RTLD_NOW
-#    define LTDL_LAZY_OR_NOW   RTLD_NOW
-#   else
-#    ifdef DL_NOW
-#     define LTDL_LAZY_OR_NOW  DL_NOW
-#    else
-#     define LTDL_LAZY_OR_NOW  0
-#    endif
-#   endif
-#  endif
-# endif
-#endif
-
-fnord() { int i=42;}
-main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
-    if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
-    if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } 
-
-EOF
-if { (eval echo $progname:2653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
-then
-  lt_cv_dlopen_self_static=yes
-else
-  echo "$progname: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  lt_cv_dlopen_self_static=no
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
-fi
-    ;;
-  esac
-
-  case "$lt_cv_dlopen_self" in
-  yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
-  *) enable_dlopen_self=unknown ;;
-  esac
-
-  case "$lt_cv_dlopen_self_static" in
-  yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
-  *) enable_dlopen_self_static=unknown ;;
-  esac
-fi
-
-# Copy echo and quote the copy, instead of the original, because it is
-# used later.
-ltecho="$echo"
-if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then
-   ltecho="$CONFIG_SHELL \$0 --fallback-echo"
-fi
-LTSHELL="$SHELL"
-
-LTCONFIG_VERSION="$VERSION"
-
-# Only quote variables if we're using ltmain.sh.
-case "$ltmain" in
-*.sh)
-  # Now quote all the things that may contain metacharacters.
-  for var in ltecho old_CC old_CFLAGS old_CPPFLAGS \
-    old_LD old_LDFLAGS old_LIBS \
-    old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS \
-    AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \
-    reload_flag reload_cmds wl \
-    pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
-    thread_safe_flag_spec whole_archive_flag_spec libname_spec \
-    library_names_spec soname_spec \
-    RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
-    old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds postuninstall_cmds \
-    file_magic_cmd export_symbols_cmds deplibs_check_method allow_undefined_flag no_undefined_flag \
-    finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
-    hardcode_libdir_flag_spec hardcode_libdir_separator  \
-    sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
-    compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
-
-    case "$var" in
-    reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
-    old_postinstall_cmds | old_postuninstall_cmds | \
-    export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
-    postinstall_cmds | postuninstall_cmds | \
-    finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
-      # Double-quote double-evaled strings.
-      eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
-      ;;
-    *)
-      eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
-      ;;
-    esac
-  done
-
-  case "$ltecho" in
-  *'\$0 --fallback-echo"')
-    ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'`
-    ;;
-  esac
-
-  trap "$rm \"$ofile\"; exit 1" 1 2 15
-  echo "creating $ofile"
-  $rm "$ofile"
-  cat <<EOF > "$ofile"
-#! $SHELL
-
-# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
-# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
-#
-# Copyright (C) 1996-1999 Free Software Foundation, Inc.
-# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-#
-# 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.
-#
-# 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.
-
-# Sed that helps us avoid accidentally triggering echo(1) options like -n.
-Xsed="sed -e s/^X//"
-
-# The HP-UX ksh and POSIX shell print the target directory to stdout
-# if CDPATH is set.
-if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
-
-### BEGIN LIBTOOL CONFIG
-EOF
-  cfgfile="$ofile"
-  ;;
-
-*)
-  # Double-quote the variables that need it (for aesthetics).
-  for var in old_CC old_CFLAGS old_CPPFLAGS \
-    old_LD old_LDFLAGS old_LIBS \
-    old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS; do
-    eval "$var=\\\"\$var\\\""
-  done
-
-  # Just create a config file.
-  cfgfile="$ofile.cfg"
-  trap "$rm \"$cfgfile\"; exit 1" 1 2 15
-  echo "creating $cfgfile"
-  $rm "$cfgfile"
-  cat <<EOF > "$cfgfile"
-# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file.
-# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
-EOF
-  ;;
-esac
-
-cat <<EOF >> "$cfgfile"
-# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# CC=$old_CC CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\
-# LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\
-# NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\
-# DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP AS=$old_AS \\
-#   $0$ltconfig_args
-#
-# Compiler and other test output produced by $progname, useful for
-# debugging $progname, is in ./config.log if it exists.
-
-# The version of $progname that generated this script.
-LTCONFIG_VERSION=$LTCONFIG_VERSION
-
-# Shell to use when invoking shell scripts.
-SHELL=$LTSHELL
-
-# Whether or not to build shared libraries.
-build_libtool_libs=$enable_shared
-
-# Whether or not to build static libraries.
-build_old_libs=$enable_static
-
-# Whether or not to optimize for fast installation.
-fast_install=$enable_fast_install
-
-# The host system.
-host_alias=$host_alias
-host=$host
-
-# An echo program that does not interpret backslashes.
-echo=$ltecho
-
-# The archiver.
-AR=$AR
-
-# The default C compiler.
-CC=$CC
-
-# The linker used to build libraries.
-LD=$LD
-
-# Whether we need hard or soft links.
-LN_S=$LN_S
-
-# A BSD-compatible nm program.
-NM=$NM
-
-# Used on cygwin: DLL creation program.
-DLLTOOL="$DLLTOOL"
-
-# Used on cygwin: object dumper.
-OBJDUMP="$OBJDUMP"
-
-# Used on cygwin: assembler.
-AS="$AS"
-
-# The name of the directory that contains temporary libtool files.
-objdir=$objdir
-
-# How to create reloadable object files.
-reload_flag=$reload_flag
-reload_cmds=$reload_cmds
-
-# How to pass a linker flag through the compiler.
-wl=$wl
-
-# Object file suffix (normally "o").
-objext="$objext"
-
-# Old archive suffix (normally "a").
-libext="$libext"
-
-# Executable file suffix (normally "").
-exeext="$exeext"
-
-# Additional compiler flags for building library objects.
-pic_flag=$pic_flag
-
-# Does compiler simultaneously support -c and -o options?
-compiler_c_o=$compiler_c_o
-
-# Can we write directly to a .lo ?
-compiler_o_lo=$compiler_o_lo
-
-# Must we lock files when doing compilation ?
-need_locks=$need_locks
-
-# Do we need the lib prefix for modules?
-need_lib_prefix=$need_lib_prefix
-
-# Do we need a version for libraries?
-need_version=$need_version
-
-# Whether dlopen is supported.
-dlopen=$enable_dlopen
-
-# Whether dlopen of programs is supported.
-dlopen_self=$enable_dlopen_self
-
-# Whether dlopen of statically linked programs is supported.
-dlopen_self_static=$enable_dlopen_self_static
-
-# Compiler flag to prevent dynamic linking.
-link_static_flag=$link_static_flag
-
-# Compiler flag to turn off builtin functions.
-no_builtin_flag=$no_builtin_flag
-
-# Compiler flag to allow reflexive dlopens.
-export_dynamic_flag_spec=$export_dynamic_flag_spec
-
-# Compiler flag to generate shared objects directly from archives.
-whole_archive_flag_spec=$whole_archive_flag_spec
-
-# Compiler flag to generate thread-safe objects.
-thread_safe_flag_spec=$thread_safe_flag_spec
-
-# Library versioning type.
-version_type=$version_type
-
-# Format of library name prefix.
-libname_spec=$libname_spec
-
-# List of archive names.  First name is the real one, the rest are links.
-# The last name is the one that the linker finds with -lNAME.
-library_names_spec=$library_names_spec
-
-# The coded name of the library, if different from the real name.
-soname_spec=$soname_spec
-
-# Commands used to build and install an old-style archive.
-RANLIB=$RANLIB
-old_archive_cmds=$old_archive_cmds
-old_postinstall_cmds=$old_postinstall_cmds
-old_postuninstall_cmds=$old_postuninstall_cmds
-
-# Create an old-style archive from a shared archive.
-old_archive_from_new_cmds=$old_archive_from_new_cmds
-
-# Commands used to build and install a shared archive.
-archive_cmds=$archive_cmds
-archive_expsym_cmds=$archive_expsym_cmds
-postinstall_cmds=$postinstall_cmds
-postuninstall_cmds=$postuninstall_cmds
-
-# Method to check whether dependent libraries are shared objects.
-deplibs_check_method=$deplibs_check_method
-
-# Command to use when deplibs_check_method == file_magic.
-file_magic_cmd=$file_magic_cmd
-
-# Flag that allows shared libraries with undefined symbols to be built.
-allow_undefined_flag=$allow_undefined_flag
-
-# Flag that forces no undefined symbols.
-no_undefined_flag=$no_undefined_flag
-
-# Commands used to finish a libtool library installation in a directory.
-finish_cmds=$finish_cmds
-
-# Same as above, but a single script fragment to be evaled but not shown.
-finish_eval=$finish_eval
-
-# Take the output of nm and produce a listing of raw symbols and C names.
-global_symbol_pipe=$global_symbol_pipe
-
-# Transform the output of nm in a proper C declaration
-global_symbol_to_cdecl=$global_symbol_to_cdecl
-
-# This is the shared library runtime path variable.
-runpath_var=$runpath_var
-
-# This is the shared library path variable.
-shlibpath_var=$shlibpath_var
-
-# Is shlibpath searched before the hard-coded library search path?
-shlibpath_overrides_runpath=$shlibpath_overrides_runpath
-
-# How to hardcode a shared library path into an executable.
-hardcode_action=$hardcode_action
-
-# Flag to hardcode \$libdir into a binary during linking.
-# This must work even if \$libdir does not exist.
-hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec
-
-# Whether we need a single -rpath flag with a separated argument.
-hardcode_libdir_separator=$hardcode_libdir_separator
-
-# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-# resulting binary.
-hardcode_direct=$hardcode_direct
-
-# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-# resulting binary.
-hardcode_minus_L=$hardcode_minus_L
-
-# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
-# the resulting binary.
-hardcode_shlibpath_var=$hardcode_shlibpath_var
-
-# Compile-time system search path for libraries
-sys_lib_search_path_spec=$sys_lib_search_path_spec
-
-# Run-time system search path for libraries
-sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec
-
-# Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path"
-
-# Set to yes if exported symbols are required.
-always_export_symbols=$always_export_symbols
-
-# The commands to list exported symbols.
-export_symbols_cmds=$export_symbols_cmds
-
-# Symbols that should not be listed in the preloaded symbols.
-exclude_expsyms=$exclude_expsyms
-
-# Symbols that must always be exported.
-include_expsyms=$include_expsyms
-
-EOF
-
-case "$ltmain" in
-*.sh)
-  echo '### END LIBTOOL CONFIG' >> "$ofile"
-  echo >> "$ofile"
-  case "$host_os" in
-  aix3*)
-    cat <<\EOF >> "$ofile"
-
-# AIX sometimes has problems with the GCC collect2 program.  For some
-# reason, if we set the COLLECT_NAMES environment variable, the problems
-# vanish in a puff of smoke.
-if test "X${COLLECT_NAMES+set}" != Xset; then
-  COLLECT_NAMES=
-  export COLLECT_NAMES
-fi
-EOF
-    ;;
-  esac
-
-  # Append the ltmain.sh script.
-  sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
-  # We use sed instead of cat because bash on DJGPP gets confused if
-  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
-  # text mode, it properly converts lines to CR/LF.  This bash problem
-  # is reportedly fixed, but why not run on old versions too?
-
-  chmod +x "$ofile"
-  ;;
-
-*)
-  # Compile the libtool program.
-  echo "FIXME: would compile $ltmain"
-  ;;
-esac
-
-test -n "$cache_file" || exit 0
-
-# AC_CACHE_SAVE
-trap '' 1 2 15
-cat > confcache <<\EOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs.  It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
-#
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already.  You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
-#
-EOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
-  case `(ac_space=' '; set | grep ac_space) 2>&1` in
-  *ac_space=\ *)
-    # `set' does not quote correctly, so add quotes (double-quote substitution
-    # turns \\\\ into \\, and sed turns \\ into \).
-    sed -n \
-      -e "s/'/'\\\\''/g" \
-      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
-    ;;
-  *)
-    # `set' quotes correctly as required by POSIX, so do not add quotes.
-    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
-    ;;
-  esac >> confcache
-if cmp -s $cache_file confcache; then
-  :
-else
-  if test -w $cache_file; then
-    echo "updating cache $cache_file"
-    cat confcache > $cache_file
-  else
-    echo "not updating unwritable cache $cache_file"
-  fi
-fi
-rm -f confcache
-
-exit 0
-
-# Local Variables:
-# mode:shell-script
-# sh-indentation:2
-# End:
index a9b7a671e591aa844ae04d8cab599a8332847eb6..c9635a41d42500597dad913c211559996d022e40 100644 (file)
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -1,7 +1,8 @@
 # ltmain.sh - Provide generalized library-building support services.
-# NOTE: Changing this file will not affect anything until you rerun ltconfig.
+# NOTE: Changing this file will not affect anything until you rerun configure.
 #
-# Copyright (C) 1996-1999 Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
+# Free Software Foundation, Inc.
 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 #
 # This program is free software; you can redistribute it and/or modify
@@ -54,8 +55,8 @@ modename="$progname"
 # Constants.
 PROGRAM=ltmain.sh
 PACKAGE=libtool
-VERSION=1.3.5
-TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)"
+VERSION=1.4.2
+TIMESTAMP=" (1.922.2.53 2001/09/11 03:18:52)"
 
 default_mode=
 help="Try \`$progname --help' for more information."
@@ -83,11 +84,8 @@ if test "${LANG+set}" = set; then
   save_LANG="$LANG"; LANG=C; export LANG
 fi
 
-if test "$LTCONFIG_VERSION" != "$VERSION"; then
-  echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2
-  echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2
-  exit 1
-fi
+# Make sure IFS has a sensible default
+: ${IFS="      "}
 
 if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then
   echo "$modename: not configured to build any kind of library" 1>&2
@@ -113,16 +111,16 @@ do
   arg="$1"
   shift
 
-  case "$arg" in
+  case $arg in
   -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;;
   *) optarg= ;;
   esac
 
   # If the previous option needs an argument, assign it.
   if test -n "$prev"; then
-    case "$prev" in
+    case $prev in
     execute_dlfiles)
-      eval "$prev=\"\$$prev \$arg\""
+      execute_dlfiles="$execute_dlfiles $arg"
       ;;
     *)
       eval "$prev=\$arg"
@@ -135,7 +133,7 @@ do
   fi
 
   # Have we seen a non-optional argument yet?
-  case "$arg" in
+  case $arg in
   --help)
     show_help=yes
     ;;
@@ -146,7 +144,7 @@ do
     ;;
 
   --config)
-    sed -e '1,/^### BEGIN LIBTOOL CONFIG/d' -e '/^### END LIBTOOL CONFIG/,$d' $0
+    sed -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0
     exit 0
     ;;
 
@@ -207,16 +205,21 @@ if test -n "$prevopt"; then
   exit 1
 fi
 
+# If this variable is set in any of the actions, the command in it
+# will be execed at the end.  This prevents here-documents from being
+# left over by shells.
+exec_cmd=
+
 if test -z "$show_help"; then
 
   # Infer the operation mode.
   if test -z "$mode"; then
-    case "$nonopt" in
+    case $nonopt in
     *cc | *++ | gcc* | *-gcc*)
       mode=link
       for arg
       do
-       case "$arg" in
+       case $arg in
        -c)
           mode=compile
           break
@@ -261,12 +264,13 @@ if test -z "$show_help"; then
   help="Try \`$modename --help --mode=$mode' for more information."
 
   # These modes are in order of execution frequency so that they run quickly.
-  case "$mode" in
+  case $mode in
   # libtool compile mode
   compile)
     modename="$modename: compile"
     # Get the compilation command and the source file.
     base_compile=
+    prev=
     lastarg=
     srcfile="$nonopt"
     suppress_output=
@@ -274,8 +278,34 @@ if test -z "$show_help"; then
     user_target=no
     for arg
     do
+      case $prev in
+      "") ;;
+      xcompiler)
+       # Aesthetically quote the previous argument.
+       prev=
+       lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
+
+       case $arg in
+       # Double-quote args containing other shell metacharacters.
+       # Many Bourne shells cannot handle close brackets correctly
+       # in scan sets, so we specify it separately.
+       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \   ]*|*]*|"")
+         arg="\"$arg\""
+         ;;
+       esac
+
+       # Add the previous argument to base_compile.
+       if test -z "$base_compile"; then
+         base_compile="$lastarg"
+       else
+         base_compile="$base_compile $lastarg"
+       fi
+       continue
+       ;;
+      esac
+
       # Accept any command-line options.
-      case "$arg" in
+      case $arg in
       -o)
        if test "$user_target" != "no"; then
          $echo "$modename: you cannot specify \`-o' more than once" 1>&2
@@ -288,9 +318,53 @@ if test -z "$show_help"; then
        build_old_libs=yes
        continue
        ;;
+
+      -prefer-pic)
+       pic_mode=yes
+       continue
+       ;;
+
+      -prefer-non-pic)
+       pic_mode=no
+       continue
+       ;;
+
+      -Xcompiler)
+       prev=xcompiler
+       continue
+       ;;
+
+      -Wc,*)
+       args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"`
+       lastarg=
+       save_ifs="$IFS"; IFS=','
+       for arg in $args; do
+         IFS="$save_ifs"
+
+         # Double-quote args containing other shell metacharacters.
+         # Many Bourne shells cannot handle close brackets correctly
+         # in scan sets, so we specify it separately.
+         case $arg in
+           *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \       ]*|*]*|"")
+           arg="\"$arg\""
+           ;;
+         esac
+         lastarg="$lastarg $arg"
+       done
+       IFS="$save_ifs"
+       lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"`
+
+       # Add the arguments to base_compile.
+       if test -z "$base_compile"; then
+         base_compile="$lastarg"
+       else
+         base_compile="$base_compile $lastarg"
+       fi
+       continue
+       ;;
       esac
 
-      case "$user_target" in
+      case $user_target in
       next)
        # The next one is the -o target name
        user_target=yes
@@ -316,10 +390,10 @@ if test -z "$show_help"; then
       lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"`
 
       # Double-quote args containing other shell metacharacters.
-      # Many Bourne shells cannot handle close brackets correctly in scan
-      # sets, so we specify it separately.
-      case "$lastarg" in
-      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*)
+      # Many Bourne shells cannot handle close brackets correctly
+      # in scan sets, so we specify it separately.
+      case $lastarg in
+      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
        lastarg="\"$lastarg\""
        ;;
       esac
@@ -332,7 +406,7 @@ if test -z "$show_help"; then
       fi
     done
 
-    case "$user_target" in
+    case $user_target in
     set)
       ;;
     no)
@@ -348,7 +422,7 @@ if test -z "$show_help"; then
     # Recognize several different file suffixes.
     # If the user specifies -o file.o, it is replaced with file.lo
     xform='[cCFSfmso]'
-    case "$libobj" in
+    case $libobj in
     *.ada) xform=ada ;;
     *.adb) xform=adb ;;
     *.ads) xform=ads ;;
@@ -363,7 +437,7 @@ if test -z "$show_help"; then
 
     libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"`
 
-    case "$libobj" in
+    case $libobj in
     *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;;
     *)
       $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2
@@ -387,10 +461,21 @@ if test -z "$show_help"; then
     $run $rm $removelist
     trap "$run $rm $removelist; exit 1" 1 2 15
 
+    # On Cygwin there's no "real" PIC flag so we must build both object types
+    case $host_os in
+    cygwin* | mingw* | pw32* | os2*)
+      pic_mode=default
+      ;;
+    esac
+    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then
+      # non-PIC code in shared libraries is not supported
+      pic_mode=default
+    fi
+
     # Calculate the filename of the output object if compiler does
     # not support -o with -c
     if test "$compiler_c_o" = no; then
-      output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\..*$%%'`.${objext}
+      output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}
       lockfile="$output_obj.lock"
       removelist="$removelist $output_obj $lockfile"
       trap "$run $rm $removelist; exit 1" 1 2 15
@@ -402,7 +487,7 @@ if test -z "$show_help"; then
     # Lock this critical section if it is needed
     # We use this script file to make the link, it avoids creating a new file
     if test "$need_locks" = yes; then
-      until ln "$0" "$lockfile" 2>/dev/null; do
+      until $run ln "$0" "$lockfile" 2>/dev/null; do
        $show "Waiting for $lockfile to be removed"
        sleep 2
       done
@@ -434,8 +519,13 @@ compiler."
       # Without this assignment, base_compile gets emptied.
       fbsd_hideous_sh_bug=$base_compile
 
-      # All platforms use -DPIC, to notify preprocessed assembler code.
-      command="$base_compile $srcfile $pic_flag -DPIC"
+      if test "$pic_mode" != no; then
+       # All platforms use -DPIC, to notify preprocessed assembler code.
+       command="$base_compile $srcfile $pic_flag -DPIC"
+      else
+       # Don't build PIC code
+       command="$base_compile $srcfile"
+      fi
       if test "$build_old_libs" = yes; then
        lo_libobj="$libobj"
        dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
@@ -506,7 +596,8 @@ compiler."
       fi
 
       # If we have no pic_flag, then copy the object into place and finish.
-      if test -z "$pic_flag" && test "$build_old_libs" = yes; then
+      if (test -z "$pic_flag" || test "$pic_mode" != default) &&
+        test "$build_old_libs" = yes; then
        # Rename the .lo from within objdir to obj
        if test -f $obj; then
          $show $rm $obj
@@ -532,6 +623,10 @@ compiler."
        # Now arrange that obj and lo_libobj become the same file
        $show "(cd $xdir && $LN_S $baseobj $libobj)"
        if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
+         # Unlock the critical section if it was locked
+         if test "$need_locks" != no; then
+           $run $rm "$lockfile"
+         fi
          exit 0
        else
          error=$?
@@ -546,7 +641,13 @@ compiler."
 
     # Only build a position-dependent object if we build old libraries.
     if test "$build_old_libs" = yes; then
-      command="$base_compile $srcfile"
+      if test "$pic_mode" != yes; then
+       # Don't build PIC code
+       command="$base_compile $srcfile"
+      else
+       # All platforms use -DPIC, to notify preprocessed assembler code.
+       command="$base_compile $srcfile $pic_flag -DPIC"
+      fi
       if test "$compiler_c_o" = yes; then
        command="$command -o $obj"
        output_obj="$obj"
@@ -612,17 +713,17 @@ compiler."
 
     # Unlock the critical section if it was locked
     if test "$need_locks" != no; then
-      $rm "$lockfile"
+      $run $rm "$lockfile"
     fi
 
     exit 0
     ;;
 
   # libtool link mode
-  link)
+  link | relink)
     modename="$modename: link"
-    case "$host" in
-    *-*-cygwin* | *-*-mingw* | *-*-os2*)
+    case $host in
+    *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
       # It is impossible to link a dll without this setting, and
       # we shouldn't force the makefile maintainer to figure out
       # which system we are compiling for in order to pass an extra
@@ -635,179 +736,12 @@ compiler."
       # -no-undefined on the libtool link line when we can be certain
       # that all symbols are satisfied, otherwise we get a static library.
       allow_undefined=yes
-
-      # This is a source program that is used to create dlls on Windows
-      # Don't remove nor modify the starting and closing comments
-# /* ltdll.c starts here */
-# #define WIN32_LEAN_AND_MEAN
-# #include <windows.h>
-# #undef WIN32_LEAN_AND_MEAN
-# #include <stdio.h>
-#
-# #ifndef __CYGWIN__
-# #  ifdef __CYGWIN32__
-# #    define __CYGWIN__ __CYGWIN32__
-# #  endif
-# #endif
-#
-# #ifdef __cplusplus
-# extern "C" {
-# #endif
-# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
-# #ifdef __cplusplus
-# }
-# #endif
-#
-# #ifdef __CYGWIN__
-# #include <cygwin/cygwin_dll.h>
-# DECLARE_CYGWIN_DLL( DllMain );
-# #endif
-# HINSTANCE __hDllInstance_base;
-#
-# BOOL APIENTRY
-# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
-# {
-#   __hDllInstance_base = hInst;
-#   return TRUE;
-# }
-# /* ltdll.c ends here */
-      # This is a source program that is used to create import libraries
-      # on Windows for dlls which lack them. Don't remove nor modify the
-      # starting and closing comments
-# /* impgen.c starts here */
-# /*   Copyright (C) 1999 Free Software Foundation, Inc.
-# 
-#  This file is part of GNU libtool.
-# 
-#  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.
-#  */
-# 
-#  #include <stdio.h>          /* for printf() */
-#  #include <unistd.h>         /* for open(), lseek(), read() */
-#  #include <fcntl.h>          /* for O_RDONLY, O_BINARY */
-#  #include <string.h>         /* for strdup() */
-# 
-#  static unsigned int
-#  pe_get16 (fd, offset)
-#       int fd;
-#       int offset;
-#  {
-#    unsigned char b[2];
-#    lseek (fd, offset, SEEK_SET);
-#    read (fd, b, 2);
-#    return b[0] + (b[1]<<8);
-#  }
-# 
-#  static unsigned int
-#  pe_get32 (fd, offset)
-#      int fd;
-#      int offset;
-#  {
-#    unsigned char b[4];
-#    lseek (fd, offset, SEEK_SET);
-#    read (fd, b, 4);
-#    return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-#  }
-# 
-#  static unsigned int
-#  pe_as32 (ptr)
-#       void *ptr;
-#  {
-#    unsigned char *b = ptr;
-#    return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
-#  }
-# 
-#  int
-#  main (argc, argv)
-#      int argc;
-#      char *argv[];
-#  {
-#      int dll;
-#      unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
-#      unsigned long export_rva, export_size, nsections, secptr, expptr;
-#      unsigned long name_rvas, nexp;
-#      unsigned char *expdata, *erva;
-#      char *filename, *dll_name;
-# 
-#      filename = argv[1];
-# 
-#      dll = open(filename, O_RDONLY|O_BINARY);
-#      if (!dll)
-#      return 1;
-# 
-#      dll_name = filename;
-#    
-#      for (i=0; filename[i]; i++)
-#      if (filename[i] == '/' || filename[i] == '\\'  || filename[i] == ':')
-#          dll_name = filename + i +1;
-# 
-#      pe_header_offset = pe_get32 (dll, 0x3c);
-#      opthdr_ofs = pe_header_offset + 4 + 20;
-#      num_entries = pe_get32 (dll, opthdr_ofs + 92);
-# 
-#      if (num_entries < 1) /* no exports */
-#      return 1;
-# 
-#      export_rva = pe_get32 (dll, opthdr_ofs + 96);
-#      export_size = pe_get32 (dll, opthdr_ofs + 100);
-#      nsections = pe_get16 (dll, pe_header_offset + 4 +2);
-#      secptr = (pe_header_offset + 4 + 20 +
-#            pe_get16 (dll, pe_header_offset + 4 + 16));
-# 
-#      expptr = 0;
-#      for (i = 0; i < nsections; i++)
-#      {
-#      char sname[8];
-#      unsigned long secptr1 = secptr + 40 * i;
-#      unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
-#      unsigned long vsize = pe_get32 (dll, secptr1 + 16);
-#      unsigned long fptr = pe_get32 (dll, secptr1 + 20);
-#      lseek(dll, secptr1, SEEK_SET);
-#      read(dll, sname, 8);
-#      if (vaddr <= export_rva && vaddr+vsize > export_rva)
-#      {
-#          expptr = fptr + (export_rva - vaddr);
-#          if (export_rva + export_size > vaddr + vsize)
-#              export_size = vsize - (export_rva - vaddr);
-#          break;
-#      }
-#      }
-# 
-#      expdata = (unsigned char*)malloc(export_size);
-#      lseek (dll, expptr, SEEK_SET);
-#      read (dll, expdata, export_size);
-#      erva = expdata - export_rva;
-# 
-#      nexp = pe_as32 (expdata+24);
-#      name_rvas = pe_as32 (expdata+32);
-# 
-#      printf ("EXPORTS\n");
-#      for (i = 0; i<nexp; i++)
-#      {
-#      unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
-#      printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
-#      }
-# 
-#      return 0;
-#  }
-# /* impgen.c ends here */
       ;;
     *)
       allow_undefined=yes
       ;;
     esac
+    libtool_args="$nonopt"
     compile_command="$nonopt"
     finalize_command="$nonopt"
 
@@ -818,18 +752,12 @@ compiler."
     convenience=
     old_convenience=
     deplibs=
-    linkopts=
+    old_deplibs=
+    compiler_flags=
+    linker_flags=
+    dllsearchpath=
+    lib_search_path=`pwd`
 
-    if test -n "$shlibpath_var"; then
-      # get the directories listed in $shlibpath_var
-      eval lib_search_path=\`\$echo \"X \${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
-    else
-      lib_search_path=
-    fi
-    # now prepend the system-specific ones
-    eval lib_search_path=\"$sys_lib_search_path_spec\$lib_search_path\"
-    eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
-    
     avoid_version=no
     dlfiles=
     dlprefiles=
@@ -839,9 +767,9 @@ compiler."
     export_symbols_regex=
     generated=
     libobjs=
-    link_against_libtool_libs=
     ltlibs=
     module=no
+    no_install=no
     objs=
     prefer_static_libs=no
     preload=no
@@ -858,7 +786,7 @@ compiler."
     # We need to know -static, to get the right output filenames.
     for arg
     do
-      case "$arg" in
+      case $arg in
       -all-static | -static)
        if test "X$arg" = "X-all-static"; then
          if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
@@ -887,17 +815,24 @@ compiler."
     while test $# -gt 0; do
       arg="$1"
       shift
+      case $arg in
+      *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*|"")
+       qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test
+       ;;
+      *) qarg=$arg ;;
+      esac
+      libtool_args="$libtool_args $qarg"
 
       # If the previous option needs an argument, assign it.
       if test -n "$prev"; then
-       case "$prev" in
+       case $prev in
        output)
          compile_command="$compile_command @OUTPUT@"
          finalize_command="$finalize_command @OUTPUT@"
          ;;
        esac
 
-       case "$prev" in
+       case $prev in
        dlfiles|dlprefiles)
          if test "$preload" = no; then
            # Add the symbol object into the linking commands.
@@ -905,7 +840,7 @@ compiler."
            finalize_command="$finalize_command @SYMFILE@"
            preload=yes
          fi
-         case "$arg" in
+         case $arg in
          *.la | *.lo) ;;  # We handle these cases below.
          force)
            if test "$dlself" = no; then
@@ -934,6 +869,7 @@ compiler."
              dlprefiles="$dlprefiles $arg"
            fi
            prev=
+           continue
            ;;
          esac
          ;;
@@ -958,7 +894,7 @@ compiler."
          ;;
        rpath | xrpath)
          # We need an absolute path.
-         case "$arg" in
+         case $arg in
          [\\/]* | [A-Za-z]:[\\/]*) ;;
          *)
            $echo "$modename: only absolute run-paths are allowed" 1>&2
@@ -979,17 +915,32 @@ compiler."
          prev=
          continue
          ;;
+       xcompiler)
+         compiler_flags="$compiler_flags $qarg"
+         prev=
+         compile_command="$compile_command $qarg"
+         finalize_command="$finalize_command $qarg"
+         continue
+         ;;
+       xlinker)
+         linker_flags="$linker_flags $qarg"
+         compiler_flags="$compiler_flags $wl$qarg"
+         prev=
+         compile_command="$compile_command $wl$qarg"
+         finalize_command="$finalize_command $wl$qarg"
+         continue
+         ;;
        *)
          eval "$prev=\"\$arg\""
          prev=
          continue
          ;;
        esac
-      fi
+      fi # test -n $prev
 
       prevarg="$arg"
 
-      case "$arg" in
+      case $arg in
       -all-static)
        if test -n "$link_static_flag"; then
          compile_command="$compile_command $link_static_flag"
@@ -1026,7 +977,7 @@ compiler."
 
       -export-symbols | -export-symbols-regex)
        if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
-         $echo "$modename: not more than one -exported-symbols argument allowed"
+         $echo "$modename: more than one -exported-symbols argument is not allowed"
          exit 1
        fi
        if test "X$arg" = "X-export-symbols"; then
@@ -1037,58 +988,76 @@ compiler."
        continue
        ;;
 
+      # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
+      # so, if we see these flags be careful not to treat them like -L
+      -L[A-Z][A-Z]*:*)
+       case $with_gcc/$host in
+       no/*-*-irix*)
+         compile_command="$compile_command $arg"
+         finalize_command="$finalize_command $arg"
+         ;;
+       esac
+       continue
+       ;;
+
       -L*)
        dir=`$echo "X$arg" | $Xsed -e 's/^-L//'`
        # We need an absolute path.
-       case "$dir" in
+       case $dir in
        [\\/]* | [A-Za-z]:[\\/]*) ;;
        *)
          absdir=`cd "$dir" && pwd`
          if test -z "$absdir"; then
-           $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-           $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-           absdir="$dir"
+           $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
+           exit 1
          fi
          dir="$absdir"
          ;;
        esac
-       case " $deplibs " in
-       *" $arg "*) ;;
-       *) deplibs="$deplibs $arg";;
-       esac
-       case " $lib_search_path " in
-       *" $dir "*) ;;
-       *) lib_search_path="$lib_search_path $dir";;
+       case "$deplibs " in
+       *" -L$dir "*) ;;
+       *)
+         deplibs="$deplibs -L$dir"
+         lib_search_path="$lib_search_path $dir"
+         ;;
        esac
-       case "$host" in
-       *-*-cygwin* | *-*-mingw* | *-*-os2*)
-         dllsearchdir=`cd "$dir" && pwd || echo "$dir"`
-         case ":$dllsearchpath:" in
-         ::) dllsearchpath="$dllsearchdir";;
-         *":$dllsearchdir:"*) ;;
-         *) dllsearchpath="$dllsearchpath:$dllsearchdir";;
+       case $host in
+       *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+         case :$dllsearchpath: in
+         *":$dir:"*) ;;
+         *) dllsearchpath="$dllsearchpath:$dir";;
          esac
          ;;
        esac
+       continue
        ;;
 
       -l*)
-       if test "$arg" = "-lc"; then
-         case "$host" in
-         *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
-           # These systems don't actually have c library (as such)
+       if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then
+         case $host in
+         *-*-cygwin* | *-*-pw32* | *-*-beos*)
+           # These systems don't actually have a C or math library (as such)
            continue
            ;;
+         *-*-mingw* | *-*-os2*)
+           # These systems don't actually have a C library (as such)
+           test "X$arg" = "X-lc" && continue
+           ;;
+         *-*-openbsd*)
+           # Do not include libc due to us having libc/libc_r.
+           test "X$arg" = "X-lc" && continue
+           ;;
          esac
-       elif test "$arg" = "-lm"; then
-         case "$host" in
-         *-*-cygwin* | *-*-beos*)
-           # These systems don't actually have math library (as such)
+        elif test "X$arg" = "X-lc_r"; then
+         case $host in
+         *-*-openbsd*)
+           # Do not include libc_r directly, use -pthread flag.
            continue
            ;;
          esac
        fi
        deplibs="$deplibs $arg"
+       continue
        ;;
 
       -module)
@@ -1096,6 +1065,25 @@ compiler."
        continue
        ;;
 
+      -no-fast-install)
+       fast_install=no
+       continue
+       ;;
+
+      -no-install)
+       case $host in
+       *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+         # The PATH hackery in wrapper scripts is required on Windows
+         # in order for the loader to find any dlls it needs.
+         $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
+         $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
+         fast_install=no
+         ;;
+       *) no_install=yes ;;
+       esac
+       continue
+       ;;
+
       -no-undefined)
        allow_undefined=no
        continue
@@ -1121,7 +1109,7 @@ compiler."
       -R*)
        dir=`$echo "X$arg" | $Xsed -e 's/^-R//'`
        # We need an absolute path.
-       case "$dir" in
+       case $dir in
        [\\/]* | [A-Za-z]:[\\/]*) ;;
        *)
          $echo "$modename: only absolute run-paths are allowed" 1>&2
@@ -1136,11 +1124,11 @@ compiler."
        ;;
 
       -static)
-       # If we have no pic_flag, then this is the same as -all-static.
-       if test -z "$pic_flag" && test -n "$link_static_flag"; then
-         compile_command="$compile_command $link_static_flag"
-         finalize_command="$finalize_command $link_static_flag"
-       fi
+       # The effects of -static are defined in a previous loop.
+       # We used to do the same as -all-static on platforms that
+       # didn't have a PIC flag, but the assumption that the effects
+       # would be equivalent was wrong.  It would break on at least
+       # Digital Unix and AIX.
        continue
        ;;
 
@@ -1154,28 +1142,71 @@ compiler."
        continue
        ;;
 
+      -Wc,*)
+       args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'`
+       arg=
+       save_ifs="$IFS"; IFS=','
+       for flag in $args; do
+         IFS="$save_ifs"
+         case $flag in
+           *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \       ]*|*]*|"")
+           flag="\"$flag\""
+           ;;
+         esac
+         arg="$arg $wl$flag"
+         compiler_flags="$compiler_flags $flag"
+       done
+       IFS="$save_ifs"
+       arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
+       ;;
+
+      -Wl,*)
+       args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'`
+       arg=
+       save_ifs="$IFS"; IFS=','
+       for flag in $args; do
+         IFS="$save_ifs"
+         case $flag in
+           *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \       ]*|*]*|"")
+           flag="\"$flag\""
+           ;;
+         esac
+         arg="$arg $wl$flag"
+         compiler_flags="$compiler_flags $wl$flag"
+         linker_flags="$linker_flags $flag"
+       done
+       IFS="$save_ifs"
+       arg=`$echo "X$arg" | $Xsed -e "s/^ //"`
+       ;;
+
+      -Xcompiler)
+       prev=xcompiler
+       continue
+       ;;
+
+      -Xlinker)
+       prev=xlinker
+       continue
+       ;;
+
       # Some other compiler flag.
       -* | +*)
        # Unknown arguments in both finalize_command and compile_command need
        # to be aesthetically quoted because they are evaled later.
        arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-       case "$arg" in
-       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \   ]*|*]*)
+       case $arg in
+       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \   ]*|*]*|"")
          arg="\"$arg\""
          ;;
        esac
        ;;
 
-      *.o | *.obj | *.a | *.lib)
-       # A standard object.
-       objs="$objs $arg"
-       ;;
-
-      *.lo)
-       # A library object.
+      *.lo | *.$objext)
+       # A library or standard object.
        if test "$prev" = dlfiles; then
-         dlfiles="$dlfiles $arg"
-         if test "$build_libtool_libs" = yes && test "$dlopen" = yes; then
+         # This file was specified with -dlopen.
+         if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then
+           dlfiles="$dlfiles $arg"
            prev=
            continue
          else
@@ -1188,357 +1219,890 @@ compiler."
          # Preload the old-style object.
          dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"`
          prev=
+       else
+         case $arg in
+         *.lo) libobjs="$libobjs $arg" ;;
+         *) objs="$objs $arg" ;;
+         esac
        fi
-       libobjs="$libobjs $arg"
+       ;;
+
+      *.$libext)
+       # An archive.
+       deplibs="$deplibs $arg"
+       old_deplibs="$old_deplibs $arg"
+       continue
        ;;
 
       *.la)
        # A libtool-controlled library.
 
-       dlname=
-       libdir=
-       library_names=
-       old_library=
+       if test "$prev" = dlfiles; then
+         # This library was specified with -dlopen.
+         dlfiles="$dlfiles $arg"
+         prev=
+       elif test "$prev" = dlprefiles; then
+         # The library was specified with -dlpreopen.
+         dlprefiles="$dlprefiles $arg"
+         prev=
+       else
+         deplibs="$deplibs $arg"
+       fi
+       continue
+       ;;
+
+      # Some other compiler argument.
+      *)
+       # Unknown arguments in both finalize_command and compile_command need
+       # to be aesthetically quoted because they are evaled later.
+       arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
+       case $arg in
+       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \   ]*|*]*|"")
+         arg="\"$arg\""
+         ;;
+       esac
+       ;;
+      esac # arg
+
+      # Now actually substitute the argument into the commands.
+      if test -n "$arg"; then
+       compile_command="$compile_command $arg"
+       finalize_command="$finalize_command $arg"
+      fi
+    done # argument parsing loop
+
+    if test -n "$prev"; then
+      $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
+      $echo "$help" 1>&2
+      exit 1
+    fi
+
+    if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
+      eval arg=\"$export_dynamic_flag_spec\"
+      compile_command="$compile_command $arg"
+      finalize_command="$finalize_command $arg"
+    fi
+
+    # calculate the name of the file, without its directory
+    outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
+    libobjs_save="$libobjs"
+
+    if test -n "$shlibpath_var"; then
+      # get the directories listed in $shlibpath_var
+      eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`
+    else
+      shlib_search_path=
+    fi
+    eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
+    eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
+
+    output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
+    if test "X$output_objdir" = "X$output"; then
+      output_objdir="$objdir"
+    else
+      output_objdir="$output_objdir/$objdir"
+    fi
+    # Create the object directory.
+    if test ! -d $output_objdir; then
+      $show "$mkdir $output_objdir"
+      $run $mkdir $output_objdir
+      status=$?
+      if test $status -ne 0 && test ! -d $output_objdir; then
+       exit $status
+      fi
+    fi
+
+    # Determine the type of output
+    case $output in
+    "")
+      $echo "$modename: you must specify an output file" 1>&2
+      $echo "$help" 1>&2
+      exit 1
+      ;;
+    *.$libext) linkmode=oldlib ;;
+    *.lo | *.$objext) linkmode=obj ;;
+    *.la) linkmode=lib ;;
+    *) linkmode=prog ;; # Anything else should be a program.
+    esac
+
+    specialdeplibs=
+    libs=
+    # Find all interdependent deplibs by searching for libraries
+    # that are linked more than once (e.g. -la -lb -la)
+    for deplib in $deplibs; do
+      case "$libs " in
+      *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+      esac
+      libs="$libs $deplib"
+    done
+    deplibs=
+    newdependency_libs=
+    newlib_search_path=
+    need_relink=no # whether we're linking any uninstalled libtool libraries
+    notinst_deplibs= # not-installed libtool libraries
+    notinst_path= # paths that contain not-installed libtool libraries
+    case $linkmode in
+    lib)
+       passes="conv link"
+       for file in $dlfiles $dlprefiles; do
+         case $file in
+         *.la) ;;
+         *)
+           $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2
+           exit 1
+           ;;
+         esac
+       done
+       ;;
+    prog)
+       compile_deplibs=
+       finalize_deplibs=
+       alldeplibs=no
+       newdlfiles=
+       newdlprefiles=
+       passes="conv scan dlopen dlpreopen link"
+       ;;
+    *)  passes="conv"
+       ;;
+    esac
+    for pass in $passes; do
+      if test "$linkmode" = prog; then
+       # Determine which files to process
+       case $pass in
+       dlopen)
+         libs="$dlfiles"
+         save_deplibs="$deplibs" # Collect dlpreopened libraries
+         deplibs=
+         ;;
+       dlpreopen) libs="$dlprefiles" ;;
+       link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+       esac
+      fi
+      for deplib in $libs; do
+       lib=
+       found=no
+       case $deplib in
+       -l*)
+         if test "$linkmode" = oldlib && test "$linkmode" = obj; then
+           $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2
+           continue
+         fi
+         if test "$pass" = conv; then
+           deplibs="$deplib $deplibs"
+           continue
+         fi
+         name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`
+         for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do
+           # Search the libtool library
+           lib="$searchdir/lib${name}.la"
+           if test -f "$lib"; then
+             found=yes
+             break
+           fi
+         done
+         if test "$found" != yes; then
+           # deplib doesn't seem to be a libtool library
+           if test "$linkmode,$pass" = "prog,link"; then
+             compile_deplibs="$deplib $compile_deplibs"
+             finalize_deplibs="$deplib $finalize_deplibs"
+           else
+             deplibs="$deplib $deplibs"
+             test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"
+           fi
+           continue
+         fi
+         ;; # -l
+       -L*)
+         case $linkmode in
+         lib)
+           deplibs="$deplib $deplibs"
+           test "$pass" = conv && continue
+           newdependency_libs="$deplib $newdependency_libs"
+           newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
+           ;;
+         prog)
+           if test "$pass" = conv; then
+             deplibs="$deplib $deplibs"
+             continue
+           fi
+           if test "$pass" = scan; then
+             deplibs="$deplib $deplibs"
+             newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`
+           else
+             compile_deplibs="$deplib $compile_deplibs"
+             finalize_deplibs="$deplib $finalize_deplibs"
+           fi
+           ;;
+         *)
+           $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2
+           ;;
+         esac # linkmode
+         continue
+         ;; # -L
+       -R*)
+         if test "$pass" = link; then
+           dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
+           # Make sure the xrpath contains only unique directories.
+           case "$xrpath " in
+           *" $dir "*) ;;
+           *) xrpath="$xrpath $dir" ;;
+           esac
+         fi
+         deplibs="$deplib $deplibs"
+         continue
+         ;;
+       *.la) lib="$deplib" ;;
+       *.$libext)
+         if test "$pass" = conv; then
+           deplibs="$deplib $deplibs"
+           continue
+         fi
+         case $linkmode in
+         lib)
+           if test "$deplibs_check_method" != pass_all; then
+             echo
+             echo "*** Warning: This library needs some functionality provided by $deplib."
+             echo "*** I have the capability to make that library automatically link in when"
+             echo "*** you link to this library.  But I can only do this if you have a"
+             echo "*** shared version of the library, which you do not appear to have."
+           else
+             echo
+             echo "*** Warning: Linking the shared library $output against the"
+             echo "*** static library $deplib is not portable!"
+             deplibs="$deplib $deplibs"
+           fi
+           continue
+           ;;
+         prog)
+           if test "$pass" != link; then
+             deplibs="$deplib $deplibs"
+           else
+             compile_deplibs="$deplib $compile_deplibs"
+             finalize_deplibs="$deplib $finalize_deplibs"
+           fi
+           continue
+           ;;
+         esac # linkmode
+         ;; # *.$libext
+       *.lo | *.$objext)
+         if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+           # If there is no dlopen support or we're linking statically,
+           # we need to preload.
+           newdlprefiles="$newdlprefiles $deplib"
+           compile_deplibs="$deplib $compile_deplibs"
+           finalize_deplibs="$deplib $finalize_deplibs"
+         else
+           newdlfiles="$newdlfiles $deplib"
+         fi
+         continue
+         ;;
+       %DEPLIBS%)
+         alldeplibs=yes
+         continue
+         ;;
+       esac # case $deplib
+       if test $found = yes || test -f "$lib"; then :
+       else
+         $echo "$modename: cannot find the library \`$lib'" 1>&2
+         exit 1
+       fi
 
        # Check to see that this really is a libtool archive.
-       if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
+       if (sed -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
        else
-         $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2
+         $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
          exit 1
        fi
 
+       ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`
+       test "X$ladir" = "X$lib" && ladir="."
+
+       dlname=
+       dlopen=
+       dlpreopen=
+       libdir=
+       library_names=
+       old_library=
        # If the library was installed with an old release of libtool,
        # it will not redefine variable installed.
        installed=yes
 
        # Read the .la file
-       # If there is no directory component, then add one.
-       case "$arg" in
-       */* | *\\*) . $arg ;;
-       *) . ./$arg ;;
+       case $lib in
+       */* | *\\*) . $lib ;;
+       *) . ./$lib ;;
        esac
 
+       if test "$linkmode,$pass" = "lib,link" ||
+          test "$linkmode,$pass" = "prog,scan" ||
+          { test "$linkmode" = oldlib && test "$linkmode" = obj; }; then
+          # Add dl[pre]opened files of deplib
+         test -n "$dlopen" && dlfiles="$dlfiles $dlopen"
+         test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"
+       fi
+
+       if test "$pass" = conv; then
+         # Only check for convenience libraries
+         deplibs="$lib $deplibs"
+         if test -z "$libdir"; then
+           if test -z "$old_library"; then
+             $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
+             exit 1
+           fi
+           # It is a libtool convenience library, so add in its objects.
+           convenience="$convenience $ladir/$objdir/$old_library"
+           old_convenience="$old_convenience $ladir/$objdir/$old_library"
+           tmp_libs=
+           for deplib in $dependency_libs; do
+             deplibs="$deplib $deplibs"
+             case "$tmp_libs " in
+             *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+             esac
+             tmp_libs="$tmp_libs $deplib"
+           done
+         elif test "$linkmode" != prog && test "$linkmode" != lib; then
+           $echo "$modename: \`$lib' is not a convenience library" 1>&2
+           exit 1
+         fi
+         continue
+       fi # $pass = conv
+
        # Get the name of the library we link against.
        linklib=
        for l in $old_library $library_names; do
          linklib="$l"
        done
-
        if test -z "$linklib"; then
-         $echo "$modename: cannot find name of link library for \`$arg'" 1>&2
+         $echo "$modename: cannot find name of link library for \`$lib'" 1>&2
          exit 1
        fi
 
-       # Find the relevant object directory and library name.
-       name=`$echo "X$arg" | $Xsed -e 's%^.*/%%' -e 's/\.la$//' -e 's/^lib//'`
-
-       if test "X$installed" = Xyes; then
-         dir="$libdir"
-       else
-         dir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
-         if test "X$dir" = "X$arg"; then
-           dir="$objdir"
+       # This library was specified with -dlopen.
+       if test "$pass" = dlopen; then
+         if test -z "$libdir"; then
+           $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2
+           exit 1
+         fi
+         if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then
+           # If there is no dlname, no dlopen support or we're linking
+           # statically, we need to preload.
+           dlprefiles="$dlprefiles $lib"
          else
-           dir="$dir/$objdir"
+           newdlfiles="$newdlfiles $lib"
          fi
-       fi
-
-       if test -n "$dependency_libs"; then
-         # Extract -R and -L from dependency_libs
-         temp_deplibs=
-         for deplib in $dependency_libs; do
-           case "$deplib" in
-           -R*) temp_xrpath=`$echo "X$deplib" | $Xsed -e 's/^-R//'`
-                case " $rpath $xrpath " in
-                *" $temp_xrpath "*) ;;
-                *) xrpath="$xrpath $temp_xrpath";;
-                esac;;
-           -L*) case "$compile_command $temp_deplibs " in
-                *" $deplib "*) ;;
-                *) temp_deplibs="$temp_deplibs $deplib";;
-                esac
-                temp_dir=`$echo "X$deplib" | $Xsed -e 's/^-L//'`
-                case " $lib_search_path " in
-                *" $temp_dir "*) ;;
-                *) lib_search_path="$lib_search_path $temp_dir";;
-                esac
-                ;;
-           *) temp_deplibs="$temp_deplibs $deplib";;
-           esac
-         done
-         dependency_libs="$temp_deplibs"
-       fi
-
-       if test -z "$libdir"; then
-         # It is a libtool convenience library, so add in its objects.
-         convenience="$convenience $dir/$old_library"
-         old_convenience="$old_convenience $dir/$old_library"
-         deplibs="$deplibs$dependency_libs"
-         compile_command="$compile_command $dir/$old_library$dependency_libs"
-         finalize_command="$finalize_command $dir/$old_library$dependency_libs"
          continue
-       fi
+       fi # $pass = dlopen
 
-       # This library was specified with -dlopen.
-       if test "$prev" = dlfiles; then
-         dlfiles="$dlfiles $arg"
-         if test -z "$dlname" || test "$dlopen" != yes || test "$build_libtool_libs" = no; then
-           # If there is no dlname, no dlopen support or we're linking statically,
-           # we need to preload.
-           prev=dlprefiles
-         else
-           # We should not create a dependency on this library, but we
-           # may need any libraries it requires.
-           compile_command="$compile_command$dependency_libs"
-           finalize_command="$finalize_command$dependency_libs"
-           prev=
-           continue
+       # We need an absolute path.
+       case $ladir in
+       [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;
+       *)
+         abs_ladir=`cd "$ladir" && pwd`
+         if test -z "$abs_ladir"; then
+           $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2
+           $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
+           abs_ladir="$ladir"
          fi
-       fi
+         ;;
+       esac
+       laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
 
-       # The library was specified with -dlpreopen.
-       if test "$prev" = dlprefiles; then
+       # Find the relevant object directory and library name.
+       if test "X$installed" = Xyes; then
+         if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
+           $echo "$modename: warning: library \`$lib' was moved." 1>&2
+           dir="$ladir"
+           absdir="$abs_ladir"
+           libdir="$abs_ladir"
+         else
+           dir="$libdir"
+           absdir="$libdir"
+         fi
+       else
+         dir="$ladir/$objdir"
+         absdir="$abs_ladir/$objdir"
+         # Remove this search path later
+         notinst_path="$notinst_path $abs_ladir"
+       fi # $installed = yes
+       name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
+
+       # This library was specified with -dlpreopen.
+       if test "$pass" = dlpreopen; then
+         if test -z "$libdir"; then
+           $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2
+           exit 1
+         fi
          # Prefer using a static library (so that no silly _DYNAMIC symbols
          # are required to link).
          if test -n "$old_library"; then
-           dlprefiles="$dlprefiles $dir/$old_library"
+           newdlprefiles="$newdlprefiles $dir/$old_library"
+         # Otherwise, use the dlname, so that lt_dlopen finds it.
+         elif test -n "$dlname"; then
+           newdlprefiles="$newdlprefiles $dir/$dlname"
          else
-           dlprefiles="$dlprefiles $dir/$linklib"
+           newdlprefiles="$newdlprefiles $dir/$linklib"
          fi
-         prev=
+       fi # $pass = dlpreopen
+
+       if test -z "$libdir"; then
+         # Link the convenience library
+         if test "$linkmode" = lib; then
+           deplibs="$dir/$old_library $deplibs"
+         elif test "$linkmode,$pass" = "prog,link"; then
+           compile_deplibs="$dir/$old_library $compile_deplibs"
+           finalize_deplibs="$dir/$old_library $finalize_deplibs"
+         else
+           deplibs="$lib $deplibs"
+         fi
+         continue
        fi
 
-       if test -n "$library_names" &&
-          { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
-         link_against_libtool_libs="$link_against_libtool_libs $arg"
-         if test -n "$shlibpath_var"; then
-           # Make sure the rpath contains only unique directories.
-           case "$temp_rpath " in
-           *" $dir "*) ;;
-           *) temp_rpath="$temp_rpath $dir" ;;
-           esac
+       if test "$linkmode" = prog && test "$pass" != link; then
+         newlib_search_path="$newlib_search_path $ladir"
+         deplibs="$lib $deplibs"
+
+         linkalldeplibs=no
+         if test "$link_all_deplibs" != no || test -z "$library_names" ||
+            test "$build_libtool_libs" = no; then
+           linkalldeplibs=yes
          fi
 
-         # We need an absolute path.
-         case "$dir" in
-         [\\/] | [A-Za-z]:[\\/]*) absdir="$dir" ;;
-         *)
-           absdir=`cd "$dir" && pwd`
-           if test -z "$absdir"; then
-             $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
-             $echo "$modename: passing it literally to the linker, although it might fail" 1>&2
-             absdir="$dir"
+         tmp_libs=
+         for deplib in $dependency_libs; do
+           case $deplib in
+           -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test
+           esac
+           # Need to link against all dependency_libs?
+           if test $linkalldeplibs = yes; then
+             deplibs="$deplib $deplibs"
+           else
+             # Need to hardcode shared library paths
+             # or/and link against static libraries
+             newdependency_libs="$deplib $newdependency_libs"
            fi
-           ;;
-         esac
-         
-         # This is the magic to use -rpath.
-         # Skip directories that are in the system default run-time
-         # search path, unless they have been requested with -R.
-         case " $sys_lib_dlsearch_path " in
-         *" $absdir "*) ;;
-         *)
-           case "$compile_rpath " in
-           *" $absdir "*) ;;
-           *) compile_rpath="$compile_rpath $absdir" 
+           case "$tmp_libs " in
+           *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
            esac
-           ;;
-         esac
+           tmp_libs="$tmp_libs $deplib"
+         done # for deplib
+         continue
+       fi # $linkmode = prog...
 
-         case " $sys_lib_dlsearch_path " in
-         *" $libdir "*) ;;
-         *)
-           case "$finalize_rpath " in
+       link_static=no # Whether the deplib will be linked statically
+       if test -n "$library_names" &&
+          { test "$prefer_static_libs" = no || test -z "$old_library"; }; then
+         # Link against this shared library
+
+         if test "$linkmode,$pass" = "prog,link" ||
+          { test "$linkmode" = lib && test "$hardcode_into_libs" = yes; }; then
+           # Hardcode the library path.
+           # Skip directories that are in the system default run-time
+           # search path.
+           case " $sys_lib_dlsearch_path " in
+           *" $absdir "*) ;;
+           *)
+             case "$compile_rpath " in
+             *" $absdir "*) ;;
+             *) compile_rpath="$compile_rpath $absdir"
+             esac
+             ;;
+           esac
+           case " $sys_lib_dlsearch_path " in
            *" $libdir "*) ;;
-           *) finalize_rpath="$finalize_rpath $libdir"
+           *)
+             case "$finalize_rpath " in
+             *" $libdir "*) ;;
+             *) finalize_rpath="$finalize_rpath $libdir"
+             esac
+             ;;
            esac
-           ;;
-         esac
+           if test "$linkmode" = prog; then
+             # We need to hardcode the library path
+             if test -n "$shlibpath_var"; then
+               # Make sure the rpath contains only unique directories.
+               case "$temp_rpath " in
+               *" $dir "*) ;;
+               *" $absdir "*) ;;
+               *) temp_rpath="$temp_rpath $dir" ;;
+               esac
+             fi
+           fi
+         fi # $linkmode,$pass = prog,link...
 
-         lib_linked=yes
-         case "$hardcode_action" in
-         immediate | unsupported)
-           if test "$hardcode_direct" = no; then
-             compile_command="$compile_command $dir/$linklib"
-             deplibs="$deplibs $dir/$linklib"
-             case "$host" in
-             *-*-cygwin* | *-*-mingw* | *-*-os2*)
-               dllsearchdir=`cd "$dir" && pwd || echo "$dir"`
-               if test -n "$dllsearchpath"; then
-                 dllsearchpath="$dllsearchpath:$dllsearchdir"
-               else
-                 dllsearchpath="$dllsearchdir"
-               fi
-               ;;
-             esac
-           elif test "$hardcode_minus_L" = no; then
-             case "$host" in
-             *-*-sunos*)
-               compile_shlibpath="$compile_shlibpath$dir:"
+         if test "$alldeplibs" = yes &&
+            { test "$deplibs_check_method" = pass_all ||
+              { test "$build_libtool_libs" = yes &&
+                test -n "$library_names"; }; }; then
+           # We only need to search for static libraries
+           continue
+         fi
+
+         if test "$installed" = no; then
+           notinst_deplibs="$notinst_deplibs $lib"
+           need_relink=yes
+         fi
+
+         if test -n "$old_archive_from_expsyms_cmds"; then
+           # figure out the soname
+           set dummy $library_names
+           realname="$2"
+           shift; shift
+           libname=`eval \\$echo \"$libname_spec\"`
+           # use dlname if we got it. it's perfectly good, no?
+           if test -n "$dlname"; then
+             soname="$dlname"
+           elif test -n "$soname_spec"; then
+             # bleh windows
+             case $host in
+             *cygwin*)
+               major=`expr $current - $age`
+               versuffix="-$major"
                ;;
              esac
-             case "$compile_command " in
-             *" -L$dir "*) ;;
-             *) compile_command="$compile_command -L$dir";;
-             esac
-             compile_command="$compile_command -l$name"
-             deplibs="$deplibs -L$dir -l$name"
-           elif test "$hardcode_shlibpath_var" = no; then
-             case ":$compile_shlibpath:" in
-             *":$dir:"*) ;;
-             *) compile_shlibpath="$compile_shlibpath$dir:";;
+             eval soname=\"$soname_spec\"
+           else
+             soname="$realname"
+           fi
+
+           # Make a new name for the extract_expsyms_cmds to use
+           soroot="$soname"
+           soname=`echo $soroot | sed -e 's/^.*\///'`
+           newlib="libimp-`echo $soname | sed 's/^lib//;s/\.dll$//'`.a"
+
+           # If the library has no export list, then create one now
+           if test -f "$output_objdir/$soname-def"; then :
+           else
+             $show "extracting exported symbol list from \`$soname'"
+             save_ifs="$IFS"; IFS='~'
+             eval cmds=\"$extract_expsyms_cmds\"
+             for cmd in $cmds; do
+               IFS="$save_ifs"
+               $show "$cmd"
+               $run eval "$cmd" || exit $?
+             done
+             IFS="$save_ifs"
+           fi
+
+           # Create $newlib
+           if test -f "$output_objdir/$newlib"; then :; else
+             $show "generating import library for \`$soname'"
+             save_ifs="$IFS"; IFS='~'
+             eval cmds=\"$old_archive_from_expsyms_cmds\"
+             for cmd in $cmds; do
+               IFS="$save_ifs"
+               $show "$cmd"
+               $run eval "$cmd" || exit $?
+             done
+             IFS="$save_ifs"
+           fi
+           # make sure the library variables are pointing to the new library
+           dir=$output_objdir
+           linklib=$newlib
+         fi # test -n $old_archive_from_expsyms_cmds
+
+         if test "$linkmode" = prog || test "$mode" != relink; then
+           add_shlibpath=
+           add_dir=
+           add=
+           lib_linked=yes
+           case $hardcode_action in
+           immediate | unsupported)
+             if test "$hardcode_direct" = no; then
+               add="$dir/$linklib"
+             elif test "$hardcode_minus_L" = no; then
+               case $host in
+               *-*-sunos*) add_shlibpath="$dir" ;;
+               esac
+               add_dir="-L$dir"
+               add="-l$name"
+             elif test "$hardcode_shlibpath_var" = no; then
+               add_shlibpath="$dir"
+               add="-l$name"
+             else
+               lib_linked=no
+             fi
+             ;;
+           relink)
+             if test "$hardcode_direct" = yes; then
+               add="$dir/$linklib"
+             elif test "$hardcode_minus_L" = yes; then
+               add_dir="-L$dir"
+               add="-l$name"
+             elif test "$hardcode_shlibpath_var" = yes; then
+               add_shlibpath="$dir"
+               add="-l$name"
+             else
+               lib_linked=no
+             fi
+             ;;
+           *) lib_linked=no ;;
+           esac
+
+           if test "$lib_linked" != yes; then
+             $echo "$modename: configuration error: unsupported hardcode properties"
+             exit 1
+           fi
+
+           if test -n "$add_shlibpath"; then
+             case :$compile_shlibpath: in
+             *":$add_shlibpath:"*) ;;
+             *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;
              esac
-             compile_command="$compile_command -l$name"
-             deplibs="$deplibs -l$name"
+           fi
+           if test "$linkmode" = prog; then
+             test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
+             test -n "$add" && compile_deplibs="$add $compile_deplibs"
            else
-             lib_linked=no
+             test -n "$add_dir" && deplibs="$add_dir $deplibs"
+             test -n "$add" && deplibs="$add $deplibs"
+             if test "$hardcode_direct" != yes && \
+                test "$hardcode_minus_L" != yes && \
+                test "$hardcode_shlibpath_var" = yes; then
+               case :$finalize_shlibpath: in
+               *":$libdir:"*) ;;
+               *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
+               esac
+             fi
            fi
-           ;;
+         fi
 
-         relink)
+         if test "$linkmode" = prog || test "$mode" = relink; then
+           add_shlibpath=
+           add_dir=
+           add=
+           # Finalize command for both is simple: just hardcode it.
            if test "$hardcode_direct" = yes; then
-             compile_command="$compile_command $absdir/$linklib"
-             deplibs="$deplibs $absdir/$linklib"
+             add="$libdir/$linklib"
            elif test "$hardcode_minus_L" = yes; then
-             case "$compile_command " in
-             *" -L$absdir "*) ;;
-             *) compile_command="$compile_command -L$absdir";;
-             esac
-             compile_command="$compile_command -l$name"
-             deplibs="$deplibs -L$absdir -l$name"
+             add_dir="-L$libdir"
+             add="-l$name"
            elif test "$hardcode_shlibpath_var" = yes; then
-             case ":$compile_shlibpath:" in
-             *":$absdir:"*) ;;
-             *) compile_shlibpath="$compile_shlibpath$absdir:";;
+             case :$finalize_shlibpath: in
+             *":$libdir:"*) ;;
+             *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;
              esac
-             compile_command="$compile_command -l$name"
-             deplibs="$deplibs -l$name"
+             add="-l$name"
            else
-             lib_linked=no
+             # We cannot seem to hardcode it, guess we'll fake it.
+             add_dir="-L$libdir"
+             add="-l$name"
            fi
-           ;;
-
-         *)
-           lib_linked=no
-           ;;
-         esac
-
-         if test "$lib_linked" != yes; then
-           $echo "$modename: configuration error: unsupported hardcode properties"
-           exit 1
-         fi
 
-         # Finalize command for both is simple: just hardcode it.
-         if test "$hardcode_direct" = yes; then
-           finalize_command="$finalize_command $libdir/$linklib"
-         elif test "$hardcode_minus_L" = yes; then
-           case "$finalize_command " in
-           *" -L$libdir "*) ;;
-           *) finalize_command="$finalize_command -L$libdir";;
-           esac
-           finalize_command="$finalize_command -l$name"
-         elif test "$hardcode_shlibpath_var" = yes; then
-           case ":$finalize_shlibpath:" in
-           *":$libdir:"*) ;;
-           *) finalize_shlibpath="$finalize_shlibpath$libdir:";;
-           esac
-           finalize_command="$finalize_command -l$name"
-         else
-           # We cannot seem to hardcode it, guess we'll fake it.
-           case "$finalize_command " in
-           *" -L$dir "*) ;;
-           *) finalize_command="$finalize_command -L$libdir";;
-           esac
-           finalize_command="$finalize_command -l$name"
+           if test "$linkmode" = prog; then
+             test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
+             test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
+           else
+             test -n "$add_dir" && deplibs="$add_dir $deplibs"
+             test -n "$add" && deplibs="$add $deplibs"
+           fi
          fi
-       else
-         # Transform directly to old archives if we don't build new libraries.
-         if test -n "$pic_flag" && test -z "$old_library"; then
-           $echo "$modename: cannot find static library for \`$arg'" 1>&2
-           exit 1
+       elif test "$linkmode" = prog; then
+         if test "$alldeplibs" = yes &&
+            { test "$deplibs_check_method" = pass_all ||
+              { test "$build_libtool_libs" = yes &&
+                test -n "$library_names"; }; }; then
+           # We only need to search for static libraries
+           continue
          fi
 
+         # Try to link the static library
          # Here we assume that one of hardcode_direct or hardcode_minus_L
          # is not unsupported.  This is valid on all known static and
          # shared platforms.
          if test "$hardcode_direct" != unsupported; then
            test -n "$old_library" && linklib="$old_library"
-           compile_command="$compile_command $dir/$linklib"
-           finalize_command="$finalize_command $dir/$linklib"
+           compile_deplibs="$dir/$linklib $compile_deplibs"
+           finalize_deplibs="$dir/$linklib $finalize_deplibs"
          else
-           case "$compile_command " in
-           *" -L$dir "*) ;;
-           *) compile_command="$compile_command -L$dir";;
-           esac
-           compile_command="$compile_command -l$name"
-           case "$finalize_command " in
-           *" -L$dir "*) ;;
-           *) finalize_command="$finalize_command -L$dir";;
-           esac
-           finalize_command="$finalize_command -l$name"
+           compile_deplibs="-l$name -L$dir $compile_deplibs"
+           finalize_deplibs="-l$name -L$dir $finalize_deplibs"
+         fi
+       elif test "$build_libtool_libs" = yes; then
+         # Not a shared library
+         if test "$deplibs_check_method" != pass_all; then
+           # We're trying link a shared library against a static one
+           # but the system doesn't support it.
+
+           # Just print a warning and add the library to dependency_libs so
+           # that the program can be linked against the static library.
+           echo
+           echo "*** Warning: This library needs some functionality provided by $lib."
+           echo "*** I have the capability to make that library automatically link in when"
+           echo "*** you link to this library.  But I can only do this if you have a"
+           echo "*** shared version of the library, which you do not appear to have."
+           if test "$module" = yes; then
+             echo "*** Therefore, libtool will create a static module, that should work "
+             echo "*** as long as the dlopening application is linked with the -dlopen flag."
+             if test -z "$global_symbol_pipe"; then
+               echo
+               echo "*** However, this would only work if libtool was able to extract symbol"
+               echo "*** lists from a program, using \`nm' or equivalent, but libtool could"
+               echo "*** not find such a program.  So, this module is probably useless."
+               echo "*** \`nm' from GNU binutils and a full rebuild may help."
+             fi
+             if test "$build_old_libs" = no; then
+               build_libtool_libs=module
+               build_old_libs=yes
+             else
+               build_libtool_libs=no
+             fi
+           fi
+         else
+           convenience="$convenience $dir/$old_library"
+           old_convenience="$old_convenience $dir/$old_library"
+           deplibs="$dir/$old_library $deplibs"
+           link_static=yes
+         fi
+       fi # link shared/static library?
+
+       if test "$linkmode" = lib; then
+         if test -n "$dependency_libs" &&
+            { test "$hardcode_into_libs" != yes || test $build_old_libs = yes ||
+              test $link_static = yes; }; then
+           # Extract -R from dependency_libs
+           temp_deplibs=
+           for libdir in $dependency_libs; do
+             case $libdir in
+             -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`
+                  case " $xrpath " in
+                  *" $temp_xrpath "*) ;;
+                  *) xrpath="$xrpath $temp_xrpath";;
+                  esac;;
+             *) temp_deplibs="$temp_deplibs $libdir";;
+             esac
+           done
+           dependency_libs="$temp_deplibs"
          fi
-       fi
-
-       # Add in any libraries that this one depends upon.
-       compile_command="$compile_command$dependency_libs"
-       finalize_command="$finalize_command$dependency_libs"
-       continue
-       ;;
 
-      # Some other compiler argument.
-      *)
-       # Unknown arguments in both finalize_command and compile_command need
-       # to be aesthetically quoted because they are evaled later.
-       arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-       case "$arg" in
-       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \   ]*|*]*)
-         arg="\"$arg\""
-         ;;
-       esac
-       ;;
-      esac
+         newlib_search_path="$newlib_search_path $absdir"
+         # Link against this library
+         test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
+         # ... and its dependency_libs
+         tmp_libs=
+         for deplib in $dependency_libs; do
+           newdependency_libs="$deplib $newdependency_libs"
+           case "$tmp_libs " in
+           *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;
+           esac
+           tmp_libs="$tmp_libs $deplib"
+         done
 
-      # Now actually substitute the argument into the commands.
-      if test -n "$arg"; then
-       compile_command="$compile_command $arg"
-       finalize_command="$finalize_command $arg"
+         if test "$link_all_deplibs" != no; then
+           # Add the search paths of all dependency libraries
+           for deplib in $dependency_libs; do
+             case $deplib in
+             -L*) path="$deplib" ;;
+             *.la)
+               dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`
+               test "X$dir" = "X$deplib" && dir="."
+               # We need an absolute path.
+               case $dir in
+               [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;
+               *)
+                 absdir=`cd "$dir" && pwd`
+                 if test -z "$absdir"; then
+                   $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2
+                   absdir="$dir"
+                 fi
+                 ;;
+               esac
+               if grep "^installed=no" $deplib > /dev/null; then
+                 path="-L$absdir/$objdir"
+               else
+                 eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+                 if test -z "$libdir"; then
+                   $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
+                   exit 1
+                 fi
+                 if test "$absdir" != "$libdir"; then
+                   $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2
+                 fi
+                 path="-L$absdir"
+               fi
+               ;;
+             *) continue ;;
+             esac
+             case " $deplibs " in
+             *" $path "*) ;;
+             *) deplibs="$deplibs $path" ;;
+             esac
+           done
+         fi # link_all_deplibs != no
+       fi # linkmode = lib
+      done # for deplib in $libs
+      if test "$pass" = dlpreopen; then
+       # Link the dlpreopened libraries before other libraries
+       for deplib in $save_deplibs; do
+         deplibs="$deplib $deplibs"
+       done
       fi
-    done
-
-    if test -n "$prev"; then
-      $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
-      $echo "$help" 1>&2
-      exit 1
-    fi
-
-    if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then
-      eval arg=\"$export_dynamic_flag_spec\"
-      compile_command="$compile_command $arg"
-      finalize_command="$finalize_command $arg"
-    fi
-
-    oldlibs=
-    # calculate the name of the file, without its directory
-    outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`
-    libobjs_save="$libobjs"
-
-    case "$output" in
-    "")
-      $echo "$modename: you must specify an output file" 1>&2
-      $echo "$help" 1>&2
-      exit 1
-      ;;
+      if test "$pass" != dlopen; then
+       test "$pass" != scan && dependency_libs="$newdependency_libs"
+       if test "$pass" != conv; then
+         # Make sure lib_search_path contains only unique directories.
+         lib_search_path=
+         for dir in $newlib_search_path; do
+           case "$lib_search_path " in
+           *" $dir "*) ;;
+           *) lib_search_path="$lib_search_path $dir" ;;
+           esac
+         done
+         newlib_search_path=
+       fi
 
-    *.a | *.lib)
-      if test -n "$link_against_libtool_libs"; then
-       $echo "$modename: error: cannot link libtool libraries into archives" 1>&2
-       exit 1
+       if test "$linkmode,$pass" != "prog,link"; then
+         vars="deplibs"
+       else
+         vars="compile_deplibs finalize_deplibs"
+       fi
+       for var in $vars dependency_libs; do
+         # Add libraries to $var in reverse order
+         eval tmp_libs=\"\$$var\"
+         new_libs=
+         for deplib in $tmp_libs; do
+           case $deplib in
+           -L*) new_libs="$deplib $new_libs" ;;
+           *)
+             case " $specialdeplibs " in
+             *" $deplib "*) new_libs="$deplib $new_libs" ;;
+             *)
+               case " $new_libs " in
+               *" $deplib "*) ;;
+               *) new_libs="$deplib $new_libs" ;;
+               esac
+               ;;
+             esac
+             ;;
+           esac
+         done
+         tmp_libs=
+         for deplib in $new_libs; do
+           case $deplib in
+           -L*)
+             case " $tmp_libs " in
+             *" $deplib "*) ;;
+             *) tmp_libs="$tmp_libs $deplib" ;;
+             esac
+             ;;
+           *) tmp_libs="$tmp_libs $deplib" ;;
+           esac
+         done
+         eval $var=\"$tmp_libs\"
+       done # for var
       fi
-
-      if test -n "$deplibs"; then
-       $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
+      if test "$pass" = "conv" &&
+       { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then
+       libs="$deplibs" # reset libs
+       deplibs=
       fi
+    done # for pass
+    if test "$linkmode" = prog; then
+      dlfiles="$newdlfiles"
+      dlprefiles="$newdlprefiles"
+    fi
 
+    case $linkmode in
+    oldlib)
       if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
        $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2
       fi
@@ -1566,11 +2130,12 @@ compiler."
       # Now set the variables for building old libraries.
       build_libtool_libs=no
       oldlibs="$output"
+      objs="$objs$old_deplibs"
       ;;
 
-    *.la)
+    lib)
       # Make sure we only generate libraries of the form `libNAME.la'.
-      case "$outputname" in
+      case $outputname in
       lib*)
        name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
        eval libname=\"$libname_spec\"
@@ -1591,26 +2156,20 @@ compiler."
        ;;
       esac
 
-      output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-      if test "X$output_objdir" = "X$output"; then
-       output_objdir="$objdir"
-      else
-       output_objdir="$output_objdir/$objdir"
-      fi
-
       if test -n "$objs"; then
-       $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
-       exit 1
-      fi
-
-      # How the heck are we supposed to write a wrapper for a shared library?
-      if test -n "$link_against_libtool_libs"; then
-        $echo "$modename: error: cannot link shared libraries into libtool libraries" 1>&2
-        exit 1
+       if test "$deplibs_check_method" != pass_all; then
+         $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1
+         exit 1
+       else
+         echo
+         echo "*** Warning: Linking the shared library $output against the non-libtool"
+         echo "*** objects $objs is not portable!"
+         libobjs="$libobjs $objs"
+       fi
       fi
 
-      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then
-       $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2
+      if test "$dlself" != no; then
+       $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2
       fi
 
       set dummy $rpath
@@ -1628,7 +2187,6 @@ compiler."
          build_libtool_libs=convenience
          build_old_libs=yes
        fi
-       dependency_libs="$deplibs"
 
        if test -n "$vinfo"; then
          $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2
@@ -1640,7 +2198,7 @@ compiler."
       else
 
        # Parse the version information argument.
-       IFS="${IFS=     }"; save_ifs="$IFS"; IFS=':'
+       save_ifs="$IFS"; IFS=':'
        set dummy $vinfo 0 0 0
        IFS="$save_ifs"
 
@@ -1655,8 +2213,8 @@ compiler."
        age="$4"
 
        # Check that each of the things are valid numbers.
-       case "$current" in
-       [0-9]*) ;;
+       case $current in
+       0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
        *)
          $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2
          $echo "$modename: \`$vinfo' is not valid version information" 1>&2
@@ -1664,8 +2222,8 @@ compiler."
          ;;
        esac
 
-       case "$revision" in
-       [0-9]*) ;;
+       case $revision in
+       0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
        *)
          $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2
          $echo "$modename: \`$vinfo' is not valid version information" 1>&2
@@ -1673,8 +2231,8 @@ compiler."
          ;;
        esac
 
-       case "$age" in
-       [0-9]*) ;;
+       case $age in
+       0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;;
        *)
          $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2
          $echo "$modename: \`$vinfo' is not valid version information" 1>&2
@@ -1692,12 +2250,31 @@ compiler."
        major=
        versuffix=
        verstring=
-       case "$version_type" in
+       case $version_type in
        none) ;;
 
+       darwin)
+         # Like Linux, but with the current version available in
+         # verstring for coding it into the library header
+         major=.`expr $current - $age`
+         versuffix="$major.$age.$revision"
+         # Darwin ld doesn't like 0 for these options...
+         minor_current=`expr $current + 1`
+         verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
+         ;;
+
+       freebsd-aout)
+         major=".$current"
+         versuffix=".$current.$revision";
+         ;;
+
+       freebsd-elf)
+         major=".$current"
+         versuffix=".$current";
+         ;;
+
        irix)
          major=`expr $current - $age + 1`
-         versuffix="$major.$revision"
          verstring="sgi$major.$revision"
 
          # Add in all the interfaces that we are compatible with.
@@ -1707,6 +2284,10 @@ compiler."
            loop=`expr $loop - 1`
            verstring="sgi$major.$iface:$verstring"
          done
+
+         # Before this point, $major must not contain `.'.
+         major=.$major
+         versuffix="$major.$revision"
          ;;
 
        linux)
@@ -1736,21 +2317,11 @@ compiler."
          versuffix=".$current.$revision"
          ;;
 
-       freebsd-aout)
-         major=".$current"
-         versuffix=".$current.$revision";
-         ;;
-
-       freebsd-elf)
-         major=".$current"
-         versuffix=".$current";
-         ;;
-
        windows)
-         # Like Linux, but with '-' rather than '.', since we only
-         # want one extension on Windows 95.
+         # Use '-' rather than '.', since we only want one
+         # extension on DOS 8.3 filesystems.
          major=`expr $current - $age`
-         versuffix="-$major-$age-$revision"
+         versuffix="-$major"
          ;;
 
        *)
@@ -1764,6 +2335,16 @@ compiler."
        if test -z "$vinfo" && test -n "$release"; then
          major=
          verstring="0.0"
+         case $version_type in
+         darwin)
+           # we can't check for "0.0" in archive_cmds due to quoting
+           # problems, so we reset it completely
+           verstring=""
+           ;;
+         *)
+           verstring="0.0"
+           ;;
+         esac
          if test "$need_version" = no; then
            versuffix=
          else
@@ -1777,7 +2358,7 @@ compiler."
          versuffix=
          verstring=""
        fi
-       
+
        # Check to see if the archive will have undefined symbols.
        if test "$allow_undefined" = yes; then
          if test "$allow_undefined_flag" = unsupported; then
@@ -1789,34 +2370,12 @@ compiler."
          # Don't allow undefined symbols.
          allow_undefined_flag="$no_undefined_flag"
        fi
-
-       dependency_libs="$deplibs"
-       case "$host" in
-       *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
-         # these systems don't actually have a c library (as such)!
-         ;;
-        *-*-rhapsody*)
-         # rhapsody is a little odd...
-         deplibs="$deplibs -framework System"
-         ;;
-       *)
-         # Add libc to deplibs on all other systems.
-         deplibs="$deplibs -lc"
-         ;;
-       esac
       fi
 
-      # Create the output directory, or remove our outputs if we need to.
-      if test -d $output_objdir; then
+      if test "$mode" != relink; then
+       # Remove our outputs.
        $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"
        $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*
-      else
-       $show "$mkdir $output_objdir"
-       $run $mkdir $output_objdir
-       status=$?
-       if test $status -ne 0 && test ! -d $output_objdir; then
-         exit $status
-       fi
       fi
 
       # Now set the variables for building old libraries.
@@ -1827,7 +2386,73 @@ compiler."
        oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`
       fi
 
+      # Eliminate all temporary directories.
+      for path in $notinst_path; do
+       lib_search_path=`echo "$lib_search_path " | sed -e 's% $path % %g'`
+       deplibs=`echo "$deplibs " | sed -e 's% -L$path % %g'`
+       dependency_libs=`echo "$dependency_libs " | sed -e 's% -L$path % %g'`
+      done
+
+      if test -n "$xrpath"; then
+       # If the user specified any rpath flags, then add them.
+       temp_xrpath=
+       for libdir in $xrpath; do
+         temp_xrpath="$temp_xrpath -R$libdir"
+         case "$finalize_rpath " in
+         *" $libdir "*) ;;
+         *) finalize_rpath="$finalize_rpath $libdir" ;;
+         esac
+       done
+       if test $hardcode_into_libs != yes || test $build_old_libs = yes; then
+         dependency_libs="$temp_xrpath $dependency_libs"
+       fi
+      fi
+
+      # Make sure dlfiles contains only unique files that won't be dlpreopened
+      old_dlfiles="$dlfiles"
+      dlfiles=
+      for lib in $old_dlfiles; do
+       case " $dlprefiles $dlfiles " in
+       *" $lib "*) ;;
+       *) dlfiles="$dlfiles $lib" ;;
+       esac
+      done
+
+      # Make sure dlprefiles contains only unique files
+      old_dlprefiles="$dlprefiles"
+      dlprefiles=
+      for lib in $old_dlprefiles; do
+       case "$dlprefiles " in
+       *" $lib "*) ;;
+       *) dlprefiles="$dlprefiles $lib" ;;
+       esac
+      done
+
       if test "$build_libtool_libs" = yes; then
+       if test -n "$rpath"; then
+         case $host in
+         *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*)
+           # these systems don't actually have a c library (as such)!
+           ;;
+         *-*-rhapsody* | *-*-darwin1.[012])
+           # Rhapsody C library is in the System framework
+           deplibs="$deplibs -framework System"
+           ;;
+         *-*-netbsd*)
+           # Don't link with libc until the a.out ld.so is fixed.
+           ;;
+         *-*-openbsd*)
+           # Do not include libc due to us having libc/libc_r.
+           ;;
+         *)
+           # Add libc to deplibs on all other systems if necessary.
+           if test "$build_libtool_need_lc" = "yes"; then
+             deplibs="$deplibs -lc"
+           fi
+           ;;
+         esac
+       fi
+
        # Transform deplibs into only deplibs that can be linked in shared.
        name_save=$name
        libname_save=$libname
@@ -1842,7 +2467,7 @@ compiler."
        major=""
        newdeplibs=
        droppeddeps=no
-       case "$deplibs_check_method" in
+       case $deplibs_check_method in
        pass_all)
          # Don't check for shared/static.  Everything works.
          # This might be a little naive.  We might want to check
@@ -1867,7 +2492,7 @@ EOF
            for i in $deplibs; do
              name="`expr $i : '-l\(.*\)'`"
              # If $name is empty we are operating on a -L argument.
-             if test "$name" != "" ; then
+             if test -n "$name" && test "$name" != "0"; then
                libname=`eval \\$echo \"$libname_spec\"`
                deplib_matches=`eval \\$echo \"$library_names_spec\"`
                set dummy $deplib_matches
@@ -1892,7 +2517,7 @@ EOF
            for i in $deplibs; do
              name="`expr $i : '-l\(.*\)'`"
             # If $name is empty we are operating on a -L argument.
-             if test "$name" != "" ; then
+             if test -n "$name" && test "$name" != "0"; then
                $rm conftest
                $CC -o conftest conftest.c $i
                # Did it work?
@@ -1928,19 +2553,19 @@ EOF
          ;;
        file_magic*)
          set dummy $deplibs_check_method
-         file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`"
+         file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
          for a_deplib in $deplibs; do
            name="`expr $a_deplib : '-l\(.*\)'`"
            # If $name is empty we are operating on a -L argument.
-           if test "$name" != "" ; then
+           if test -n "$name" && test "$name" != "0"; then
              libname=`eval \\$echo \"$libname_spec\"`
-             for i in $lib_search_path; do
+             for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
                    potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
                    for potent_lib in $potential_libs; do
                      # Follow soft links.
                      if ls -lLd "$potent_lib" 2>/dev/null \
                         | grep " -> " >/dev/null; then
-                       continue 
+                       continue
                      fi
                      # The statement above tries to avoid entering an
                      # endless loop below, in case of cyclic links.
@@ -1950,7 +2575,7 @@ EOF
                      potlib="$potent_lib"
                      while test -h "$potlib" 2>/dev/null; do
                        potliblink=`ls -ld $potlib | sed 's/.* -> //'`
-                       case "$potliblink" in
+                       case $potliblink in
                        [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;
                        *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;
                        esac
@@ -1978,6 +2603,40 @@ EOF
            fi
          done # Gone through all deplibs.
          ;;
+       match_pattern*)
+         set dummy $deplibs_check_method
+         match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`
+         for a_deplib in $deplibs; do
+           name="`expr $a_deplib : '-l\(.*\)'`"
+           # If $name is empty we are operating on a -L argument.
+           if test -n "$name" && test "$name" != "0"; then
+             libname=`eval \\$echo \"$libname_spec\"`
+             for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
+               potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
+               for potent_lib in $potential_libs; do
+                 if eval echo \"$potent_lib\" 2>/dev/null \
+                     | sed 10q \
+                     | egrep "$match_pattern_regex" > /dev/null; then
+                   newdeplibs="$newdeplibs $a_deplib"
+                   a_deplib=""
+                   break 2
+                 fi
+               done
+             done
+             if test -n "$a_deplib" ; then
+               droppeddeps=yes
+               echo
+               echo "*** Warning: This library needs some functionality provided by $a_deplib."
+               echo "*** I have the capability to make that library automatically link in when"
+               echo "*** you link to this library.  But I can only do this if you have a"
+               echo "*** shared version of the library, which you do not appear to have."
+             fi
+           else
+             # Add a -L argument.
+             newdeplibs="$newdeplibs $a_deplib"
+           fi
+         done # Gone through all deplibs.
+         ;;
        none | unknown | *)
          newdeplibs=""
          if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \
@@ -2000,6 +2659,13 @@ EOF
        libname=$libname_save
        name=$name_save
 
+       case $host in
+       *-*-rhapsody* | *-*-darwin1.[012])
+         # On Rhapsody replace the C library is the System framework
+         newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'`
+         ;;
+       esac
+
        if test "$droppeddeps" = yes; then
          if test "$module" = yes; then
            echo
@@ -2025,6 +2691,21 @@ EOF
            echo "*** The inter-library dependencies that have been dropped here will be"
            echo "*** automatically added whenever a program is linked with this library"
            echo "*** or is declared to -dlopen it."
+
+           if test $allow_undefined = no; then
+             echo
+             echo "*** Since this library must not contain undefined symbols,"
+             echo "*** because either the platform does not support them or"
+             echo "*** it was explicitly requested with -no-undefined,"
+             echo "*** libtool will only create a static version of it."
+             if test "$build_old_libs" = no; then
+               oldlibs="$output_objdir/$libname.$libext"
+               build_libtool_libs=module
+               build_old_libs=yes
+             else
+               build_libtool_libs=no
+             fi
+           fi
          fi
        fi
        # Done checking deplibs!
@@ -2035,9 +2716,64 @@ EOF
       library_names=
       old_library=
       dlname=
-      
+
       # Test again, we may have decided not to build it any more
       if test "$build_libtool_libs" = yes; then
+       if test "$hardcode_into_libs" = yes; then
+         # Hardcode the library paths
+         hardcode_libdirs=
+         dep_rpath=
+         rpath="$finalize_rpath"
+         test "$mode" != relink && rpath="$compile_rpath$rpath"
+         for libdir in $rpath; do
+           if test -n "$hardcode_libdir_flag_spec"; then
+             if test -n "$hardcode_libdir_separator"; then
+               if test -z "$hardcode_libdirs"; then
+                 hardcode_libdirs="$libdir"
+               else
+                 # Just accumulate the unique libdirs.
+                 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
+                 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
+                   ;;
+                 *)
+                   hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
+                   ;;
+                 esac
+               fi
+             else
+               eval flag=\"$hardcode_libdir_flag_spec\"
+               dep_rpath="$dep_rpath $flag"
+             fi
+           elif test -n "$runpath_var"; then
+             case "$perm_rpath " in
+             *" $libdir "*) ;;
+             *) perm_rpath="$perm_rpath $libdir" ;;
+             esac
+           fi
+         done
+         # Substitute the hardcoded libdirs into the rpath.
+         if test -n "$hardcode_libdir_separator" &&
+            test -n "$hardcode_libdirs"; then
+           libdir="$hardcode_libdirs"
+           eval dep_rpath=\"$hardcode_libdir_flag_spec\"
+         fi
+         if test -n "$runpath_var" && test -n "$perm_rpath"; then
+           # We should set the runpath_var.
+           rpath=
+           for dir in $perm_rpath; do
+             rpath="$rpath$dir:"
+           done
+           eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
+         fi
+         test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
+       fi
+
+       shlibpath="$finalize_shlibpath"
+       test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath"
+       if test -n "$shlibpath"; then
+         eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
+       fi
+
        # Get the real and link names of the library.
        eval library_names=\"$library_names_spec\"
        set dummy $library_names
@@ -2049,6 +2785,7 @@ EOF
        else
          soname="$realname"
        fi
+       test -z "$dlname" && dlname=$soname
 
        lib="$output_objdir/$realname"
        for link
@@ -2083,7 +2820,7 @@ EOF
            export_symbols="$output_objdir/$libname.exp"
            $run $rm $export_symbols
            eval cmds=\"$export_symbols_cmds\"
-           IFS="${IFS=         }"; save_ifs="$IFS"; IFS='~'
+           save_ifs="$IFS"; IFS='~'
            for cmd in $cmds; do
              IFS="$save_ifs"
              $show "$cmd"
@@ -2120,7 +2857,7 @@ EOF
 
            for xlib in $convenience; do
              # Extract the objects.
-             case "$xlib" in
+             case $xlib in
              [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
              *) xabs=`pwd`"/$xlib" ;;
              esac
@@ -2145,7 +2882,12 @@ EOF
 
        if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then
          eval flag=\"$thread_safe_flag_spec\"
-         linkopts="$linkopts $flag"
+         linker_flags="$linker_flags $flag"
+       fi
+
+       # Make a backup of the uninstalled library when relinking
+       if test "$mode" = relink; then
+         $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $?
        fi
 
        # Do each of the archive commands.
@@ -2154,7 +2896,7 @@ EOF
        else
          eval cmds=\"$archive_cmds\"
        fi
-       IFS="${IFS=     }"; save_ifs="$IFS"; IFS='~'
+       save_ifs="$IFS"; IFS='~'
        for cmd in $cmds; do
          IFS="$save_ifs"
          $show "$cmd"
@@ -2162,6 +2904,12 @@ EOF
        done
        IFS="$save_ifs"
 
+       # Restore the uninstalled library and exit
+       if test "$mode" = relink; then
+         $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $?
+         exit 0
+       fi
+
        # Create links to the real library.
        for linkname in $linknames; do
          if test "$realname" != "$linkname"; then
@@ -2178,12 +2926,7 @@ EOF
       fi
       ;;
 
-    *.lo | *.o | *.obj)
-      if test -n "$link_against_libtool_libs"; then
-       $echo "$modename: error: cannot link libtool libraries into objects" 1>&2
-       exit 1
-      fi
-
+    obj)
       if test -n "$deplibs"; then
        $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2
       fi
@@ -2208,9 +2951,9 @@ EOF
        $echo "$modename: warning: \`-release' is ignored for objects" 1>&2
       fi
 
-      case "$output" in
+      case $output in
       *.lo)
-       if test -n "$objs"; then
+       if test -n "$objs$old_deplibs"; then
          $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2
          exit 1
        fi
@@ -2234,7 +2977,7 @@ EOF
       gentop=
       # reload_cmds runs $LD directly, so let us get rid of
       # -Wl from whole_archive_flag_spec
-      wl= 
+      wl=
 
       if test -n "$convenience"; then
        if test -n "$whole_archive_flag_spec"; then
@@ -2253,7 +2996,7 @@ EOF
 
          for xlib in $convenience; do
            # Extract the objects.
-           case "$xlib" in
+           case $xlib in
            [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
            *) xabs=`pwd`"/$xlib" ;;
            esac
@@ -2277,11 +3020,11 @@ EOF
       fi
 
       # Create the old-style object.
-      reload_objs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs"
+      reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test
 
       output="$obj"
       eval cmds=\"$reload_cmds\"
-      IFS="${IFS=      }"; save_ifs="$IFS"; IFS='~'
+      save_ifs="$IFS"; IFS='~'
       for cmd in $cmds; do
        IFS="$save_ifs"
        $show "$cmd"
@@ -2312,12 +3055,12 @@ EOF
        exit 0
       fi
 
-      if test -n "$pic_flag"; then
+      if test -n "$pic_flag" || test "$pic_mode" != default; then
        # Only do commands if we really have different PIC objects.
        reload_objs="$libobjs $reload_conv_objs"
        output="$libobj"
        eval cmds=\"$reload_cmds\"
-       IFS="${IFS=     }"; save_ifs="$IFS"; IFS='~'
+       save_ifs="$IFS"; IFS='~'
        for cmd in $cmds; do
          IFS="$save_ifs"
          $show "$cmd"
@@ -2348,8 +3091,10 @@ EOF
       exit 0
       ;;
 
-    # Anything else should be a program.
-    *)
+    prog)
+      case $host in
+       *cygwin*) output=`echo $output | sed -e 's,.exe$,,;s,$,.exe,'` ;;
+      esac
       if test -n "$vinfo"; then
        $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2
       fi
@@ -2359,20 +3104,27 @@ EOF
       fi
 
       if test "$preload" = yes; then
-       if test "$dlopen" = unknown && test "$dlopen_self" = unknown &&
+       if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown &&
           test "$dlopen_self_static" = unknown; then
          $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support."
-       fi 
+       fi
       fi
-    
+
+      case $host in
+      *-*-rhapsody* | *-*-darwin1.[012])
+       # On Rhapsody replace the C library is the System framework
+       compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
+       finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'`
+       ;;
+      esac
+
+      compile_command="$compile_command $compile_deplibs"
+      finalize_command="$finalize_command $finalize_deplibs"
+
       if test -n "$rpath$xrpath"; then
        # If the user specified any rpath flags, then add them.
        for libdir in $rpath $xrpath; do
          # This is the magic to use -rpath.
-         case "$compile_rpath " in
-         *" $libdir "*) ;;
-         *) compile_rpath="$compile_rpath $libdir" ;;
-         esac
          case "$finalize_rpath " in
          *" $libdir "*) ;;
          *) finalize_rpath="$finalize_rpath $libdir" ;;
@@ -2390,7 +3142,7 @@ EOF
              hardcode_libdirs="$libdir"
            else
              # Just accumulate the unique libdirs.
-             case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
+             case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
              *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
                ;;
              *)
@@ -2408,6 +3160,14 @@ EOF
          *) perm_rpath="$perm_rpath $libdir" ;;
          esac
        fi
+       case $host in
+       *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+         case :$dllsearchpath: in
+         *":$libdir:"*) ;;
+         *) dllsearchpath="$dllsearchpath:$libdir";;
+         esac
+         ;;
+       esac
       done
       # Substitute the hardcoded libdirs into the rpath.
       if test -n "$hardcode_libdir_separator" &&
@@ -2426,7 +3186,7 @@ EOF
              hardcode_libdirs="$libdir"
            else
              # Just accumulate the unique libdirs.
-             case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
+             case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
              *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
                ;;
              *)
@@ -2453,23 +3213,6 @@ EOF
       fi
       finalize_rpath="$rpath"
 
-      output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`
-      if test "X$output_objdir" = "X$output"; then
-       output_objdir="$objdir"
-      else
-       output_objdir="$output_objdir/$objdir"
-      fi
-
-      # Create the binary in the object directory, then wrap it.
-      if test ! -d $output_objdir; then
-       $show "$mkdir $output_objdir"
-       $run $mkdir $output_objdir
-       status=$?
-       if test $status -ne 0 && test ! -d $output_objdir; then
-         exit $status
-       fi
-      fi
-
       if test -n "$libobjs" && test "$build_old_libs" = yes; then
        # Transform all the library objects into standard objects.
        compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
@@ -2486,7 +3229,7 @@ EOF
       fi
 
       if test -n "$dlsyms"; then
-       case "$dlsyms" in
+       case $dlsyms in
        "") ;;
        *.c)
          # Discover the nlist of each of the dlfiles.
@@ -2518,7 +3261,7 @@ extern \"C\" {
            test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist"
 
            # Add our own program objects to the symbol list.
-           progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
+           progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`
            for arg in $progfiles; do
              $show "extracting global C symbols from \`$arg'"
              $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'"
@@ -2528,7 +3271,7 @@ extern \"C\" {
              $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
              $run eval '$mv "$nlist"T "$nlist"'
            fi
-           
+
            if test -n "$export_symbols_regex"; then
              $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T'
              $run eval '$mv "$nlist"T "$nlist"'
@@ -2580,27 +3323,25 @@ extern \"C\" {
 #undef lt_preloaded_symbols
 
 #if defined (__STDC__) && __STDC__
-# define lt_ptr_t void *
+# define lt_ptr void *
 #else
-# define lt_ptr_t char *
+# define lt_ptr char *
 # define const
 #endif
 
 /* The mapping between symbol names and symbols. */
 const struct {
   const char *name;
-  lt_ptr_t address;
+  lt_ptr address;
 }
 lt_preloaded_symbols[] =
 {\
 "
 
-           sed -n -e 's/^: \([^ ]*\) $/  {\"\1\", (lt_ptr_t) 0},/p' \
-               -e 's/^. \([^ ]*\) \([^ ]*\)$/  {"\2", (lt_ptr_t) \&\2},/p' \
-                 < "$nlist" >> "$output_objdir/$dlsyms"
+           eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms"
 
            $echo >> "$output_objdir/$dlsyms" "\
-  {0, (lt_ptr_t) 0}
+  {0, (lt_ptr) 0}
 };
 
 /* This works around a problem in FreeBSD linker */
@@ -2617,13 +3358,13 @@ static const void *lt_preloaded_setup() {
          fi
 
          pic_flag_for_symtable=
-         case "$host" in
+         case $host in
          # compiling the symbol table file with pic_flag works around
          # a FreeBSD bug that causes programs to crash when -lm is
          # linked before any other PIC object.  But we must not use
          # pic_flag when linking with -static.  The problem exists in
          # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
-         *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)\r
+         *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
            case "$compile_command " in
            *" -static "*) ;;
            *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
@@ -2662,7 +3403,7 @@ static const void *lt_preloaded_setup() {
        finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"`
       fi
 
-      if test -z "$link_against_libtool_libs" || test "$build_libtool_libs" != yes; then
+      if test $need_relink = no || test "$build_libtool_libs" != yes; then
        # Replace the output file specification.
        compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
        link_command="$compile_command$compile_rpath"
@@ -2671,7 +3412,7 @@ static const void *lt_preloaded_setup() {
        $show "$link_command"
        $run eval "$link_command"
        status=$?
-       
+
        # Delete the generated files.
        if test -n "$dlsyms"; then
          $show "$rm $output_objdir/${outputname}S.${objext}"
@@ -2685,7 +3426,7 @@ static const void *lt_preloaded_setup() {
        # We should set the shlibpath_var
        rpath=
        for dir in $temp_rpath; do
-         case "$dir" in
+         case $dir in
          [\\/]* | [A-Za-z]:[\\/]*)
            # Absolute path.
            rpath="$rpath$dir:"
@@ -2727,11 +3468,24 @@ static const void *lt_preloaded_setup() {
        fi
       fi
 
+      if test "$no_install" = yes; then
+       # We don't need to create a wrapper script.
+       link_command="$compile_var$compile_command$compile_rpath"
+       # Replace the output file specification.
+       link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'`
+       # Delete the old output file.
+       $run $rm $output
+       # Link the executable and exit
+       $show "$link_command"
+       $run eval "$link_command" || exit $?
+       exit 0
+      fi
+
       if test "$hardcode_action" = relink; then
        # Fast installation is not supported
        link_command="$compile_var$compile_command$compile_rpath"
        relink_command="$finalize_var$finalize_command$finalize_rpath"
-       
+
        $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2
        $echo "$modename: \`$output' will be relinked during installation" 1>&2
       else
@@ -2751,7 +3505,7 @@ static const void *lt_preloaded_setup() {
 
       # Replace the output file specification.
       link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
-      
+
       # Delete the old output files.
       $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname
 
@@ -2763,12 +3517,24 @@ static const void *lt_preloaded_setup() {
 
       # Quote the relink command for shipping.
       if test -n "$relink_command"; then
+       # Preserve any variables that may affect compiler behavior
+       for var in $variables_saved_for_relink; do
+         if eval test -z \"\${$var+set}\"; then
+           relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
+         elif eval var_value=\$$var; test -z "$var_value"; then
+           relink_command="$var=; export $var; $relink_command"
+         else
+           var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
+           relink_command="$var=\"$var_value\"; export $var; $relink_command"
+         fi
+       done
+       relink_command="cd `pwd`; $relink_command"
        relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
       fi
 
       # Quote $echo for shipping.
       if test "X$echo" = "X$SHELL $0 --fallback-echo"; then
-       case "$0" in
+       case $0 in
        [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";;
        *) qecho="$SHELL `pwd`/$0 --fallback-echo";;
        esac
@@ -2784,6 +3550,11 @@ static const void *lt_preloaded_setup() {
        case $output in
          *.exe) output=`echo $output|sed 's,.exe$,,'` ;;
        esac
+       # test for cygwin because mv fails w/o .exe extensions
+       case $host in
+         *cygwin*) exeext=.exe ;;
+         *) exeext= ;;
+       esac
        $rm $output
        trap "$rm $output; exit 1" 1 2 15
 
@@ -2813,7 +3584,7 @@ relink_command=\"$relink_command\"
 # This environment variable determines our operation mode.
 if test \"\$libtool_install_magic\" = \"$magic\"; then
   # install mode needs the following variable:
-  link_against_libtool_libs='$link_against_libtool_libs'
+  notinst_deplibs='$notinst_deplibs'
 else
   # When we are sourced in execute mode, \$file and \$echo are already set.
   if test \"\$libtool_execute_magic\" != \"$magic\"; then
@@ -2846,7 +3617,7 @@ else
     # If there was a directory component, then change thisdir.
     if test \"x\$destdir\" != \"x\$file\"; then
       case \"\$destdir\" in
-      [\\/]* | [A-Za-z]:[\\/]*) thisdir=\"\$destdir\" ;;
+      [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
       *) thisdir=\"\$thisdir/\$destdir\" ;;
       esac
     fi
@@ -2862,9 +3633,9 @@ else
 
        if test "$fast_install" = yes; then
          echo >> $output "\
-  program=lt-'$outputname'
+  program=lt-'$outputname'$exeext
   progdir=\"\$thisdir/$objdir\"
-  
+
   if test ! -f \"\$progdir/\$program\" || \\
      { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\
        test \"X\$file\" != \"X\$progdir/\$program\"; }; then
@@ -2881,8 +3652,9 @@ else
 
     # relink executable if necessary
     if test -n \"\$relink_command\"; then
-      if (cd \"\$thisdir\" && eval \$relink_command); then :
+      if relink_command_output=\`eval \$relink_command 2>&1\`; then :
       else
+       $echo \"\$relink_command_output\" >&2
        $rm \"\$progdir/\$file\"
        exit 1
       fi
@@ -2931,9 +3703,9 @@ else
       # Run the actual program with our arguments.
 "
        case $host in
-         # win32 systems need to use the prog path for dll
-         # lookup to work
-       *-*-cygwin*)
+       # win32 systems need to use the prog path for dll
+       # lookup to work
+       *-*-cygwin* | *-*-pw32*)
          $echo >> $output "\
       exec \$progdir/\$program \${1+\"\$@\"}
 "
@@ -2987,7 +3759,7 @@ fi\
          oldobjs="$libobjs_save"
          build_libtool_libs=no
        else
-         oldobjs="$objs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
+         oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`
        fi
        addlibs="$old_convenience"
       fi
@@ -3003,11 +3775,11 @@ fi\
          exit $status
        fi
        generated="$generated $gentop"
-         
+
        # Add in members from convenience archives.
        for xlib in $addlibs; do
          # Extract the objects.
-         case "$xlib" in
+         case $xlib in
          [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;
          *) xabs=`pwd`"/$xlib" ;;
          esac
@@ -3053,7 +3825,7 @@ fi\
 
        eval cmds=\"$old_archive_cmds\"
       fi
-      IFS="${IFS=      }"; save_ifs="$IFS"; IFS='~'
+      save_ifs="$IFS"; IFS='~'
       for cmd in $cmds; do
        IFS="$save_ifs"
        $show "$cmd"
@@ -3068,19 +3840,26 @@ fi\
     fi
 
     # Now create the libtool archive.
-    case "$output" in
+    case $output in
     *.la)
       old_library=
       test "$build_old_libs" = yes && old_library="$libname.$libext"
       $show "creating $output"
 
-      if test -n "$xrpath"; then
-       temp_xrpath=
-       for libdir in $xrpath; do
-         temp_xrpath="$temp_xrpath -R$libdir"
-       done
-       dependency_libs="$temp_xrpath $dependency_libs"
-      fi
+      # Preserve any variables that may affect compiler behavior
+      for var in $variables_saved_for_relink; do
+       if eval test -z \"\${$var+set}\"; then
+         relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
+       elif eval var_value=\$$var; test -z "$var_value"; then
+         relink_command="$var=; export $var; $relink_command"
+       else
+         var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
+         relink_command="$var=\"$var_value\"; export $var; $relink_command"
+       fi
+      done
+      # Quote the link command for shipping.
+      relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args"
+      relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
 
       # Only create the output if not a dry run.
       if test -z "$run"; then
@@ -3090,8 +3869,52 @@ fi\
              break
            fi
            output="$output_objdir/$outputname"i
+           # Replace all uninstalled libtool libraries with the installed ones
+           newdependency_libs=
+           for deplib in $dependency_libs; do
+             case $deplib in
+             *.la)
+               name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'`
+               eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
+               if test -z "$libdir"; then
+                 $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2
+                 exit 1
+               fi
+               newdependency_libs="$newdependency_libs $libdir/$name"
+               ;;
+             *) newdependency_libs="$newdependency_libs $deplib" ;;
+             esac
+           done
+           dependency_libs="$newdependency_libs"
+           newdlfiles=
+           for lib in $dlfiles; do
+             name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
+             eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+             if test -z "$libdir"; then
+               $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
+               exit 1
+             fi
+             newdlfiles="$newdlfiles $libdir/$name"
+           done
+           dlfiles="$newdlfiles"
+           newdlprefiles=
+           for lib in $dlprefiles; do
+             name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`
+             eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
+             if test -z "$libdir"; then
+               $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2
+               exit 1
+             fi
+             newdlprefiles="$newdlprefiles $libdir/$name"
+           done
+           dlprefiles="$newdlprefiles"
          fi
          $rm $output
+         # place dlname in correct position for cygwin
+         tdlname=$dlname
+         case $host,$output,$installed,$module,$dlname in
+           *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
+         esac
          $echo > $output "\
 # $outputname - a libtool library file
 # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
@@ -3100,7 +3923,7 @@ fi\
 # It is necessary for linking the library.
 
 # The name that we can dlopen(3).
-dlname='$dlname'
+dlname='$tdlname'
 
 # Names of this library.
 library_names='$library_names'
@@ -3119,16 +3942,23 @@ revision=$revision
 # Is this an already installed library?
 installed=$installed
 
+# Files to dlopen/dlpreopen
+dlopen='$dlfiles'
+dlpreopen='$dlprefiles'
+
 # Directory that this library needs to be installed in:
-libdir='$install_libdir'\
-"
+libdir='$install_libdir'"
+         if test "$installed" = no && test $need_relink = yes; then
+           $echo >> $output "\
+relink_command=\"$relink_command\""
+         fi
        done
       fi
 
       # Do a symbolic link so that the libtool archive can be found in
       # LD_LIBRARY_PATH before the program is installed.
       $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)"
-      $run eval "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" || exit $?
+      $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $?
       ;;
     esac
     exit 0
@@ -3140,10 +3970,12 @@ libdir='$install_libdir'\
 
     # There may be an optional sh(1) argument at the beginning of
     # install_prog (especially on Windows NT).
-    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh; then
+    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||
+       # Allow the use of GNU shtool's install command.
+       $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then
       # Aesthetically quote it.
       arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"`
-      case "$arg" in
+      case $arg in
       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*)
        arg="\"$arg\""
        ;;
@@ -3159,7 +3991,7 @@ libdir='$install_libdir'\
     # The real first argument should be the name of the installation program.
     # Aesthetically quote it.
     arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-    case "$arg" in
+    case $arg in
     *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \      ]*|*]*)
       arg="\"$arg\""
       ;;
@@ -3182,7 +4014,7 @@ libdir='$install_libdir'\
        continue
       fi
 
-      case "$arg" in
+      case $arg in
       -d) isdir=yes ;;
       -f) prev="-f" ;;
       -g) prev="-g" ;;
@@ -3207,7 +4039,7 @@ libdir='$install_libdir'\
 
       # Aesthetically quote the argument.
       arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
-      case "$arg" in
+      case $arg in
       *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \    ]*|*]*)
        arg="\"$arg\""
        ;;
@@ -3258,11 +4090,11 @@ libdir='$install_libdir'\
        exit 1
       fi
     fi
-    case "$destdir" in
+    case $destdir in
     [\\/]* | [A-Za-z]:[\\/]*) ;;
     *)
       for file in $files; do
-       case "$file" in
+       case $file in
        *.lo) ;;
        *)
          $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2
@@ -3284,8 +4116,8 @@ libdir='$install_libdir'\
     for file in $files; do
 
       # Do each installation.
-      case "$file" in
-      *.a | *.lib)
+      case $file in
+      *.$libext)
        # Do the static libraries later.
        staticlibs="$staticlibs $file"
        ;;
@@ -3301,8 +4133,9 @@ libdir='$install_libdir'\
 
        library_names=
        old_library=
+       relink_command=
        # If there is no directory component, then add one.
-       case "$file" in
+       case $file in
        */* | *\\*) . $file ;;
        *) . ./$file ;;
        esac
@@ -3321,10 +4154,20 @@ libdir='$install_libdir'\
          esac
        fi
 
-       dir="`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/"
+       dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/
        test "X$dir" = "X$file/" && dir=
        dir="$dir$objdir"
 
+       if test -n "$relink_command"; then
+         $echo "$modename: warning: relinking \`$file'" 1>&2
+         $show "$relink_command"
+         if $run eval "$relink_command"; then :
+         else
+           $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2
+           continue
+         fi
+       fi
+
        # See the names of the shared library.
        set dummy $library_names
        if test -n "$2"; then
@@ -3332,9 +4175,16 @@ libdir='$install_libdir'\
          shift
          shift
 
+         srcname="$realname"
+         test -n "$relink_command" && srcname="$realname"T
+
          # Install the shared library and build the symlinks.
-         $show "$install_prog $dir/$realname $destdir/$realname"
-         $run eval "$install_prog $dir/$realname $destdir/$realname" || exit $?
+         $show "$install_prog $dir/$srcname $destdir/$realname"
+         $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $?
+         if test -n "$stripme" && test -n "$striplib"; then
+           $show "$striplib $destdir/$realname"
+           $run eval "$striplib $destdir/$realname" || exit $?
+         fi
 
          if test $# -gt 0; then
            # Delete the old symlinks, and create new ones.
@@ -3350,7 +4200,7 @@ libdir='$install_libdir'\
          # Do each command in the postinstall commands.
          lib="$destdir/$realname"
          eval cmds=\"$postinstall_cmds\"
-         IFS="${IFS=   }"; save_ifs="$IFS"; IFS='~'
+         save_ifs="$IFS"; IFS='~'
          for cmd in $cmds; do
            IFS="$save_ifs"
            $show "$cmd"
@@ -3381,11 +4231,11 @@ libdir='$install_libdir'\
        fi
 
        # Deduce the name of the destination old-style object file.
-       case "$destfile" in
+       case $destfile in
        *.lo)
          staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"`
          ;;
-       *.o | *.obj)
+       *.$objext)
          staticdest="$destfile"
          destfile=
          ;;
@@ -3424,54 +4274,58 @@ libdir='$install_libdir'\
 
        # Do a test to see if this is really a libtool program.
        if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
-         link_against_libtool_libs=
+         notinst_deplibs=
          relink_command=
 
          # If there is no directory component, then add one.
-         case "$file" in
+         case $file in
          */* | *\\*) . $file ;;
          *) . ./$file ;;
          esac
 
          # Check the variables that should have been set.
-         if test -z "$link_against_libtool_libs"; then
+         if test -z "$notinst_deplibs"; then
            $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2
            exit 1
          fi
 
          finalize=yes
-         for lib in $link_against_libtool_libs; do
+         for lib in $notinst_deplibs; do
            # Check to see that each library is installed.
            libdir=
            if test -f "$lib"; then
              # If there is no directory component, then add one.
-             case "$lib" in
+             case $lib in
              */* | *\\*) . $lib ;;
              *) . ./$lib ;;
              esac
            fi
-           libfile="$libdir/`$echo "X$lib" | $Xsed -e 's%^.*/%%g'`"
+           libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test
            if test -n "$libdir" && test ! -f "$libfile"; then
              $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2
              finalize=no
            fi
          done
 
+         relink_command=
+         # If there is no directory component, then add one.
+         case $file in
+         */* | *\\*) . $file ;;
+         *) . ./$file ;;
+         esac
+
          outputname=
          if test "$fast_install" = no && test -n "$relink_command"; then
            if test "$finalize" = yes && test -z "$run"; then
              tmpdir="/tmp"
              test -n "$TMPDIR" && tmpdir="$TMPDIR"
-              tmpdir=`mktemp -d $tmpdir/libtool-XXXXXX 2> /dev/null`
-              if test $? = 0 ; then :
-              else
-                tmpdir="$tmpdir/libtool-$$"
-              fi
+             tmpdir="$tmpdir/libtool-$$"
              if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
              else
                $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
                continue
              fi
+             file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
              outputname="$tmpdir/$file"
              # Replace the output file specification.
              relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'`
@@ -3493,6 +4347,23 @@ libdir='$install_libdir'\
          fi
        fi
 
+       # remove .exe since cygwin /usr/bin/install will append another
+       # one anyways
+       case $install_prog,$host in
+       /usr/bin/install*,*cygwin*)
+         case $file:$destfile in
+         *.exe:*.exe)
+           # this is ok
+           ;;
+         *.exe:*)
+           destfile=$destfile.exe
+           ;;
+         *:*.exe)
+           destfile=`echo $destfile | sed -e 's,.exe$,,'`
+           ;;
+         esac
+         ;;
+       esac
        $show "$install_prog$stripme $file $destfile"
        $run eval "$install_prog\$stripme \$file \$destfile" || exit $?
        test -n "$outputname" && ${rm}r "$tmpdir"
@@ -3509,9 +4380,14 @@ libdir='$install_libdir'\
       $show "$install_prog $file $oldlib"
       $run eval "$install_prog \$file \$oldlib" || exit $?
 
+      if test -n "$stripme" && test -n "$striplib"; then
+       $show "$old_striplib $oldlib"
+       $run eval "$old_striplib $oldlib" || exit $?
+      fi
+
       # Do each command in the postinstall commands.
       eval cmds=\"$old_postinstall_cmds\"
-      IFS="${IFS=      }"; save_ifs="$IFS"; IFS='~'
+      save_ifs="$IFS"; IFS='~'
       for cmd in $cmds; do
        IFS="$save_ifs"
        $show "$cmd"
@@ -3527,11 +4403,10 @@ libdir='$install_libdir'\
     if test -n "$current_libdirs"; then
       # Maybe just do a dry run.
       test -n "$run" && current_libdirs=" -n$current_libdirs"
-      exec $SHELL $0 --finish$current_libdirs
-      exit 1
+      exec_cmd='$SHELL $0 --finish$current_libdirs'
+    else
+      exit 0
     fi
-
-    exit 0
     ;;
 
   # libtool finish mode
@@ -3550,7 +4425,7 @@ libdir='$install_libdir'\
        if test -n "$finish_cmds"; then
          # Do each command in the finish commands.
          eval cmds=\"$finish_cmds\"
-         IFS="${IFS=   }"; save_ifs="$IFS"; IFS='~'
+         save_ifs="$IFS"; IFS='~'
          for cmd in $cmds; do
            IFS="$save_ifs"
            $show "$cmd"
@@ -3569,7 +4444,7 @@ libdir='$install_libdir'\
     fi
 
     # Exit here if they wanted silent mode.
-    test "$show" = : && exit 0
+    test "$show" = ":" && exit 0
 
     echo "----------------------------------------------------------------------"
     echo "Libraries have been installed in:"
@@ -3579,7 +4454,7 @@ libdir='$install_libdir'\
     echo
     echo "If you ever happen to want to link against installed libraries"
     echo "in a given directory, LIBDIR, you must either use libtool, and"
-    echo "specify the full pathname of the library, or use \`-LLIBDIR'"
+    echo "specify the full pathname of the library, or use the \`-LLIBDIR'"
     echo "flag during linking and do at least one of the following:"
     if test -n "$shlibpath_var"; then
       echo "   - add LIBDIR to the \`$shlibpath_var' environment variable"
@@ -3629,7 +4504,7 @@ libdir='$install_libdir'\
       fi
 
       dir=
-      case "$file" in
+      case $file in
       *.la)
        # Check to see that this really is a libtool archive.
        if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :
@@ -3644,7 +4519,7 @@ libdir='$install_libdir'\
        library_names=
 
        # If there is no directory component, then add one.
-       case "$file" in
+       case $file in
        */* | *\\*) . $file ;;
        *) . ./$file ;;
        esac
@@ -3699,13 +4574,13 @@ libdir='$install_libdir'\
     args=
     for file
     do
-      case "$file" in
+      case $file in
       -*) ;;
       *)
        # Do a test to see if this is really a libtool program.
        if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
          # If there is no directory component, then add one.
-         case "$file" in
+         case $file in
          */* | *\\*) . $file ;;
          *) . ./$file ;;
          esac
@@ -3722,8 +4597,8 @@ libdir='$install_libdir'\
 
     if test -z "$run"; then
       if test -n "$shlibpath_var"; then
-        # Export the shlibpath_var.
-        eval "export $shlibpath_var"
+       # Export the shlibpath_var.
+       eval "export $shlibpath_var"
       fi
 
       # Restore saved enviroment variables
@@ -3734,31 +4609,35 @@ libdir='$install_libdir'\
        LANG="$save_LANG"; export LANG
       fi
 
-      # Now actually exec the command.
-      eval "exec \$cmd$args"
-
-      $echo "$modename: cannot exec \$cmd$args"
-      exit 1
+      # Now prepare to actually exec the command.
+      exec_cmd='"$cmd"$args'
     else
       # Display what would be done.
       if test -n "$shlibpath_var"; then
-        eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
-        $echo "export $shlibpath_var"
+       eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
+       $echo "export $shlibpath_var"
       fi
       $echo "$cmd$args"
       exit 0
     fi
     ;;
 
-  # libtool uninstall mode
-  uninstall)
-    modename="$modename: uninstall"
+  # libtool clean and uninstall mode
+  clean | uninstall)
+    modename="$modename: $mode"
     rm="$nonopt"
     files=
+    rmforce=
+    exit_status=0
+
+    # This variable tells wrapper scripts just to set variables rather
+    # than running their programs.
+    libtool_install_magic="$magic"
 
     for arg
     do
-      case "$arg" in
+      case $arg in
+      -f) rm="$rm $arg"; rmforce=yes ;;
       -*) rm="$rm $arg" ;;
       *) files="$files $arg" ;;
       esac
@@ -3770,14 +4649,42 @@ libdir='$install_libdir'\
       exit 1
     fi
 
+    rmdirs=
+
     for file in $files; do
       dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
-      test "X$dir" = "X$file" && dir=.
+      if test "X$dir" = "X$file"; then
+       dir=.
+       objdir="$objdir"
+      else
+       objdir="$dir/$objdir"
+      fi
       name=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
+      test $mode = uninstall && objdir="$dir"
+
+      # Remember objdir for removal later, being careful to avoid duplicates
+      if test $mode = clean; then
+       case " $rmdirs " in
+         *" $objdir "*) ;;
+         *) rmdirs="$rmdirs $objdir" ;;
+       esac
+      fi
+
+      # Don't error if the file doesn't exist and rm -f was used.
+      if (test -L "$file") >/dev/null 2>&1 \
+       || (test -h "$file") >/dev/null 2>&1 \
+       || test -f "$file"; then
+       :
+      elif test -d "$file"; then
+       exit_status=1
+       continue
+      elif test "$rmforce" = yes; then
+       continue
+      fi
 
       rmfiles="$file"
 
-      case "$name" in
+      case $name in
       *.la)
        # Possibly a libtool archive, so verify it.
        if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
@@ -3785,38 +4692,43 @@ libdir='$install_libdir'\
 
          # Delete the libtool libraries and symlinks.
          for n in $library_names; do
-           rmfiles="$rmfiles $dir/$n"
+           rmfiles="$rmfiles $objdir/$n"
          done
-         test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library"
-
-         $show "$rm $rmfiles"
-         $run $rm $rmfiles
-
-         if test -n "$library_names"; then
-           # Do each command in the postuninstall commands.
-           eval cmds=\"$postuninstall_cmds\"
-           IFS="${IFS=         }"; save_ifs="$IFS"; IFS='~'
-           for cmd in $cmds; do
+         test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library"
+         test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i"
+
+         if test $mode = uninstall; then
+           if test -n "$library_names"; then
+             # Do each command in the postuninstall commands.
+             eval cmds=\"$postuninstall_cmds\"
+             save_ifs="$IFS"; IFS='~'
+             for cmd in $cmds; do
+               IFS="$save_ifs"
+               $show "$cmd"
+               $run eval "$cmd"
+               if test $? != 0 && test "$rmforce" != yes; then
+                 exit_status=1
+               fi
+             done
              IFS="$save_ifs"
-             $show "$cmd"
-             $run eval "$cmd"
-           done
-           IFS="$save_ifs"
-         fi
+           fi
 
-         if test -n "$old_library"; then
-           # Do each command in the old_postuninstall commands.
-           eval cmds=\"$old_postuninstall_cmds\"
-           IFS="${IFS=         }"; save_ifs="$IFS"; IFS='~'
-           for cmd in $cmds; do
+           if test -n "$old_library"; then
+             # Do each command in the old_postuninstall commands.
+             eval cmds=\"$old_postuninstall_cmds\"
+             save_ifs="$IFS"; IFS='~'
+             for cmd in $cmds; do
+               IFS="$save_ifs"
+               $show "$cmd"
+               $run eval "$cmd"
+               if test $? != 0 && test "$rmforce" != yes; then
+                 exit_status=1
+               fi
+             done
              IFS="$save_ifs"
-             $show "$cmd"
-             $run eval "$cmd"
-           done
-           IFS="$save_ifs"
+           fi
+           # FIXME: should reinstall the best remaining shared library.
          fi
-
-         # FIXME: should reinstall the best remaining shared library.
        fi
        ;;
 
@@ -3825,17 +4737,35 @@ libdir='$install_libdir'\
          oldobj=`$echo "X$name" | $Xsed -e "$lo2o"`
          rmfiles="$rmfiles $dir/$oldobj"
        fi
-       $show "$rm $rmfiles"
-       $run $rm $rmfiles
        ;;
 
       *)
-       $show "$rm $rmfiles"
-       $run $rm $rmfiles
+       # Do a test to see if this is a libtool program.
+       if test $mode = clean &&
+          (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then
+         relink_command=
+         . $dir/$file
+
+         rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}"
+         if test "$fast_install" = yes && test -n "$relink_command"; then
+           rmfiles="$rmfiles $objdir/lt-$name"
+         fi
+       fi
        ;;
       esac
+      $show "$rm $rmfiles"
+      $run $rm $rmfiles || exit_status=1
     done
-    exit 0
+
+    # Try to remove the ${objdir}s in the directories where we deleted files
+    for dir in $rmdirs; do
+      if test -d "$dir"; then
+       $show "rmdir $dir"
+       $run rmdir $dir >/dev/null 2>&1
+      fi
+    done
+
+    exit $exit_status
     ;;
 
   "")
@@ -3845,13 +4775,20 @@ libdir='$install_libdir'\
     ;;
   esac
 
-  $echo "$modename: invalid operation mode \`$mode'" 1>&2
-  $echo "$generic_help" 1>&2
-  exit 1
+  if test -z "$exec_cmd"; then
+    $echo "$modename: invalid operation mode \`$mode'" 1>&2
+    $echo "$generic_help" 1>&2
+    exit 1
+  fi
 fi # test -z "$show_help"
 
+if test -n "$exec_cmd"; then
+  eval exec $exec_cmd
+  exit 1
+fi
+
 # We need to display help for each of the modes.
-case "$mode" in
+case $mode in
 "") $echo \
 "Usage: $modename [OPTION]... [MODE-ARG]...
 
@@ -3870,6 +4807,7 @@ Provide generalized library-building support services.
 
 MODE must be one of the following:
 
+      clean           remove files from the build directory
       compile         compile a source file into a libtool object
       execute         automatically set library path, then run a program
       finish          complete the installation of libtool libraries
@@ -3882,6 +4820,20 @@ a more detailed description of MODE."
   exit 0
   ;;
 
+clean)
+  $echo \
+"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
+
+Remove files from the build directory.
+
+RM is the name of the program to use to delete files associated with each FILE
+(typically \`/bin/rm').  RM-OPTIONS are options (such as \`-f') to be passed
+to RM.
+
+If FILE is a libtool library, object or program, all the files associated
+with it are deleted. Otherwise, only FILE itself is deleted using RM."
+  ;;
+
 compile)
   $echo \
 "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
@@ -3891,6 +4843,8 @@ Compile a source file into a libtool library object.
 This mode accepts the following additional options:
 
   -o OUTPUT-FILE    set the output file name to OUTPUT-FILE
+  -prefer-pic       try to building PIC objects only
+  -prefer-non-pic   try to building non-PIC objects only
   -static           always build a \`.o' file suitable for static linking
 
 COMPILE-COMMAND is a command to be used in creating a \`standard' object file
@@ -3970,6 +4924,8 @@ The following components of LINK-COMMAND are treated specially:
   -LLIBDIR          search LIBDIR for required installed libraries
   -lNAME            OUTPUT-FILE requires the installed library libNAME
   -module           build a library that can dlopened
+  -no-fast-install  disable the fast-install mode
+  -no-install       link a not-installable executable
   -no-undefined     declare that a library does not refer to external symbols
   -o OUTPUT-FILE    create OUTPUT-FILE from the specified objects
   -release RELEASE  specify package release information
index 305de6ef8f308081195cf8928f2d076c45052032..1e3df7fbc4b4b10b755d57a89bddc1f27bbc6788 100644 (file)
@@ -1,47 +1,52 @@
 
 man_MANS = \
+       adduser.8 \
        chage.1 \
        chfn.1 \
+       chpasswd.8 \
        chsh.1 \
-       gpasswd.1 \
-       login.1 \
-       newgrp.1 \
-       passwd.1 \
-       su.1 \
+       expiry.1 \
        faillog.5 \
-       limits.5 \
-       login.access.5 \
-       login.defs.5 \
-       passwd.5 \
-       porttime.5 \
-       shadow.5 \
-       suauth.5 \
-       adduser.8 \
-       chpasswd.8 \
        faillog.8 \
+       gpasswd.1 \
        groupadd.8 \
        groupdel.8 \
        groupmod.8 \
+       grpck.8 \
        grpconv.8 \
        grpunconv.8 \
-       grpck.8 \
        lastlog.8 \
+       limits.5 \
+       login.1 \
+       login.access.5 \
+       login.defs.5 \
        logoutd.8 \
        mkpasswd.8 \
+       newgrp.1 \
        newusers.8 \
+       passwd.1 \
+       passwd.5 \
+       porttime.5 \
        pwck.8 \
-       pwunconv.8 \
        pwconv.8 \
-       shadowconfig.8 \
+       pwunconv.8 \
+       shadow.5 \
+       su.1 \
+       suauth.5 \
        useradd.8 \
        userdel.8 \
        usermod.8 \
        vipw.8
 
 EXTRA_DIST = $(man_MANS) \
-       groups.1 id.1 pw_auth.3 shadow.3 pwauth.8 sulogin.8 \
-       dpasswd.8
+       dpasswd.8 \
+       groups.1 \
+       id.1 \
+       pw_auth.3 \
+       pwauth.8 \
+       shadow.3 \
+       shadowconfig.8 \
+       sulogin.8
 
 # subdirectories for translated manual pages
-SUBDIRS = pl
-
+SUBDIRS = ja pl pt_BR
index 391bf48c2a68cb5447b3b2b1789d89292f3dbc63..42303ae0af616303f123cc32c8cedc7c5aa2de62 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
@@ -10,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
 
 SHELL = @SHELL@
 
@@ -31,13 +33,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -49,9 +47,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -60,85 +57,152 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
-
-man_MANS =     chage.1         chfn.1  chsh.1  gpasswd.1       login.1         newgrp.1        passwd.1        su.1    faillog.5       limits.5        login.access.5  login.defs.5    passwd.5        porttime.5      shadow.5        suauth.5        adduser.8       chpasswd.8      faillog.8       groupadd.8      groupdel.8      groupmod.8      grpconv.8       grpunconv.8     grpck.8         lastlog.8       logoutd.8       mkpasswd.8      newusers.8      pwck.8  pwunconv.8      pwconv.8        shadowconfig.8  useradd.8       userdel.8       usermod.8       vipw.8
-
-
-EXTRA_DIST = $(man_MANS)       groups.1 id.1 pw_auth.3 shadow.3 pwauth.8 sulogin.8     dpasswd.8
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
+
+man_MANS = \
+       adduser.8 \
+       chage.1 \
+       chfn.1 \
+       chpasswd.8 \
+       chsh.1 \
+       expiry.1 \
+       faillog.5 \
+       faillog.8 \
+       gpasswd.1 \
+       groupadd.8 \
+       groupdel.8 \
+       groupmod.8 \
+       grpck.8 \
+       grpconv.8 \
+       grpunconv.8 \
+       lastlog.8 \
+       limits.5 \
+       login.1 \
+       login.access.5 \
+       login.defs.5 \
+       logoutd.8 \
+       mkpasswd.8 \
+       newgrp.1 \
+       newusers.8 \
+       passwd.1 \
+       passwd.5 \
+       porttime.5 \
+       pwck.8 \
+       pwconv.8 \
+       pwunconv.8 \
+       shadow.5 \
+       su.1 \
+       suauth.5 \
+       useradd.8 \
+       userdel.8 \
+       usermod.8 \
+       vipw.8
+
+
+EXTRA_DIST = $(man_MANS) \
+       dpasswd.8 \
+       groups.1 \
+       id.1 \
+       pw_auth.3 \
+       pwauth.8 \
+       shadow.3 \
+       shadowconfig.8 \
+       sulogin.8
 
 
 # subdirectories for translated manual pages
-SUBDIRS = pl
+SUBDIRS = ja pl pt_BR
+subdir = man
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-man1dir = $(mandir)/man1
-man5dir = $(mandir)/man5
-man8dir = $(mandir)/man8
-MANS = $(man_MANS)
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
 
 NROFF = nroff
-DIST_COMMON =  Makefile.am Makefile.in
-
+MANS = $(man_MANS)
 
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+RECURSIVE_TARGETS = info-recursive dvi-recursive install-info-recursive \
+       uninstall-info-recursive all-recursive install-data-recursive \
+       install-exec-recursive installdirs-recursive install-recursive \
+       uninstall-recursive check-recursive installcheck-recursive
+DIST_COMMON = Makefile.am Makefile.in
+DIST_SUBDIRS = $(SUBDIRS)
+all: all-recursive
 
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps man/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
 
+clean-libtool:
+       -rm -rf .libs _libs
 
-install-man1:
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  man/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
+
+man1dir = $(mandir)/man1
+install-man1: $(man1_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man1dir)
-       @list='$(man1_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @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; \
@@ -148,14 +212,16 @@ install-man1:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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
-
 uninstall-man1:
-       @list='$(man1_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(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; \
@@ -163,15 +229,19 @@ uninstall-man1:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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
 
-install-man5:
+man5dir = $(mandir)/man5
+install-man5: $(man5_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man5dir)
-       @list='$(man5_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.5*) list="$$list $$i" ;; \
          esac; \
@@ -181,14 +251,16 @@ install-man5:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man5dir)/$$inst"; \
          $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst; \
        done
-
 uninstall-man5:
-       @list='$(man5_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(NORMAL_UNINSTALL)
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.5*) list="$$list $$i" ;; \
          esac; \
@@ -196,15 +268,19 @@ uninstall-man5:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man5dir)/$$inst"; \
          rm -f $(DESTDIR)$(man5dir)/$$inst; \
        done
 
-install-man8:
+man8dir = $(mandir)/man8
+install-man8: $(man8_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man8dir)
-       @list='$(man8_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.8*) list="$$list $$i" ;; \
          esac; \
@@ -214,14 +290,16 @@ install-man8:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man8dir)/$$inst"; \
          $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \
        done
-
 uninstall-man8:
-       @list='$(man8_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(NORMAL_UNINSTALL)
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.8*) list="$$list $$i" ;; \
          esac; \
@@ -229,16 +307,11 @@ uninstall-man8:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man8dir)/$$inst"; \
          rm -f $(DESTDIR)$(man8dir)/$$inst; \
        done
-install-man: $(MANS)
-       @$(NORMAL_INSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) install-man1 install-man5 install-man8
-uninstall-man:
-       @$(NORMAL_UNINSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) uninstall-man1 uninstall-man5 uninstall-man8
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
@@ -246,12 +319,7 @@ uninstall-man:
 # (1) if the variable is set in `config.status', edit `config.status'
 #     (which will cause the Makefiles to be regenerated when you run `make');
 # (2) otherwise, pass the desired values on the `make' command line.
-
-@SET_MAKE@
-
-all-recursive install-data-recursive install-exec-recursive \
-installdirs-recursive install-recursive uninstall-recursive  \
-check-recursive installcheck-recursive info-recursive dvi-recursive:
+$(RECURSIVE_TARGETS):
        @set fnord $(MAKEFLAGS); amf=$$2; \
        dot_seen=no; \
        target=`echo $@ | sed s/-recursive//`; \
@@ -274,11 +342,16 @@ mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
        @set fnord $(MAKEFLAGS); amf=$$2; \
        dot_seen=no; \
-       rev=''; list='$(SUBDIRS)'; for subdir in $$list; do \
-         rev="$$subdir $$rev"; \
-         test "$$subdir" = "." && dot_seen=yes; \
+       case "$@" in \
+         distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+         *) list='$(SUBDIRS)' ;; \
+       esac; \
+       rev=''; for subdir in $$list; do \
+         if test "$$subdir" = "."; then :; else \
+           rev="$$subdir $$rev"; \
+         fi; \
        done; \
-       test "$$dot_seen" = "no" && rev=". $$rev"; \
+       rev="$$rev ."; \
        target=`echo $@ | sed s/-recursive//`; \
        for subdir in $$rev; do \
          echo "Making $$target in $$subdir"; \
@@ -297,51 +370,60 @@ tags-recursive:
 
 tags: TAGS
 
-ID: $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(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; }'`; \
-       here=`pwd` && cd $(srcdir) \
-         && mkid -f$$here/ID $$unique $(LISP)
+       mkid -fID $$unique $(LISP)
 
-TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP)
+TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
        tags=; \
        here=`pwd`; \
        list='$(SUBDIRS)'; for subdir in $$list; do \
-   if test "$$subdir" = .; then :; else \
+         if test "$$subdir" = .; then :; else \
            test -f $$subdir/TAGS && tags="$$tags -i $$here/$$subdir/TAGS"; \
-   fi; \
+         fi; \
        done; \
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+       list='$(SOURCES) $(HEADERS) $(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 "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-         || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
+         || etags $(ETAGS_ARGS) $$tags  $$unique $(LISP)
 
-mostlyclean-tags:
-
-clean-tags:
+GTAGS:
+       here=`CDPATH=: && cd $(top_builddir) && pwd` \
+         && cd $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) $$here
 
 distclean-tags:
-       -rm -f TAGS ID
-
-maintainer-clean-tags:
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = man
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
        for subdir in $(SUBDIRS); do \
@@ -349,83 +431,101 @@ distdir: $(DISTFILES)
            test -d $(distdir)/$$subdir \
            || mkdir $(distdir)/$$subdir \
            || exit 1; \
-           chmod 777 $(distdir)/$$subdir; \
-           (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir=../$(top_distdir) distdir=../$(distdir)/$$subdir distdir) \
+           (cd $$subdir && \
+             $(MAKE) $(AM_MAKEFLAGS) \
+               top_distdir="$(top_distdir)" \
+               distdir=../$(distdir)/$$subdir \
+               distdir) \
              || exit 1; \
          fi; \
        done
-info-am:
-info: info-recursive
-dvi-am:
-dvi: dvi-recursive
 check-am: all-am
 check: check-recursive
-installcheck-am:
-installcheck: installcheck-recursive
-install-exec-am:
-install-exec: install-exec-recursive
+all-am: Makefile $(MANS)
+installdirs: installdirs-recursive
+installdirs-am:
+       $(mkinstalldirs) $(DESTDIR)$(man1dir) $(DESTDIR)$(man5dir) $(DESTDIR)$(man8dir)
 
-install-data-am: install-man
+install: install-recursive
+install-exec: install-exec-recursive
 install-data: install-data-recursive
+uninstall: uninstall-recursive
 
 install-am: all-am
        @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-install: install-recursive
-uninstall-am: uninstall-man
-uninstall: uninstall-recursive
-all-am: Makefile $(MANS)
-all-redirect: all-recursive
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs: installdirs-recursive
-installdirs-am:
-       $(mkinstalldirs)  $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 \
-               $(DESTDIR)$(mandir)/man8
-
 
+installcheck: installcheck-recursive
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-tags mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
 
-mostlyclean: mostlyclean-recursive
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-tags clean-generic mostlyclean-am
+distclean: distclean-recursive
 
-clean: clean-recursive
+distclean-am: clean-am distclean-generic distclean-libtool \
+       distclean-tags
 
-distclean-am:  distclean-tags distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-recursive
 
-distclean: distclean-recursive
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-tags maintainer-clean-generic \
-               distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-recursive
+
+info-am:
+
+install-data-am: install-man
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man: install-man1 install-man5 install-man8
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-recursive
 
-.PHONY: install-man1 uninstall-man1 install-man5 uninstall-man5 \
-install-man8 uninstall-man8 install-man uninstall-man \
-install-data-recursive uninstall-data-recursive install-exec-recursive \
-uninstall-exec-recursive installdirs-recursive uninstalldirs-recursive \
-all-recursive check-recursive installcheck-recursive info-recursive \
-dvi-recursive mostlyclean-recursive distclean-recursive clean-recursive \
-maintainer-clean-recursive tags tags-recursive mostlyclean-tags \
-distclean-tags clean-tags maintainer-clean-tags distdir info-am info \
-dvi-am dvi check check-am installcheck-am installcheck install-exec-am \
-install-exec install-data-am install-data install-am install \
-uninstall-am uninstall all-redirect all-am all installdirs-am \
-installdirs mostlyclean-generic distclean-generic clean-generic \
-maintainer-clean-generic clean mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
 
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-man
+
+uninstall-info: uninstall-info-recursive
+
+uninstall-man: uninstall-man1 uninstall-man5 uninstall-man8
+
+.PHONY: $(RECURSIVE_TARGETS) GTAGS all all-am check check-am clean \
+       clean-generic clean-libtool clean-recursive distclean \
+       distclean-generic distclean-libtool distclean-recursive \
+       distclean-tags distdir dvi dvi-am dvi-recursive info info-am \
+       info-recursive install install-am install-data install-data-am \
+       install-data-recursive install-exec install-exec-am \
+       install-exec-recursive install-info install-info-am \
+       install-info-recursive install-man install-man1 install-man5 \
+       install-man8 install-recursive install-strip installcheck \
+       installcheck-am installdirs installdirs-am \
+       installdirs-recursive maintainer-clean maintainer-clean-generic \
+       maintainer-clean-recursive mostlyclean mostlyclean-generic \
+       mostlyclean-libtool mostlyclean-recursive tags tags-recursive \
+       uninstall uninstall-am uninstall-info-am \
+       uninstall-info-recursive uninstall-man uninstall-man1 \
+       uninstall-man5 uninstall-man8 uninstall-recursive
 
 # 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.
index 844c307c9d0291724860d7875a0825c2735161d3..5142a123b23bfebce994a9190753be74b30cdead 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: chage.1,v 1.8 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1990 - 1994 Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: chage.1,v 1.7 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH CHAGE 1
 .SH NAME
 chage \- change user password expiry information
index 1a18db32e52a1e3de22a705a5feb038095f4aa7a..ff0b6ab4e81c41defe4a855f048bc71713e86571 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: chfn.1,v 1.7 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1990 - 1994 Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: chfn.1,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH CHFN 1
 .SH NAME
 chfn \- change user name and information
index 0635f3b5593225c1e8b318bbd6b2f03bca018c9d..a777871807041c8e25f36137e4d4dc62e1dc06f8 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: chpasswd.8,v 1.8 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: chpasswd.8,v 1.7 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH CHPASSWD 8
 .SH NAME
 \fBchpasswd\fR - update password file in batch
index 1d050ce9a7a28564f2a737823d0b54b138d521ac..f407a4095a9b5c4b11540608e986ac7df4a8e018 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: chsh.1,v 1.7 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: chsh.1,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH CHSH 1
 .SH NAME
 chsh \- change login shell
index 50831788a4b261b4ad7afbd651c6ad62e0ae3593..cf0d863bf0ff3d259ed1f418358d86b3edf4300c 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: dpasswd.8,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: dpasswd.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH DPASSWD 8
 .SH NAME
 \fBdpasswd\fR - change dialup password
 .SH SYNOPSIS
-\fBdpasswd\fR
-.RB [ - ( a | d )]
-\fIshell\fR
+\fBdpasswd\fR [(\fI-af\fR|\fB-d\fR)] \fIshell\fR
 .SH DESCRIPTION
 \fBdpasswd\fR adds, deletes, and updates dialup passwords for user
 login shells.
diff --git a/man/expiry.1 b/man/expiry.1
new file mode 100644 (file)
index 0000000..471c67b
--- /dev/null
@@ -0,0 +1,47 @@
+.\"$Id: expiry.1,v 1.2 2001/01/25 10:43:50 kloczek Exp $
+.\" Copyright 1990 - 1994 Julianne Frances Haugh
+.\" All rights reserved.
+.\" Modified for expiry by Ben Collins <bcollins@debian.org, 1999
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.TH EXPIRY 1
+.SH NAME
+expiry \- check and enforce password expiration policy
+.SH SYNOPSIS
+.TP 6
+\fBexpiry\fR [\fB-c\fR] [\fB-f\fR]
+.SH DESCRIPTION
+\fBexpiry\fR checks (\fB-c\fR) the current password expiration and forces (\fB-f\fR)
+changes when required.  It is callable as a normal user command. 
+.SH FILES
+/etc/passwd \- user account information
+.br
+/etc/shadow \- shadow user account information
+.SH SEE ALSO
+.BR passwd (5),
+.BR shadow (5)
+.SH AUTHOR
+Ben Collins (bcollins@debian.org)
index 0b7e07d41e991bd3f6a675c1f8cc862ce0018b88..c9f17fe8d9e50b8878a166de453823dd6424c9cd 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: faillog.5,v 1.7 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: faillog.5,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH FAILLOG 5
 .SH NAME
 faillog \- Login failure logging file
index ab849a51487b04ce616568227c02a149e78d764a..5b8079bb7ecd230298b86f6032328d71902714f3 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: faillog.8,v 1.10 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\"    $Id: faillog.8,v 1.8 2000/10/16 21:34:40 kloczek Exp $
 .\"
 .TH FAILLOG 8
 .SH NAME
 faillog \- examine faillog and set login failure limits
 .SH SYNOPSIS
 .TP 8
-.B faillog
-.RB [ -u
-.IR login-name ]
-.RB [ -a ]
-.RB [ -t
-.IR days ]
-.RB [ -m
-.IR max ]
-.RB [ -pr ] 
+\fBfaillog\fR [\fB-u\fR \fIlogin-name\fR] [\fB-a\fR] [\fB-t\fR \fIdays\fR]
+[\fB-m\fR \fImax\fR] [\fB-pr\fR] 
 .SH DESCRIPTION
 \fBfaillog\fR formats the contents of the failure log,
 \fI/var/log/faillog\fR, and maintains failure counts and
index 2b9c3dfa641de721171e1313e4a80b111b664d37..4b300d86d9132e374fa3a46632514e5c0d509918 100644 (file)
@@ -1,40 +1,25 @@
+.\"    $Id: gpasswd.1,v 1.4 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1996, Rafal Maszkowski, rzm@pdi.net
 .\" All rights reserved. You can redistribute this man page 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.
-.\"
-.\"    $Id: gpasswd.1,v 1.2 1996/09/10 02:45:18 marekm Exp $
-.\"
 .TH GPASSWD 1
 .SH NAME
 gpasswd \- administer the /etc/group file
 .br
 .SH SYNOPSIS
-.B gpasswd \fIgroup\fR
+\fBgpasswd\fR \fIgroup\fR
 .br
-.B gpasswd
-.B -a
-\fIuser\fR \fIgroup\fR
+\fBgpasswd\fR \fB-a\fR \fIuser\fR \fIgroup\fR
 .br
-.B gpasswd
-.B -d
-\fIuser\fR \fIgroup\fR
+\fBgpasswd\fR \fB-d\fR \fIuser\fR \fIgroup\fR
 .br
-.B gpasswd
-.B -R
-\fIgroup\fR
+\fBgpasswd\fR \fB-R\fR \fIgroup\fR
 .br
-.B gpasswd
-.B -r
-\fIgroup\fR
+\fBgpasswd\fR \fB-r\fR \fIgroup\fR
 .br
-.B gpasswd
-.RB [ -A
-\fIuser\fR,...]
-.RB [ -M
-\fIuser\fR,...]
-\fIgroup\fR
+\fBgpasswd\fR [\fB-A\fR \fIuser\fR,...] [\fB-M\fR \fIuser\fR,...] \fIgroup\fR
 .br
 .SH DESCRIPTION
 .B gpasswd
@@ -55,8 +40,7 @@ access to the group through
 .BR newgrp (1)
 command.
 .PP
-.B gpasswd
-called by a group administrator with group name only prompts
+\fBgpasswd\fR called by a group administrator with group name only prompts
 for the group password. If password is set the members can still
 .BR newgrp (1)
 without a password, non-members must supply the password.
index 95a7febcb4f602677096bc815978889114818eeb..91f7d533a2b3ffd2c5051e599b5668617718e8cf 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: groupadd.8,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groupadd.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH GROUPADD 8
 .SH NAME
 groupadd \- Create a new group
 .SH SYNOPSIS
-.B groupadd
-[\fB-g\fI gid \fR[\fB-o\fR]]
-.I group
+\fBgroupadd\fR [\fB-g\fI gid \fR[\fB-o\fR]] \fIgroup\fR
 .SH DESCRIPTION
 The \fBgroupadd\fR command
 creates a new group account using the values specified on the
index 950b75fb8e49354d3d588e3d3e5d458360e6cfa4..39eee57f25c48324fb362c790a5aca3bdd1f3526 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: groupdel.8,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groupdel.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH GROUPDEL 8
 .SH NAME
 groupdel \- Delete a group
 .SH SYNOPSIS
-.B groupdel
-.I group
+\fBgroupdel\fR \fIgroup\fR
 .SH DESCRIPTION
 The \fBgroupdel\fR command modifies the system account files, deleting
 all entries that refer to \fIgroup\fR.
index 61527f6707381accfc7a950b0cdfcd83ba843dcc..d713f05d8f65d1e17c71bfef456559cbfcb6a339 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: groupmod.8,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groupmod.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH GROUPMOD 8
 .SH NAME
 groupmod \- Modify a group
 .SH SYNOPSIS
-.B groupmod
-[\fB-g\fI gid \fR[\fB-o\fR]]
-[\fB-n\fI group_name \fR]
-.I group
+\fBgroupmod\fR [\fB-g\fI gid \fR[\fB-o\fR]] [\fB-n\fI group_name \fR]
+\fIgroup\fR
 .SH DESCRIPTION
 The \fBgroupmod\fR command modifies the system account files to reflect
 the changes that are specified on the command line.
index 93e7cbe58df02907d7404efd71819148315db65b..474ed282f0775ae8178a1e7f418071267514faf1 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: groups.1,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groups.1,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH GROUPS 1
 .SH NAME
 groups \- Display current group ID names
 .SH SYNOPSIS
-.B groups
-.RI [ user ]
+\fBgroups\fR [\fIuser\fR]
 .SH DESCRIPTION
-.B groups
-displays the current group ID names
-or values.
-If the value does not have a corresponding entry in
-\fI/etc/group\fR, the value will be displayed as the numerical group value.
-The optional \fIuser\fR parameter will display the groups for the named
-\fIuser\fR.
+\fBgroups\fR displays the current group ID names or values. If the value
+does not have a corresponding entry in \fI/etc/group\fR, the value will be
+displayed as the numerical group value. The optional \fIuser\fR parameter
+will display the groups for the named \fIuser\fR.
 .SH NOTE
 Systems which do not support concurrent group sets will have the information
 from \fI/etc/group\fR reported.
index a3000cd05df58570430b9ad8898aaee7a8aa7509..0e48b47fa416221f5ffb92da113d2c8935d4fccf 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: grpck.8,v 1.8 2001/08/14 21:11:18 malekith Exp $
 .\" Copyright 1992 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: grpck.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH GRPCK 1
 .SH NAME
 grpck \- verify integrity of group files
@@ -72,6 +70,9 @@ Additionally, the user may execute the command in read-only mode by
 specifying the \fB-r\fR flag.
 This causes all questions regarding changes to be answered \fBno\fR
 without user intervention.
+\fBgrpck\fR can also sort entries in \fI/etc/group\fR and \fI/etc/gshadow\fR
+by GID. To run it in sort mode pass it \fB-s\fR flag. No checks are
+performed then, it just sorts.
 .SH FILES
 /etc/group \- group account information
 .br
index 7f70022e465743bdc928249b74e2bfeb9f887cd3..3b44fca7a67d3b68cc73dae14409fb63bc35a8f6 100644 (file)
--- a/man/id.1
+++ b/man/id.1
@@ -1,3 +1,4 @@
+.\"$Id: id.1,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: id.1,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH ID 1
 .SH NAME
 id \- Display current user and group ID names
 .SH SYNOPSIS
-.B id
-.RB [ -a ]
+\fBid\fR [\fB-a\fR]
 .SH DESCRIPTION
-.B id
-displays the current real and effective user and group ID names
-or values.
-If the value does not have a corresponding entry in \fI/etc/passwd\fR
-or \fI/etc/group\fR, the value will be displayed without the corresponding
-name.
-The optional \fB-a\fR flag will display the group set on systems which
-support multiple concurrent group membership.
+\fBid\fR displays the current real and effective user and group ID names or
+values. If the value does not have a corresponding entry in
+\fI/etc/passwd\fR or \fI/etc/group\fR, the value will be displayed without
+the corresponding name. The optional \fB-a\fR flag will display the group
+set on systems which support multiple concurrent group membership.
 .SH FILES
 /etc/passwd \- user account information
 .br
diff --git a/man/ja/Makefile.am b/man/ja/Makefile.am
new file mode 100644 (file)
index 0000000..f3cdf69
--- /dev/null
@@ -0,0 +1,36 @@
+
+mandir = @mandir@/ja
+
+man_MANS = \
+       chage.1 \
+       chfn.1 \
+       chsh.1 \
+       gpasswd.1 \
+       login.1 \
+       newgrp.1 \
+       passwd.1 \
+       su.1 \
+       shadow.3 \
+       faillog.5 \
+       login.access.5 \
+       login.defs.5 \
+       passwd.5 \
+       porttime.5 \
+       shadow.5 \
+       suauth.5 \
+        chpasswd.8 \
+       faillog.8 \
+       groupadd.8 \
+       groupdel.8 \
+       groupmod.8 \
+       grpck.8 \
+       lastlog.8 \
+       logoutd.8 \
+       mkpasswd.8 \
+       pwck.8 \
+       pwconv.8 \
+       userdel.8 \
+       usermod.8
+
+EXTRA_DIST = $(man_MANS) \
+       pw_auth.3 pwauth.8 sulogin.8 dpasswd.8
diff --git a/man/ja/Makefile.in b/man/ja/Makefile.in
new file mode 100644 (file)
index 0000000..a509dd2
--- /dev/null
@@ -0,0 +1,439 @@
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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@
+
+SHELL = @SHELL@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+includedir = @includedir@
+oldincludedir = /usr/include
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = @program_transform_name@
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AMTAR = @AMTAR@
+AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
+GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLBISON = @INTLBISON@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
+LIBCRACK = @LIBCRACK@
+LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
+LIBMD = @LIBMD@
+LIBPAM = @LIBPAM@
+LIBSKEY = @LIBSKEY@
+LIBTCFS = @LIBTCFS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+STRIP = @STRIP@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+YACC = @YACC@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
+
+mandir = @mandir@/ja
+
+man_MANS = \
+       chage.1 \
+       chfn.1 \
+       chsh.1 \
+       gpasswd.1 \
+       login.1 \
+       newgrp.1 \
+       passwd.1 \
+       su.1 \
+       shadow.3 \
+       faillog.5 \
+       login.access.5 \
+       login.defs.5 \
+       passwd.5 \
+       porttime.5 \
+       shadow.5 \
+       suauth.5 \
+        chpasswd.8 \
+       faillog.8 \
+       groupadd.8 \
+       groupdel.8 \
+       groupmod.8 \
+       grpck.8 \
+       lastlog.8 \
+       logoutd.8 \
+       mkpasswd.8 \
+       pwck.8 \
+       pwconv.8 \
+       userdel.8 \
+       usermod.8
+
+
+EXTRA_DIST = $(man_MANS) \
+       pw_auth.3 pwauth.8 sulogin.8 dpasswd.8
+
+subdir = man/ja
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+
+NROFF = nroff
+MANS = $(man_MANS)
+DIST_COMMON = Makefile.am Makefile.in
+all: all-am
+
+.SUFFIXES:
+
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
+
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  man/ja/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
+
+man1dir = $(mandir)/man1
+install-man1: $(man1_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(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; \
+       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/^.*\\.//'`; \
+         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
+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/^.*\\.//'`; \
+         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
+
+man3dir = $(mandir)/man3
+install-man3: $(man3_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(man3dir)
+       @list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.3*) list="$$list $$i" ;; \
+         esac; \
+       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/^.*\\.//'`; \
+         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)$(man3dir)/$$inst"; \
+         $(INSTALL_DATA) $$file $(DESTDIR)$(man3dir)/$$inst; \
+       done
+uninstall-man3:
+       @$(NORMAL_UNINSTALL)
+       @list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.3*) list="$$list $$i" ;; \
+         esac; \
+       done; \
+       for i in $$list; do \
+         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+         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)$(man3dir)/$$inst"; \
+         rm -f $(DESTDIR)$(man3dir)/$$inst; \
+       done
+
+man5dir = $(mandir)/man5
+install-man5: $(man5_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(man5dir)
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.5*) list="$$list $$i" ;; \
+         esac; \
+       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/^.*\\.//'`; \
+         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)$(man5dir)/$$inst"; \
+         $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst; \
+       done
+uninstall-man5:
+       @$(NORMAL_UNINSTALL)
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.5*) list="$$list $$i" ;; \
+         esac; \
+       done; \
+       for i in $$list; do \
+         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+         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)$(man5dir)/$$inst"; \
+         rm -f $(DESTDIR)$(man5dir)/$$inst; \
+       done
+
+man8dir = $(mandir)/man8
+install-man8: $(man8_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(man8dir)
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.8*) list="$$list $$i" ;; \
+         esac; \
+       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/^.*\\.//'`; \
+         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)$(man8dir)/$$inst"; \
+         $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \
+       done
+uninstall-man8:
+       @$(NORMAL_UNINSTALL)
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.8*) list="$$list $$i" ;; \
+         esac; \
+       done; \
+       for i in $$list; do \
+         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+         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)$(man8dir)/$$inst"; \
+         rm -f $(DESTDIR)$(man8dir)/$$inst; \
+       done
+tags: TAGS
+TAGS:
+
+
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = ../..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+
+distdir: $(DISTFILES)
+       @for file in $(DISTFILES); do \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
+         if test -d $$d/$$file; then \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
+         else \
+           test -f $(distdir)/$$file \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
+         fi; \
+       done
+check-am: all-am
+check: check-am
+all-am: Makefile $(MANS)
+
+installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(man1dir) $(DESTDIR)$(man3dir) $(DESTDIR)$(man5dir) $(DESTDIR)$(man8dir)
+
+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:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
+
+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 clean-libtool mostlyclean-am
+
+distclean: distclean-am
+
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man: install-man1 install-man3 install-man5 install-man8
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-man
+
+uninstall-man: uninstall-man1 uninstall-man3 uninstall-man5 \
+       uninstall-man8
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-man1 install-man3 \
+       install-man5 install-man8 install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool uninstall uninstall-am uninstall-info-am \
+       uninstall-man uninstall-man1 uninstall-man3 uninstall-man5 \
+       uninstall-man8
+
+# 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/man/ja/chage.1 b/man/ja/chage.1
new file mode 100644 (file)
index 0000000..c262149
--- /dev/null
@@ -0,0 +1,115 @@
+.\" Copyright 1990 - 1994 John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: chage.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH CHAGE 1
+.SH Ì¾Á°
+chage \- ¥æ¡¼¥¶¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤Î¾ðÊó¤òÊѹ¹¤¹¤ë¡£
+.SH ½ñ¼°
+\fBchage\fR [ \fB-m \fImindays\fR ] [ \fB-M \fImaxdays\fR ]
+[ \fB-d \fIlastday\fR ] [ \fB-I \fIinactive\fR ]
+[ \fB-E \fIexpiredate\fR ] [ \fB-W \fIwarndays\fR ] \fIuser\fR
+.sp 1
+\fBchage\fR -l \fIuser\fR
+.SH ÀâÌÀ
+\fIchage\fR¤Ï¡¢
+¥Ñ¥¹¥ï¡¼¥É¤ÎºÇ½ª¹¹¿·Æü¤«¤é¼¡¤ËÊѹ¹¤¹¤Ù¤­´üÆü¤Þ¤Ç¤ÎÆü¿ô¤òÊѹ¹¤¹¤ë¡£
+¥·¥¹¥Æ¥à¤Ï¡¢¤³¤Î¾ðÊó¤òÍѤ¤¤Æ¡¢¥æ¡¼¥¶¤¬¤¤¤Ä¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤Ù¤­¤«¤ò·èÄꤹ¤ë¡£
+\fIchage\fR¥³¥Þ¥ó¥É¤Î»ÈÍѤϡ¢\fB-l\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¾ì¹ç°Ê³°¤Ï
+root¥æ¡¼¥¶¤Î¤ß¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤ë¡£
+\fB-l\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢°ìÈ̥桼¥¶¤¬¼«Ê¬¤Î¥Ñ¥¹¥ï¡¼¥ÉËô¤Ï¥¢¥«¥¦¥ó¥È
+¤Î´ü¸Â¤¬ÀÚ¤ì¤ëÆü¤¬¤¤¤Ä¤«¤òÃΤ뤿¤á¤Ë»È¤¦¤³¤È¤¬½ÐÍè¤ë¡£
+.PP
+\fB-m\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢
+\fImindays\fR¤ÎÃͤϥѥ¹¥ï¡¼¥ÉÊѹ¹¤Î´Ö¤ÎºÇÄãÆü¿ô¤Ë¤Ê¤ë¡£
+¤³¤ÎÍó¤ò¥¼¥í¤È¤·¤¿»þ¤Ï¡¢¥æ¡¼¥¶¤Ï¤¤¤Ä¤Ç¤â¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤Ç¤­¤ë¡£
+.PP
+\fB-M\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¡¢
+\fImaxdays\fR¤ÎÃͤϥѥ¹¥ï¡¼¥É¤¬Í­¸ú¤ÊºÇĹÆü¿ô¤È¤Ê¤ë¡£
+\fImaxdays\fR¤È\fIlastday\fR¤ò¤¿¤·¤¿Ãͤ¬¸½ºß¤ÎÆüÉÕ¤è¤ê¾®¤µ¤¤¾ì¹ç¡¢
+¥æ¡¼¥¶¤¬¥¢¥«¥¦¥ó¥È¤ò»ÈÍѤ¹¤ë¤¿¤á¤Ë¤Ï¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£
+\fB-W\fR¥ª¥×¥·¥ç¥ó¤ò»È¤¨¤Ð¤³¤Î´üÆü¤¬¤¤¤ÄÍè¤ë¤«¤¬Ê¬¤«¤ë¤è¤¦¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢
+¤½¤Î¾ì¹ç¤Ï¥æ¡¼¥¶¤Ë»öÁ°¤Ë·Ù¹ð¤¬Í¿¤¨¤é¤ì¤ë¡£
+.PP
+\fB-d\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¾ì¹ç¡¢
+\fIlastday\fR¤ÎÃͤÏ1970ǯ1·î1Æü¤«¤é¥Ñ¥¹¥ï¡¼¥ÉºÇ½ª¹¹¿·ÆüËø¤ÎÆü¿ô¤Ë¤Ê¤ë¡£
+Æü¿ô¤Ï·î·î/ÆüÆü/ǯǯ¤È¤¤¤¦½ñ¼° (¼ã¤·¤¯¤Ï¤¢¤Ê¤¿¤ÎÃϰè¤Ç¤â¤Ã¤È¤è¤¯ÍѤ¤¤é¤ì¤Æ
+¤¤¤ë½ñ¼°)¤Ç»ØÄꤹ¤ë»ö¤â¤Ç¤­¤ë¡£
+.PP
+\fB-E\fR¥ª¥×¥·¥ç¥ó¤Ï¥æ¡¼¥¶¤¬¥¢¥«¥¦¥ó¥È¤ËºÇÁᥢ¥¯¥»¥¹¤Ç¤­¤Ê¤¯¤Ê¤ë
+ÆüÉÕ¤òÀßÄꤹ¤ë¤Î¤ËÍѤ¤¤é¤ì¤ë¡£
+\fIexpiredate\fR¥ª¥×¥·¥ç¥ó¤Ï1970ǯ1·î1Æü¤«¤é¥¢¥«¥¦¥ó¥È¤¬¥í¥Ã¥¯
+¤µ¤ì¤ëÆüËø¤ÎÆü¿ô¤Ç¤¢¤ë¡£
+Æü¿ô¤Ï·î·î/ÆüÆü/ǯǯ¤È¤¤¤¦½ñ¼°(¼ã¤·¤¯¤Ï¤¢¤Ê¤¿¤ÎÃϰè¤Ç¤â¤Ã¤È¤è¤¯
+ÍѤ¤¤é¤ì¤Æ¤¤¤ë¤â¤Î)¤Ç»ØÄꤹ¤ë¤³¤È¤â½ÐÍè¤ë¡£
+¥¢¥«¥¦¥ó¥È¤¬¥í¥Ã¥¯¤µ¤ì¤¿¥æ¡¼¥¶¤¬ºÆ¤Ó¤½¤Î¥·¥¹¥Æ¥à¤ò»È¤¦¤¿¤á¤Ë¤Ï¡¢
+¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ë¥³¥ó¥¿¥¯¥È¤ò¼è¤é¤Í¤Ð¤Ê¤é¤Ê¤¤¡£
+.PP
+\fB-I\fR¥ª¥×¥·¥ç¥ó¤Ï¥Ñ¥¹¥ï¡¼¥É¤Î´ü¸Â¤¬ÀÚ¤ì¤Æ¤«¤é¥¢¥«¥¦¥ó¥È¤¬¥í¥Ã¥¯
+¤µ¤ì¤ëËø¤Î»ÈÍÑÉÔǽÆü¿ô¤òÀßÄꤹ¤ë¤¿¤á¤ËÍѤ¤¤ë¡£
+¥¢¥«¥¦¥ó¥È¤¬¥í¥Ã¥¯¤µ¤ì¤¿¥æ¡¼¥¶¤¬ºÆ¤Ó¤½¤Î¥·¥¹¥Æ¥à¤ò»È¤¦¤¿¤á¤Ë¤Ï¡¢
+¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ë¥³¥ó¥¿¥¯¥È¤ò¼è¤é¤Í¤Ð¤Ê¤é¤Ê¤¤¡£
+\fIinactive\fR¥ª¥×¥·¥ç¥ó¤Ï»ÈÍÑÉÔǽ¤È¤Ê¤ë´ü´Ö¤ÎÆü¿ô¤Ç¤¢¤ë¡£
+0¤È¤¹¤ë¤È¤³¤Îµ¡Ç½¤ò¸ú¤«¤Ê¤¯¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+.PP
+\fB-W\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÊѹ¹¤¬É¬ÍפȤʤëÁ°¤Ë·Ù¹ð¤ò¹Ô¤¦
+Æü¿ô¤òÀßÄꤹ¤ë¤¿¤á¤ËÍѤ¤¤ë¡£
+\fIwarndays\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤Î´ü¸ÂÀÚ¤ì¤ËÀè¤À¤Ã¤Æ
+¥æ¡¼¥¶¤Ë´ü¸Â¤¬Àڤ줫¤«¤Ã¤Æ¤¤¤ë¤³¤È¤ò·Ù¹ð¤¹¤ëÆü¿ô¤Ç¤¢¤ë¡£
+.PP
+¥·¥ã¥É¡¼¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤¬ÍѤ¤¤é¤ì¤ë»þ¤Ï¡¢¾å¤Ëµó¤²¤¿ÃÍ¤ÏÆü¿ô¤È¤·¤Æ
+Êݸ¤µ¤ì¤ë¤¬¡¢É¸½à¤Î¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤¬ÍѤ¤¤é¤ì¤ë»þ¤Ë¤Ï
+½µ¤Î¿ô¤ËÊÑ´¹¤µ¤ì¤ë¡£
+¤³¤ÎÊÑ´¹¤¬¹Ô¤ï¤ì¤ë¤¿¤á¡¢´Ý¤á¤Î¸íº¹¤¬À¸¤¸¤ë¤³¤È¤â¤¢¤ë¡£
+.PP
+¾å¤Ëµó¤²¤¿¤¤¤º¤ì¤Î¥ª¥×¥·¥ç¥ó¤â»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢
+\fIchage\fR¤ÏÂÐÏÃŪ¤Ëưºî¤·¡¢Á´¤Æ¤ÎÍó¤ËÂФ·¤Æ¡¢³Æ¡¹¸½ºß¤ÎÀßÄêÃͤòɽ¼¨¤·¡¢
+¿·¤·¤¤ÃÍ¤ÎÆþÎϤòÂ¥¤¹¡£
+¿·¤·¤¤ÃͤòÀßÄꤹ¤ë¾ì¹ç¤Ï¤½¤ì¤òÆþÎϤ·¡¢¸½ºß¤ÎÃͤò»È¤¦¤Ê¤é¶õ¹Ô¤Î¤Þ¤Þ
+¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤»¤Ð¤è¤¤¡£
+¸½ºß¤ÎÃͤϰìÂФÎ\fB[ ]\fRµ­¹æ¤Î´Ö¤Ëɽ¼¨¤µ¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/shadow \- ¥æ¡¼¥¶¤Î shadow ¥¢¥«¥¦¥ó¥È¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+passwd(4),
+shadow(4)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/chfn.1 b/man/ja/chfn.1
new file mode 100644 (file)
index 0000000..b3d7628
--- /dev/null
@@ -0,0 +1,75 @@
+.\" Copyright 1990 - 1994 John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: chfn.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH CHFN 1
+.SH NAME
+chfn \- ¥æ¡¼¥¶¤Î̾Á°Åù¤Î¾ðÊó¤òÊѹ¹¤¹¤ë¡£
+.SH ½ñ¼°
+\fBchfn\fR [ \fB-f \fIfull_name\fR ] [ \fB-r \fIroom_no\fR ]
+.br
+[ \fB-w \fIwork_ph\fR ] [ \fB-h \fIhome_ph\fR ] [ \fB-o \fIother\fR ]
+[ \fIuser\fR ]
+.SH ÀâÌÀ
+\fIchfn\fR
+¤Ï¡¢¥æ¡¼¥¶¤Î¥Õ¥ë¥Í¡¼¥à¡¢¥ª¥Õ¥£¥¹¤ÎÉô²°ÈÖ¹æµÚ¤ÓÆâÀþÈֹ桢
+¼«Âð¤ÎÅÅÏÃÈÖ¹æ¤È¤¤¤Ã¤¿¥¢¥«¥¦¥ó¥È¾ðÊó¤òÊѹ¹¤¹¤ë¡£
+¤³¤Î¾ðÊó¤Ï\fIfinger(1)\fR¤ä¤½¤ì¤ÈÎà»÷¤Î¥×¥í¥°¥é¥à¤Ë¤è¤Ã¤ÆÉ½¼¨¤µ¤ì¤ë¡£
+°ìÈ̥桼¥¶¤Ï¼«Ê¬¼«¿È¤Î¥¢¥«¥¦¥ó¥È¤Î¾ðÊó¤ÎÊѹ¹¤Î¤ß¹Ô¤¦¤³¤È¤¬½ÐÍè¤ë¡£
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤ÏÁ´¤Æ¤Î¥¢¥«¥¦¥ó¥È¤ËÂФ·¤Æ¾ðÊó¤ÎÊѹ¹¤¬½ÐÍè¤ë¡£
+¤Þ¤¿¡¢\fB-o\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ÆGCOSÍó¤Î̤ÄêµÁÉôʬ¤ÎÊѹ¹¤ò¹Ô¤¨¤ë¤Î¤â
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤À¤±¤Ç¤¢¤ë¡£
+.PP
+³ÆÍó¤Ë¤Ï¡¢¥³¥ó¥È¥í¡¼¥ëʸ»úµÚ¤Ó¡¢¥³¥ó¥Þ¡¢¥³¥í¥ó¡¢Åù¹æ°Ê³°¤ÎÁ´¤Æ¤Îʸ»ú¤ò
+½ñ¤¯¤³¤È¤¬½ÐÍè¤ë¡£
+\fIother\fRÍó¤ËÂФ·¤Æ¤Ï¤³¤ÎÀ©¸Â¤Ï¤Ê¤¤¤Î¤Ç¡¢Â¾¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬ÍѤ¤¤ë
+¥¢¥«¥¦¥ó¥Æ¥£¥ó¥°¾ðÊó¤òµ­Ï¿¤·¤Æ¤ª¤¯»ö¤¬½ÐÍè¤ë¡£
+.PP
+¤¤¤º¤ì¤Î¥ª¥×¥·¥ç¥ó¤âÁªÂò¤µ¤ì¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢\fIchfn\fR¤ÏÂÐÏÃŪ¤Ëưºî¤·¡¢
+Á´¤Æ¤ÎÍó¤ËÂФ·¤Æ¡¢³Æ¡¹¸½ºß¤ÎÀßÄêÃͤòɽ¼¨¤·¡¢¿·¤·¤¤ÃÍ¤ÎÆþÎϤòÂ¥¤¹¡£
+¿·¤·¤¤ÃͤòÀßÄꤹ¤ë¾ì¹ç¤Ï¤½¤ì¤òÆþÎϤ·¡¢¤Þ¤¿¤Ï¸½ºß¤ÎÃͤò»È¤¦¤Ê¤é¶õ¹Ô¤Î¤Þ¤Þ
+¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤»¤Ð¤è¤¤¡£
+¸½ºß¤ÎÃͤϰìÂФΠ\fB[ ]\fR µ­¹æ¤Î´Ö¤Ëɽ¼¨¤µ¤ì¤ë¡£
+¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¡¢chfn¤Ï¤½¤ì¤òµ¯Æ°¤·¤¿¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¤Ë
+ÂФ·¤ÆÆ¯¤¯¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.SH ´ØÏ¢¥³¥Þ¥ó¥É
+passwd(4)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/chpasswd.8 b/man/ja/chpasswd.8
new file mode 100644 (file)
index 0000000..6fba8d2
--- /dev/null
@@ -0,0 +1,68 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: chpasswd.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH CHPASSWD 8
+.SH Ì¾Á°
+\fBchpasswd\fR - ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤ò¥Ð¥Ã¥Á½èÍý¤Ç¹¹¿·¤¹¤ë
+.SH ½ñ¼°
+\fBchpasswd\fR
+.SH ÀâÌÀ
+\fBchpasswd\fR¥³¥Þ¥ó¥É¤Ïɸ½àÆþÎϤ«¤é¥æ¡¼¥¶Ì¾¤È°Å¹æ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ñ¥¹¥ï¡¼¥É
+¤ÎÁȤߤ¬µ­¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤ß¡¢¤½¤Î¾ðÊó¤òÍѤ¤¤Æ´û¸¤Î¥æ¡¼¥¶·²¤Î
+¥Ñ¥¹¥ï¡¼¥É¾ðÊó¤ò¹¹¿·¤¹¤ë¡£
+³Æ¹Ô¤Ï
+.DS
+         \fIuser_name\fR:\fIpassword\fR
+.DE
+¤È¤¤¤¦½ñ¼°¤Ç¤¢¤ë¡£
+»ØÄꤷ¤¿¥æ¡¼¥¶¤Ï´û¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+Í¿¤¨¤é¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤¬°Å¹æ²½¤µ¤ì¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤¬Â¸ºß¤¹¤ë¤Ê¤é
+¤½¤ì¤â¹¹¿·¤µ¤ì¤ë¡£
+.PP
+¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢Æ±»þ¤ËÂçÎ̤Υ¢¥«¥¦¥ó¥È¤òºîÀ®¤¹¤ëÍͤÊÂ絬ÌϤʥ·¥¹¥Æ¥à´Ä¶­
+¤Ç»ÈÍѤ¹¤ë¤³¤È¤ò°Õ¿Þ¤·¤Æ¤¤¤ë¡£
+.SH ·Ù¹ð
+¤³¤Î¥³¥Þ¥ó¥É¤Î»ÈÍѸå¤Ï¡¢DBM¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤ò¹¹¿·¤¹¤ë°Ù¤Ë¡¢\fImkpasswd\fR
+¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+ÆþÎÏ¥Õ¥¡¥¤¥ë¤Ï¡¢°Å¹æ²½¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ñ¥¹¥ï¡¼¥É¤¬µ­¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢¥×¥í¥Æ¥¯¥È
+¤ò¤«¤±¤Æ¤ª¤«¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+newusers(8)¥³¥Þ¥ó¥É¤¬Â¸ºß¤¹¤ë¤Î¤Ç¡¢¤³¤Î¥³¥Þ¥ó¥É¤Ï¼Î¤Æ¤é¤ì¤ë¤«¤âÃΤì¤Ê¤¤¡£
+.SH ´ØÏ¢¹àÌÜ
+mkpasswd(8), passwd(1), useradd(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/chsh.1 b/man/ja/chsh.1
new file mode 100644 (file)
index 0000000..7bd6f50
--- /dev/null
@@ -0,0 +1,73 @@
+.\" Copyright 1990, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: chsh.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH CHSH 1
+.SH Ì¾Á°
+chsh \- ¥í¥°¥¤¥ó¥·¥§¥ë¤òÊѹ¹¤¹¤ë¡£
+.SH ½ñ¼°
+\fBchsh\fR [ \fB-s \fIlogin_shell\fR ] [ \fIuser\fR ]
+.SH ÀâÌÀ
+\fIchsh\fR¤Ï¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó¥·¥§¥ë¤òÊѹ¹¤¹¤ë¡£
+¤³¤ì¤Ë¤è¤Ã¤Æ¡¢¥æ¡¼¥¶¤¬¥í¥°¥¤¥ó¤·¤ÆºÇ½é¤Ë¼Â¹Ô¤µ¤ì¤ë¥³¥Þ¥ó¥É¤¬·è¤Þ¤ë¡£
+°ìÈ̥桼¥¶¤Ï¼«Ê¬¤Î¥¢¥«¥¦¥ó¥È¤Î¥í¥°¥¤¥ó¥·¥§¥ë¤Î¤ß¤òÊѹ¹¤Ç¤­¤ë¡£
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤ÏÁ´¤Æ¤Î¥¢¥«¥¦¥ó¥È¤Î¥í¥°¥¤¥ó¥·¥§¥ë¤òÊѹ¹¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+.PP
+¥í¥°¥¤¥ó¥·¥§¥ë¤Ï¡¢¥³¥Þ¥ó¥É̾¤¬\fB/etc/shells\fR¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ì¤Ð¤Ê¤ó¤Ç¤âÎɤ¤¡£
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Î¾ì¹ç¤Ï¤³¤ÎÀ©¸Â¤Ï¤Ê¤¯¡¢¤¤¤«¤Ê¤ëÃÍ¤Ç¤â»ØÄê¤Ç¤­¤ë¡£
+µ¡Ç½¤òÀ©¸Â¤µ¤ì¤¿¥í¥°¥¤¥ó¥·¥§¥ë¤òÍѤ¤¤Æ¤¤¤ë¥¢¥«¥¦¥ó¥È¤«¤é¤Ï¡¢
+¥í¥°¥¤¥ó¥·¥§¥ë¤òÊѹ¹½ÐÍè¤Ê¤¤¡£
+¤³¤ÎÍýͳ¤«¤é¡¢\fB/bin/rsh\fR¤ò\fB/etc/shells\fR¤Ë½ñ¤¯¤³¤È¤Ï´«¤á¤é¤ì¤Ê¤¤¡£
+µ¡Ç½¤¬À©¸Â¤µ¤ì¤¿¥·¥§¥ë¤Ë¸í¤Ã¤ÆÊѹ¹¤·¤Æ¤·¤Þ¤Ã¤¿¾ì¹ç¡¢¤É¤¦¤ä¤Ã¤Æ¤â
+¥í¥°¥¤¥ó¥·¥§¥ë¤ò¸µ¤Î¤â¤Î¤ËÌ᤹¤³¤È¤¬½ÐÍè¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¤«¤é¤Ç¤¢¤ë¡£
+.PP
+\fB-s\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢
+\fIchsh\fR¤ÏÂÐÏÃŪ¤Ëưºî¤·¡¢³ÆÍó¤ËÂФ·¤Æ¸½ºß¤ÎÀßÄêÃͤòɽ¼¨¤·¡¢
+¿·¤·¤¤ÃÍ¤ÎÆþÎϤòÂ¥¤¹¡£
+ÀßÄêÃͤòÊѹ¹¤¹¤ë¤Ê¤é¿·¤·¤¤ÃͤòÆþÎϤ·¡¢
+Ëô¤Ï¸½ºß¤ÎÃͤò»È¤¦¤Ê¤é¶õ¹Ô¤Î¤Þ¤Þ¥ê¥¿¡¼¥ó¥­¡¼¤ò²¡¤»¤Ð¤è¤¤¡£
+¸½ºß¤ÎÃͤϰìÂФΠ\fB[ ]\fR µ­¹æ¤Î´Ö¤Ëɽ¼¨¤µ¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/shells \- »ØÄê¤Ç¤­¤ë¥í¥°¥¤¥ó¥·¥§¥ë¤Î¥ê¥¹¥È
+.SH ´ØÏ¢¹àÌÜ
+chfn(1),
+passwd(5)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/dpasswd.8 b/man/ja/dpasswd.8
new file mode 100644 (file)
index 0000000..44d53c4
--- /dev/null
@@ -0,0 +1,62 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: dpasswd.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH DPASSWD 8
+.SH Ì¾Á°
+\fBdpasswd\fR - ¥À¥¤¥¢¥ë¥¢¥Ã¥×Íѥѥ¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë
+.SH ½ñ¼°
+\fBdpasswd\fR
+[ \fI-(a|d)\fR ] \fIshell\fR
+.SH ÀâÌÀ
+\fBdpasswd\fR¤Ï¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó¥·¥§¥ë¤Î¥À¥¤¥¢¥ë¥¢¥Ã¥×Íѥѥ¹¥ï¡¼¥É¤Î
+Äɲᢺï½üµÚ¤Ó¹¹¿·¤ò¹Ô¤Ê¤¦¡£
+¥æ¡¼¥¶¤¬¥À¥¤¥¢¥ë¥¢¥Ã¥×¤Ë¤è¤ê¥í¥°¥¤¥ó¤¹¤ëºÝ¤Ï¾ï¤Ë¡¢Ä̾ï¤Î¥Ñ¥¹¥ï¡¼¥É
+¤Ë¤è¤ë¥æ¡¼¥¶Ç§¾Ú¤ò¹Ô¤Ê¤Ã¤¿¸å¤Ë¥À¥¤¥¢¥ë¥¢¥Ã¥×ÍѤΥѥ¹¥ï¡¼¥É¤ÎÆþÎϤòÂ¥¤µ¤ì¤ë¡£
+ÆþÎϤ¬Àµ¤·¤¯¹Ô¤Ê¤ï¤ì¤¿»ö¤ò³Îǧ¤¹¤ë°Ù¡¢
+\fBdpasswd\fR¤Ï¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤òÆóÅÙÆþÎϤµ¤»¤ë¡£
+.PP
+\fIshell\fR°ú¿ô¤Ï¥í¥°¥¤¥ó¥×¥í¥°¥é¥à¤Ø¤Î´°Á´¤Ê¥Ñ¥¹Ì¾¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+.br
+/etc/d_passwd
+.br
+/etc/dialups
+.SH ´ØÏ¢¹àÌÜ
+login(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/faillog.5 b/man/ja/faillog.5
new file mode 100644 (file)
index 0000000..f5ea81a
--- /dev/null
@@ -0,0 +1,68 @@
+.\" Copyright 1989 - 1994, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: faillog.5,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH FAILLOG 5
+.SH Ì¾Á°
+faillog \- ¥í¥°¥¤¥ó¼ºÇÔ¤òµ­Ï¿¤¹¤ë¥Õ¥¡¥¤¥ë
+.SH ÀâÌÀ
+.I faillog
+¤Ï¸Ä¡¹¤Î¥¢¥«¥¦¥ó¥È¤ËÂФ¹¤ë¥í¥°¥¤¥ó¼ºÇÔ²ó¿ô¤È¤½¤Î¸ÂÅÙ¤ò´ÉÍý¤¹¤ë¡£
+¥Õ¥¡¥¤¥ë¤Ï¸ÇÄêĹ¥ì¥³¡¼¥É¤Ç¤¢¤ê¡¢³Æ¥ì¥³¡¼¥É¤ÏUIDÈÖ¹æ¤Ç»ØÄꤵ¤ì¤ë¡£
+³Æ¥ì¥³¡¼¥É¤Ë¤Ï¡¢ºÇ¸å¤Ë¥í¥°¥¤¥ó¤ËÀ®¸ù¤·¤Æ°ÊÍ貿²ó¥í¥°¥¤¥ó¤Ë¼ºÇÔ¤·¤¿¤«;
+¥¢¥«¥¦¥ó¥È¤¬»ÈÍÑÉÔǽ¤È¤Ê¤ë¤Þ¤Ç¤Î¥í¥°¥¤¥ó¼ºÇÔ²Äǽ²ó¿ô;
+°ìÈֺǶá¥í¥°¥¤¥ó¤Ë¼ºÇÔ¤·¤¿¤È¤­¤ÎÀܳ¥Ç¥Ð¥¤¥¹;
+°ìÈֺǶá¥í¥°¥¤¥ó¤Ë¼ºÇÔ¤·¤¿ÆüÉÕ¡¢
+¤¬µ­Ï¿¤µ¤ì¤Æ¤¤¤ë¡£
+.PP
+¤³¤Î¥Õ¥¡¥¤¥ë¤Î¹½Â¤¤Ï°Ê²¼¤ÎÄ̤ê¤Ç¤¢¤ë
+.DS
+
+        struct faillog {
+                short   fail_cnt;
+                short   fail_max;
+                char    fail_line[12];
+                time_t  fail_time;
+        };
+
+.DE
+.SH ¥Õ¥¡¥¤¥ë
+/var/log/faillog \- ¥í¥°¥¤¥ó¼ºÇԤε­Ï¿
+.SH ´ØÏ¢¹àÌÜ
+faillog(8)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/faillog.8 b/man/ja/faillog.8
new file mode 100644 (file)
index 0000000..a365121
--- /dev/null
@@ -0,0 +1,98 @@
+.\" Copyright 1989 - 1994, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: faillog.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH FAILLOG 8
+.SH Ì¾Á°
+faillog \- faillog¤òÄ´¤Ù¡¢login¼ºÇÔ¤ÎÀ©¸Â¤òÀßÄꤹ¤ë
+.SH ½ñ¼°
+/etc/faillog [ -u uid ] [ -a ] [ -t days ] [ -m max ] [ -pr ] 
+.SH ÀâÌÀ
+\fIfaillog\fR¤Ï¥í¥°¥¤¥ó¤Î¼ºÇÔ¤òµ­Ï¿¤¹¤ë¥í¥°¥Õ¥¡¥¤¥ë\fI/usr/adm/faillog\fR
+¤ÎÆâÍÆ¤òÀ°·Á¤·¡¢¼ºÇԤβó¿ôµÚ¤Ó¤½¤ÎÀ©¸Â¤ÎÊݼé¤ò¹Ô¤Ê¤¦¡£
+\fIfaillog\fR¤ËÍ¿¤¨¤ë°ú¿ô¤Î½ç½ø¤Ë¤Ï°ÕÌ£¤¬¤¢¤ë¡£
+³Æ°ú¿ô¤ÏÍ¿¤¨¤é¤ì¤¿½ç¤Ëľ¤Á¤Ë½èÍý¤µ¤ì¤ë¡£
+.PP
+\fB-p\fR¥Õ¥é¥Ã¥°¤Ï¥í¥°¥¤¥ó¼ºÇԤΥ¨¥ó¥È¥ê¤òUID½ç¤Ëɽ¼¨¤µ¤»¤ë¡£
+\fB-u login-name\fR¤ÈÆþÎϤ·¤¿ºÝ¤Ï¡¢\fBlogin-name\fR¤Î
+¥í¥°¥¤¥ó¼ºÇÔµ­Ï¿¤Î¤ß¤òɽ¼¨¤¹¤ë¡£
+\fB-t days\fR¤ÈÆþÎϤ¹¤ë¤È¡¢ºÇ¶á\fBdays\fRÆü°ÊÆâ¤Î¥í¥°¥¤¥ó¼ºÇÔ
+¤Îµ­Ï¿¤òɽ¼¨¤¹¤ë¡£
+\fB-t\fR¥Õ¥é¥Ã¥°¤òÍѤ¤¤¿ºÝ¤Ï\fB-u\fR¥Õ¥é¥Ã¥°¤ÎƯ¤­¤¬ÍÞÀ©¤µ¤ì¤ë¡£
+\fB-a\fR¥Õ¥é¥Ã¥°¤òÍѤ¤¤ë¤ÈÁ´¥æ¡¼¥¶¤ËÂФ¹¤ëµ­Ï¿¤¬É½¼¨¤µ¤ì¤ë¡£
+¤³¤Î¥Õ¥é¥Ã¥°¤ò\fB-p\fR¥Õ¥é¥Ã¥°¤È¤È¤â¤ËÍѤ¤¤¿¾ì¹ç¤Ï¡¢¤³¤ì¤Þ¤Ç¤Ë¥í¥°¥¤¥ó¤Ë
+¼ºÇÔ¤·¤¿»ö¤Î¤¢¤ëÁ´¤Æ¤Î¥æ¡¼¥¶¤¬Áª¤Ó½Ð¤µ¤ì¤ë¡£
+\fB-r\fR¥Õ¥é¥Ã¥°¤ÈÍѤ¤¤Æ¤â°ÕÌ£¤¬Ìµ¤¤¡£
+.PP
+\fB-r\fR¥Õ¥é¥Ã¥°¤Ï¥í¥°¥¤¥ó¼ºÇԤβó¿ô¤ò¥ê¥»¥Ã¥È¤¹¤ë°Ù¤Î¤â¤Î¤Ç¤¢¤ë¡£
+¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¤Ë¤Ï\fI/usr/adm/faillog\fR¤Ø¤Î½ñ¤­¹þ¤ß¸¢¤¬
+ɬÍפǤ¢¤ë¡£
+\fB-u login-name\fR¤ÈÆþÎϤ·¤¿ºÝ¤Ï¡¢\fBlogin-name\fR¤Î
+¥í¥°¥¤¥ó¼ºÇÔ²ó¿ô¤Î¤ß¤ò¥ê¥»¥Ã¥È¤¹¤ë¡£
+.PP
+\fB-m\fR¥Õ¥é¥Ã¥°¤Ï¡¢¥¢¥«¥¦¥ó¥È¤¬»ÈÍÑÉÔǽ¤Ë¤Ê¤ëºÇÂç¤Î¥í¥°¥¤¥ó
+¼ºÇÔ²ó¿ô¤òÀßÄꤹ¤ë°Ù¤ËÍѤ¤¤ë¡£
+¤³¤Î¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¤Ë¤Ï\fI/usr/adm/faillog\fR¤Ø¤Î½ñ¤­¹þ¤ß¸¢¤¬
+ɬÍפǤ¢¤ë¡£
+\fB-m max\fR¤ÈÆþÎϤ·¤¿¾ì¹ç¡¢¥í¥°¥¤¥ó¼ºÇÔ¤¬\fBmax\fR²ó¤Ë㤷¤¿¸å¤Ï
+Á´¤Æ¤Î¥¢¥«¥¦¥ó¥È¤¬»ÈÍÑÉÔǽ¤Ë¤Ê¤ë¡£
+\fB-u login-name\fR¤È¤È¤â¤ËÍѤ¤¤ì¤Ð¤³¤Îµ¡Ç½¤ò\fBlogin-name\fR¤Ë
+¤Î¤ßºîÍѤµ¤»¤ë»ö¤¬½ÐÍè¤ë¡£
+\fBmax\fR¤ÎÃͤò0¤Ë¤¹¤ë¤È¥í¥°¥¤¥ó¤Î¼ºÇÔ²ó¿ô¤Ë¤ÏÀ©¸Â¤¬Ìµ¤¯¤Ê¤ë¡£
+¥¢¥¿¥Ã¥¯¤Ë¤è¤ê\fBroot\fR¤¬¥í¥°¥¤¥óÉÔǽ¤È¤Ê¤ê¥·¥¹¥Æ¥à´ÉÍý¤¬
+½ÐÍè¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦»ö¤òËɤ°°Ù¤Ë¡¢\fBroot\fR¤ËÂФ·¤Æ¤Ï
+ºÇÂç¥í¥°¥¤¥ó¼ºÇÔ²ó¿ô¤Ï¤¤¤Ä¤Ç¤âɬ¤º0¤È¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.PP
+¥ª¥×¥·¥ç¥ó¤Ï¤É¤Î¤è¤¦¤ËÁȤ߹ç¤ï¤»¤Æ¤âÎɤ¤¡£
+\fB-p\fR¡¢\fB-r\fRµÚ¤Ó\fB-m\fR¤Î³Æ¥ª¥×¥·¥ç¥ó¤Ï\fB-u\fRËô¤Ï\fB-t\fR
+¤Î¤¤¤º¤ì¤ÈÁȤ߹ç¤ï¤»¤Æ¤âľ¤Á¤Ë½èÍý¤µ¤ì¤ë¡£
+.SH ·Ù¹ð
+\fIfaillog\fR¤ÏºÇ¸å¤Ë¼ºÇÔ¤·¤Æ°ÊÍè¥í¥°¥¤¥ó¤ËÀ®¸ù¤·¤Æ¤¤¤Ê¤¤¥æ¡¼¥¶¤Î¤ß¤ò
+ɽ¼¨¤¹¤ë¡£
+¥í¥°¥¤¥ó¤Ë¼ºÇÔ¤·¤¿¸å¤ËÀµ¤·¤¯¥í¥°¥¤¥ó½ÐÍ褿¥æ¡¼¥¶¤òɽ¼¨¤µ¤»¤ë°Ù¤Ë¤Ï¡¢
+\fB-u\fR¥Õ¥é¥Ã¥°¤òÍѤ¤¤Æ¤½¤Î¥æ¡¼¥¶¤òÌÀ¼¨Åª¤Ë»ØÄꤹ¤ë¤«¡¢
+\fB-a\fR¥Õ¥é¥Ã¥°¤òÍѤ¤¤ÆÁ´¥æ¡¼¥¶¤òɽ¼¨¤µ¤»¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.PP
+¥·¥¹¥Æ¥à¤Ë¤è¤Ã¤Æ¤Ï¡¢/usr/adm¤ÎÂå¤ï¤ê¤Ë/var/admËô¤Ï/var/log¤òÍѤ¤¤Æ¤¤¤ë
+¤³¤È¤â¤¢¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/usr/adm/faillog \- ¥í¥°¥¤¥ó¼ºÇÔ¤òµ­Ï¿¤¹¤ë¥Õ¥¡¥¤¥ë
+.SH ´ØÏ¢¹àÌÜ
+login(1),
+faillog(4)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/gpasswd.1 b/man/ja/gpasswd.1
new file mode 100644 (file)
index 0000000..61d7f4e
--- /dev/null
@@ -0,0 +1,82 @@
+.\" Copyright 1996, Rafal Maszkowski, rzm@pdi.net
+.\" All rights reserved. You can redistribute this man page 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.
+.\"
+.\"    $Id: gpasswd.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH GPASSWD 1
+.SH NAME
+gpasswd \- /etc/group¥Õ¥¡¥¤¥ë¤ò´ÉÍý¤¹¤ë
+.br
+.SH ½ñ¼°
+.B gpasswd \fIgroup\fR
+.br
+.B gpasswd
+-a \fIuser\fR \fIgroup\fR
+.br
+.B gpasswd
+-d \fIuser\fR \fIgroup\fR
+.br
+.B gpasswd
+-R \fIgroup\fR
+.br
+.B gpasswd
+-r \fIgroup\fR
+.br
+.B gpasswd
+[ -A \fIuser\fR,... ]
+[ -M \fIuser\fR,... ]
+\fIgruop\fR
+.br
+.SH ÀâÌÀ
+.I gpasswd
+¤Ï/etc/group¥Õ¥¡¥¤¥ë
+(µÚ¤Ó¡¢SHADOWGRP¤òÄêµÁ¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤·¤¿»þ¤Ï/etc/gshadow¥Õ¥¡¥¤¥ë)
+¤ò´ÉÍý¤¹¤ë¤Î¤ËÍѤ¤¤é¤ì¤ë¡£
+³Æ¥°¥ë¡¼¥×¤Ë´ÉÍý¼Ô¤òÃÖ¤­¡¢¥á¥ó¥Ð¡¼µÚ¤Ó¥Ñ¥¹¥ï¡¼¥É¤òÀßÄꤹ¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+¥·¥¹¥Æ¥à´ÉÍý¼Ô¤Ï¡¢
+\fB-A\fR¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ¥°¥ë¡¼¥×´ÉÍý¼Ô(Ê£¿ô¤Ç¤â²Ä)¤òÄêµÁ¤¹¤ë¤³¤È¤ä
+\fB-M\fR¥ª¥×¥·¥ç¥ó¤ò»È¤Ã¤Æ¥á¥ó¥Ð¡¼¤òÄêµÁ¤¹¤ë¤³¤È¤¬¤Ç¤­¡¢
+³Æ¥°¥ë¡¼¥×¤Î´ÉÍý¼ÔµÚ¤Ó¥á¥ó¥Ð¡¼¤ÈƱÅù¤ÎÆÃ¸¢¤ò»ý¤Ã¤Æ¤¤¤ë¡£
+.PP
+¥°¥ë¡¼¥×´ÉÍý¼Ô¤Ï¡¢¤½¤ì¤¾¤ì\fB-a\fRµÚ¤Ó\fB-d\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤Æ
+¥æ¡¼¥¶¤òÄɲä·¤¿¤êºï½ü¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+´ÉÍý¼Ô¤Ï\fB-r\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤Æ¥°¥ë¡¼¥×¥Ñ¥¹¥ï¡¼¥É¤òºï½ü¤¹¤ë»ö¤¬½ÐÍè¤ë¡£
+¥Ñ¥¹¥ï¡¼¥É¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤»þ¤Ï¡¢
+¥°¥ë¡¼¥×¤Î¥á¥ó¥Ð¡¼¤Î¤ß¤¬
+.I newgrp(1)
+¤òÍѤ¤¤Æ¥°¥ë¡¼¥×¤Î°ì°÷¤È¤Ê¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+¥ª¥×¥·¥ç¥ó\fB-R\fR¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢
+.I newgrp(1)
+¥³¥Þ¥ó¥É¤òÍѤ¤¤¿¥°¥ë¡¼¥×¤Ø¤Î¥¢¥¯¥»¥¹¤ò½ÐÍè¤Ê¤¯¤¹¤ë¡£
+.PP
+¥°¥ë¡¼¥×¤Î´ÉÍý¼Ô¤¬¥°¥ë¡¼¥×̾¤Î¤ß¤ò»ØÄꤷ¤Æ
+.I gpasswd
+¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿¾ì¹ç¤Ï
+¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤ë¡£
+¥Ñ¥¹¥ï¡¼¥É¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ç¤â¡¢
+¥á¥ó¥Ð¡¼¤Ï¥Ñ¥¹¥ï¡¼¥É¤Ê¤·¤Ç
+.I newgrp(1)
+¥³¥Þ¥ó¥É¤òÍѤ¤¤ë¤³¤È¤¬½ÐÍè¤ë¤¬¡¢
+¥á¥ó¥Ð¡¼¤Ç¤Ê¤¤¿Í¤Ï¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+
+.SH ¥Õ¥¡¥¤¥ë
+/etc/group \- ¥°¥ë¡¼¥×¾ðÊó
+.br
+/etc/gshadow \- shadow¤·¤¿¥°¥ë¡¼¥×¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+newgrp(1),
+groupadd(1),
+groupdel(1),
+groupmod(1),
+grpck(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/groupadd.8 b/man/ja/groupadd.8
new file mode 100644 (file)
index 0000000..a96fc4f
--- /dev/null
@@ -0,0 +1,67 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: groupadd.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH GROUPADD 8
+.SH Ì¾Á°
+groupadd \- ¿·¤·¤¤¥°¥ë¡¼¥×¤òºîÀ®¤¹¤ë
+.SH ½ñ¼°
+.B groupadd
+[ \fB-g\fI gid \fR[ \fB-o\fR ] ]
+.I group
+.SH ÀâÌÀ
+\fIgroupadd\fR¥³¥Þ¥ó¥É¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¾å¤Ç»ØÄꤵ¤ì¤¿Ã͵ڤÓ
+¥·¥¹¥Æ¥à¤Î¥Ç¥£¥Õ¥©¥ë¥ÈÃͤòÍѤ¤¤Æ¿·¤·¤¤¥°¥ë¡¼¥×¤òºîÀ®¤¹¤ë¡£
+¿·¤·¤¤¥°¥ë¡¼¥×¤ÏɬÍפȤʤ俺ݤ˥·¥¹¥Æ¥à¥Õ¥¡¥¤¥ë¤Ëµ­Æþ¤µ¤ì¤ë¡£
+\fIgroupadd\fR¥³¥Þ¥ó¥É¤Ë»ØÄê¤Ç¤­¤ë¥ª¥×¥·¥ç¥ó¤Ï¼¡¤Î¤â¤Î¤Ç¤¢¤ë
+.IP "\fB-g \fIgid\fR"
+¿·µ¬¥°¥ë¡¼¥×¤ÎIDÈֹ档
+¤³¤ÎÃͤϡ¢\fI-o\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤Ê¤¤¸Â¤ê¤Ï¡¢Â¾¤È½ÅÊ£¤·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤Þ¤¿¡¢ÈóÉéÃͤǤʤ¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥Ç¥£¥Õ¥©¥ë¥È¤Ï¡¢99¤è¤êÂ礭¤¯³î¤Ä¾¤ÎÁ´¤Æ¤Î´û¸¥°¥ë¡¼¥×¤ÎID¤è¤ê¤â
+Â礭¤Ê¤â¤Î¤ÎÃæ¤ÇºÇ¾®¤Î¤â¤Î¤Ç¤¢¤ë¡£
+0¤«¤é99Ëø¤ÎÃͤÏÂçÄñ¥·¥¹¥Æ¥àÍѤΥ¢¥«¥¦¥ó¥È¤ËͽÌó¤µ¤ì¤Æ¤¤¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/group \- ¥°¥ë¡¼¥×¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/gshadow \- ¥°¥ë¡¼¥×¤Î°ÂÁ´¤Ê¥¢¥«¥¦¥ó¥È¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+\fBchfn(1), chsh(1), useradd(1M), userdel(1M), usermod(1M),
+passwd(1), groupdel(1M), groupmod(1M)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/groupdel.8 b/man/ja/groupdel.8
new file mode 100644 (file)
index 0000000..93831b3
--- /dev/null
@@ -0,0 +1,64 @@
+.\" Copyright 1991 - 1993, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: groupdel.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH GROUPDEL 8
+.SH Ì¾Á°
+groupdel \- ¥°¥ë¡¼¥×¤ò¾Ãµî¤¹¤ë
+.SH ½ñ¼°
+.B groupdel
+.I group
+.SH ÀâÌÀ
+\fIgroupdel\fR¥³¥Þ¥ó¥É¤Ï¡¢¥·¥¹¥Æ¥à¤Î¥¢¥«¥¦¥ó¥È¥Õ¥¡¥¤¥ë¤òÊѹ¹¤·¡¢
+\fIgroup\fR¤Ë°¤¹¤ëÁ´¤Æ¤Î¥¨¥ó¥È¥ê¡¼¤òºï½ü¤¹¤ë¡£
+»ØÄꤵ¤ì¤¿¥°¥ë¡¼¥×¤Ï¸ºß¤·¤Æ¤¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.PP
+Á´¤Æ¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥àÃæ¤Ë»ØÄꤷ¤¿¥°¥ë¡¼¥×¤ÎID¤ò»ý¤Ä¥Õ¥¡¥¤¥ë¤¬»Ä¤Ã¤Æ¤¤¤Ê¤¤
+¤³¤È¤ò¡¢¼êºî¶È¤Ç³Îǧ¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ·Ù¹ð
+¸ºß¤¹¤ë¥æ¡¼¥¶¤Î¼ç¥°¥ë¡¼¥×¤òºï½ü¤·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥°¥ë¡¼¥×¤òºï½ü¤¹¤ëÁ°¤Ë¤½¤Î¥æ¡¼¥¶¤òºï½ü¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/group \- ¥°¥ë¡¼¥×¤Î¾ðÊó
+.br
+/etc/gshadow \- ¥°¥ë¡¼¥×¤Î°ÂÁ´¤Ê¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+\fBchfn(1), chsh(1), useradd(1M), userdel(1M), usermod(1M),
+passwd(1), groupadd(1M), groupmod(1M)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/groupmod.8 b/man/ja/groupmod.8
new file mode 100644 (file)
index 0000000..c7c980f
--- /dev/null
@@ -0,0 +1,70 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: groupmod.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH GROUPMOD 1M
+.SH Ì¾Á°
+groupmod \- ¥°¥ë¡¼¥×¤ËÊѹ¹¤ò²Ã¤¨¤ë
+.SH ½ñ¼°
+.B groupmod
+[ \fB-g\fI gid \fR[ \fB-o\fR ] ]
+[ \fB-n\fI group_name \fR ]
+.I group
+.SH ÀâÌÀ
+\fIgroupmod\fR¥³¥Þ¥ó¥É¤Ï¡¢¥³¥Þ¥ó¥É¥é¥¤¥ó¾å¤Ç»ØÄꤷ¤¿Êѹ¹»ö¹à¤Ë¨¤·¤Æ
+¥·¥¹¥Æ¥à¤Î¥¢¥«¥¦¥ó¥È¥Õ¥¡¥¤¥ë¤ò²þÊѤ¹¤ë¡£
+\fIgroupmod\fR¥³¥Þ¥ó¥É¤Ë»ØÄê¤Ç¤­¤ë¥ª¥×¥·¥ç¥ó¤Ï¼¡¤ÎÄ̤ê
+.IP "\fB-g \fIgid\fR"
+Êѹ¹¤ò¼õ¤±¤ë¥°¥ë¡¼¥×¤ÎIDÈֹ档
+¤³¤ÎÃͤϡ¢\fI-o\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¾ì¹ç°Ê³°¤Ï¡¢Â¾¤È½ÅÊ£¤·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤Þ¤¿¡¢ÈóÉéÃͤǤʤ¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥Ç¥£¥Õ¥©¥ë¥È¤Ç¤Ï¡¢99¤è¤êÂ礭¤¯³î¤Ä¾¤ÎÁ´¤Æ¤Î´û¸¥°¥ë¡¼¥×¤ÎID¤è¤ê¤â
+Â礭¤Ê¤â¤Î¤ÎÃæ¤ÇºÇ¾®¤Î¤â¤Î¤Ç¤¢¤ë¡£
+Êѹ¹Á°¤Î¥°¥ë¡¼¥×ID¤ò»ý¤ÄÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤Ï¡¢¼êºî¶È¤Ç¿·¤·¤¤¥°¥ë¡¼¥×ID¤Ø¤È
+Êѹ¹¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.IP "\fB-n \fIgroup_name\fR"
+¥°¥ë¡¼¥×¤Î̾Á°¤¬\fIgroup\fR¤«¤é\fIgroup_name\fR¤ËÊѹ¹¤µ¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/group \- ¥°¥ë¡¼¥×¤Î¾ðÊó
+.br
+/etc/gshadow \- ¥°¥ë¡¼¥×¤Î°ÂÁ´¤Ê¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+\fBchfn(1), chsh(1), useradd(1M), userdel(1M), usermod(1M),
+passwd(1), groupadd(1M), groupdel(1M)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/grpck.8 b/man/ja/grpck.8
new file mode 100644 (file)
index 0000000..5d3f5b3
--- /dev/null
@@ -0,0 +1,108 @@
+.\" Copyright 1992 - 1993, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: grpck.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH GRPCK 8
+.SH Ì¾Á°
+grpck \- ¥°¥ë¡¼¥×¥Õ¥¡¥¤¥ë¤Î´°Á´À­¤ò¸¡¾Ú¤¹¤ë
+.SH ½ñ¼°
+\fBgrpck\fR [ \fB-r\fR ] [ \fIgroup\fR \fIshadow\fR ]
+.SH DESCRIPTION
+\fBgrpck\fR¥³¥Þ¥ó¥É¤Ï¥·¥¹¥Æ¥à¤Îǧ¾Ú¾ðÊ󤬴°Á´¤Ê¤â¤Î¤«¤É¤¦¤«¤Î¸¡¾Ú¤ò¹Ô¤¦¡£
+\fB/etc/group\fRµÚ¤Ó\fB/etc/gshadow\fR¥Õ¥¡¥¤¥ëÃæ¤ÎÁ´¤Æ¤Î¥¨¥ó¥È¥ê¡¼¤ËÂФ·¤Æ¡¢
+½ñ¼°¤¬Àµ¤·¤¤¤«¡¢µÚ¤Ó³ÆÍó¤Ëµ­¤µ¤ì¤Æ¤¤¤ë¥Ç¡¼¥¿¤ÏÍ­¸ú¤Ê¤â¤Î¤«¤É¤¦¤«¤Î¸¡¾Ú¤¬
+¹Ô¤Ê¤ï¤ì¤ë¡£
+½ñ¼°¤¬Àµ¤·¤¯¤Ê¤«¤Ã¤¿¤êÄûÀµÉÔǽ¤Ê¸í¤ê¤ò´Þ¤à¥¨¥ó¥È¥ê¡¼¤Ïºï½ü¤òÂ¥¤µ¤ì¤ë¡£
+.P
+³Æ¡¹¤Î¥¨¥ó¥È¥ê¡¼¤ËÂФ·¤Æ
+.sp
+.in +.5i
+- Íó¤Î¿ô¤¬Àµ¤·¤¤¤«
+.br
+- ¥°¥ë¡¼¥×̾¤Ë½ÅÊ£¤¬¤Ê¤¤¤«
+.br
+- ¥á¥ó¥Ð¡¼µÚ¤Ó´ÉÍý¼Ô¤Î¥ê¥¹¥È¤¬Àµ¤·¤¤¤«
+.in -.5i
+Åù¤Î¥Á¥§¥Ã¥¯¤¬¹Ô¤ï¤ì¤ë¡£
+.sp
+.P
+Íó¤Î¿ô¤¬Àµ¤·¤¤¤³¤ÈµÚ¤Ó¥°¥ë¡¼¥×̾¤Î½ÅÊ£¤¬¤Ê¤¤¤³¤È¤¬ºÇ¤â½ÅÍפǤ¢¤ë¡£
+Íó¤Î¿ô¤¬Àµ¤·¤¯¤Ê¤¤¾ì¹ç¡¢¤½¤Î¹Ô¤Î¥¨¥ó¥È¥ê¡¼¤òºï½ü¤¹¤ë¤è¤¦Â¥¤µ¤ì¤ë¡£
+ºï½ü¤ËƱ°Õ¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¤½¤ì°Ê¹ß¤Î¥Á¥§¥Ã¥¯¤Ï̵»ë¤µ¤ì¤ë¡£
+½ÅÊ£¤·¤¿¥°¥ë¡¼¥×̾¤¬¤¢¤Ã¤¿¾ì¹ç¤âºï½ü¤òÂ¥¤µ¤ì¤ë¤¬¡¢¤³¤Î¾ì¹ç¤Ï
+ºï½ü¤·¤Ê¤¯¤Æ¤â¤½¤ì°Ê¹ß¤Î¥Á¥§¥Ã¥¯¤Ï³¹Ô¤µ¤ì¤ë¡£
+¾¤ÎÁ´¤Æ¤Î¥¨¥é¡¼¤ËÂФ·¤Æ¤Ï·Ù¹ð¤¬¤Ê¤µ¤ì¤ë¤Î¤ß¤Ç¤¢¤ê¡¢¤½¤Î¾ì¹ç¤Ï
+¸í¤ê¤òÄûÀµ¤¹¤ë¤¿¤á¤Ë\fBgroupmod\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤è¤¦´«¤á¤é¤ì¤ë¡£
+.P
+\fB/etc/group\fR¥Õ¥¡¥¤¥ë¤ËºîÍѤ¹¤ë¥³¥Þ¥ó¥É¤Ï¡¢²õ¤ì¤¿¤â¤·¤¯¤Ï
+½ÅÊ£¤·¤¿¥¨¥ó¥È¥ê¡¼¤òÊѹ¹¤¹¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+¤½¤Î¤è¤¦¤ÊºÝ¤Ë¸í¤ê¤Î¤¢¤ë¥¨¥ó¥È¥ê¡¼¤òºï½ü¤¹¤ë¤¿¤á¤Ë¤Ï
+\fBgrpck\fR¤òÍѤ¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ¥ª¥×¥·¥ç¥ó
+¥Ç¥£¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fBgrpck\fR¤Ï\fB/etc/group\fR¥Õ¥¡¥¤¥ëµÚ¤Ó
+\fB/etc/gshadow\fR¤ËºîÍѤ¹¤ë¡£
+\fIgroup\fRµÚ¤Ó\fIshadow\fR¥Ñ¥é¥á¡¼¥¿¤òÍѤ¤¤ÆÊ̤Υե¡¥¤¥ë¤òÁªÂò¤¹¤ë
+»ö¤â¤Ç¤­¤ë¡£
+²Ã¤¨¤Æ¡¢\fB-r\fR¥Õ¥é¥Ã¥°¤ò»ØÄꤹ¤ë¤³¤È¤Ë¤è¤ê¡¢
+¥ê¡¼¥É¥ª¥ó¥ê¡¼¥â¡¼¥É¤Ç¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤ë¡£
+¤³¤Î¾ì¹ç¤Ï¡¢Êѹ¹¤ò¹Ô¤¦¤«¤É¤¦¤«¤Î¼ÁÌä¤ËÂФ·¤Æ¤¤¤Á¤¤¤ÁÅú¤¨¤Ê¤¯¤È¤â¡¢
+¼«Æ°Åª¤Ë\fBno\fR¤È²óÅú¤µ¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/group \- ¥°¥ë¡¼¥×¥¢¥«¥¦¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó
+.br
+/etc/gshadow \- °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¡¢µÚ¤Ó¥°¥ë¡¼¥×´ÉÍý¼Ô¤Î¾ðÊó
+.br
+/etc/passwd \- ¥æ¡¼¥¶¤Ë´Ø¤¹¤ë¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+groupmod(1), group(4), passwd(4), shadow(4)
+.SH ÊÖ¤êÃÍ
+\fIgrpck\fR¥³¥Þ¥ó¥É¤Ï°Ê²¼¤ÎÌá¤êÃͤòÊÖ¤·¤Æ½ªÎ»¤¹¤ë:
+.IP 0 5
+À®¸ù
+.IP 1 5
+¹½Ê¸¥¨¥é¡¼
+.IP 2 5
+¸í¤ê¤Î¤¢¤ë¥°¥ë¡¼¥×¥¨¥ó¥È¥ê¡¼¤¬Â¸ºß¤¹¤ë
+.IP 3 5
+¥°¥ë¡¼¥×¥Õ¥¡¥¤¥ë¤ò¥ª¡¼¥×¥ó¤Ç¤­¤Ê¤¤
+.IP 4 5
+¥°¥ë¡¼¥×¥Õ¥¡¥¤¥ë¤ò¥í¥Ã¥¯¤Ç¤­¤Ê¤¤
+.IP 5 5
+¥°¥ë¡¼¥×¥Õ¥¡¥¤¥ë¤ò¹¹¿·¤Ç¤­¤Ê¤¤
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/lastlog.8 b/man/ja/lastlog.8
new file mode 100644 (file)
index 0000000..ac01d0e
--- /dev/null
@@ -0,0 +1,74 @@
+.\" Copyright 1992, Phillip Street and Julianne Frances Haugh
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    @(#)lastlog.8   3.3     08:24:58        29 Sep 1993 (National Guard Release)
+.\"    $Id: lastlog.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\" Updated & Modified Thu Oct 14 1997 by NAKANO Takeo <nakano@apm.seikei.ac.jp>
+.\"
+.TH LASTLOG 8
+.SH Ì¾Á°
+lastlog \- lastlog ¥Õ¥¡¥¤¥ë¤òÄ´¤Ù¤ë
+.SH ½ñ¼°
+.B lastlog
+.RB [ \-u
+.IR uid ]
+.RB [ \-t
+.IR days ]
+.SH ÀâÌÀ
+\fBlastlog\fR ¤ÏºÇ½ª¥í¥°¥¤¥ó¤Îµ­Ï¿¥Õ¥¡¥¤¥ë
+\fI/usr/adm/lastlog\fR ¤ÎÆâÍÆ¤òÀ°·Á¤·¤ÆÉ½¼¨¤¹¤ë¡£
+\fBlogin-name\fR, \fBport\fR, \fBlast login time\fR ¤¬É½¼¨¤µ¤ì¤ë¡£
+¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï (¥Õ¥é¥°¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï) lastlog ¥¨¥ó¥È¥ê¤ò
+UID ½ç¤Ëɽ¼¨¤¹¤ë¡£
+\fB\-u \fIlogin-name\fR ¥Õ¥é¥°¤ò»ØÄꤹ¤ë¤È
+\fIlogin-name\fR ¤Îµ­Ï¿¤À¤±¤¬É½¼¨¤µ¤ì¤ë¡£
+\fB\-t \fIdays\fR ¤ÈÆþÎϤ¹¤ë¤ÈºÇ¶á
+\fIdays\fR Æü°ÊÆâ¤ÎºÇ½ª¥í¥°¥¤¥ó¤òɽ¼¨¤¹¤ë¡£
+\fB\-t\fR ¥Õ¥é¥°¤òÍѤ¤¤ë¤È \fB\-u\fR ¥Õ¥é¥°¤Î»ØÄê¤Ï̵»ë¤µ¤ì¤ë¡£
+.PP
+°ìÅÙ¤â¥í¥°¥¤¥ó¤·¤Æ¤¤¤Ê¤¤¥æ¡¼¥¶¤ËÂФ·¤Æ¤Ï¡¢
+¥Ý¡¼¥È¤È»þ¹ï¤ÎÂå¤ï¤ê¤Ë
+\fB"**Never logged in**"\fR
+¤È¤¤¤¦¥á¥Ã¥»¡¼¥¸¤¬É½¼¨¤µ¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/usr/adm/lastlog \- lastlog µ­Ï¿¥Õ¥¡¥¤¥ë
+.SH ·Ù¹ð
+uid ÈÖ¹æ¤ËÂ礭¤Ê¤È¤Ó¤¬¤¢¤ë¤È¡¢
+lastlog ¥×¥í¥°¥é¥à¤ÏĹ»þ´Ö¥¹¥¯¥ê¡¼¥ó¤Ë²¿¤â½ÐÎϤ·¤Ê¤¤¤Þ¤Þ
+¼Â¹Ô¤ò³¤±¤ë (¤Ä¤Þ¤ê mmdf=800 ¤ÇºÇ¸å¤Î uid=170¤Î¾ì¹ç¡¢
+uid 171-799 ¤Î´Ö¥×¥í¥°¥é¥à¤Ï²¿¤â½ÐÎϤ·¤Ê¤¤¤Î¤Ç¡¢
+¥Ï¥ó¥°¤·¤¿¤è¤¦¤Ë¸«¤¨¤ë)¡£
+.SH Ãø¼Ô
+Julianne Frances Haugh (jfh@tab.com)
+.br
+Phillip Street
+
diff --git a/man/ja/login.1 b/man/ja/login.1
new file mode 100644 (file)
index 0000000..0e7f120
--- /dev/null
@@ -0,0 +1,180 @@
+.\" Copyright 1989 - 1994, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: login.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH LOGIN 1
+.SH Ì¾Á°
+login \- ¥·¥¹¥Æ¥à¾å¤Ë¥»¥Ã¥·¥ç¥ó¤ò³«¤¯
+.SH ½ñ¼°
+.B login
+[ username [ environmental-variables ] ]
+.SH ÀâÌÀ
+.I login
+¤Ï¥·¥¹¥Æ¥à¤Ë¿·¤¿¤Ë¥»¥Ã¥·¥ç¥ó¤ò³«¤¯¤¿¤á¤ËÍѤ¤¤é¤ì¤ë¡£
+Ä̾ï¤Ï¡¢¥æ¡¼¥¶¤ÎüËö¤Ëɽ¼¨¤µ¤ì¤ë
+.B login:
+¤È¤¤¤¦¥×¥í¥ó¥×¥È¤Ë±þ¤¨¤ë»ö¤Ë¤è¤Ã¤Æ¼«Æ°Åª¤Ëµ¯Æ°¤µ¤ì¤ë¡£
+.I login
+¤Ï¥·¥§¥ë¤Ë¤Î¤ß¸ÂÄꤵ¤ì¤Æ¤ª¤ê¡¢¥µ¥Ö¥×¥í¥»¥¹¤È¤·¤Æµ¯Æ°¤¹¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+ŵ·¿Åª¤Ë¤Ï¡¢¥·¥§¥ë¤Ï
+.I login
+¤ò
+\fBexec login\fR¤È¸«Ðö¤¹¤Î¤Ç¡¢¥æ¡¼¥¶¤Ï¸½ºß¤Î¥·¥§¥ë¤«¤éÈ´¤±¤ë¤³¤È¤Ë¤Ê¤ë¡£
+¥í¥°¥¤¥ó¥·¥§¥ë°Ê³°¤«¤é\fIlogin\fR¤òµ¯Æ°¤·¤è¤¦¤È¤¹¤ë¤È¡¢¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤¬
+ɽ¼¨¤µ¤ì¤ë¡£
+.PP
+\fBlogin:\fR¥×¥í¥ó¥×¥È¤«¤éµ¯Æ°¤·¤¿ºÝ¤Ï¡¢¥æ¡¼¥¶Ì¾¤Ë³¤¤¤Æ´Ä¶­ÊÑ¿ô¤òÆþÎÏ
+¤¹¤ë»ö¤â¤Ç¤­¤ë¡£
+¤½¤ì¤é¤òÆþÎϤ¹¤ë¾ì¹ç¤Ï\fBNAME=VALUE\fR¤È¤¤¤¦½ñ¼°¤Ç¹Ô¤¦¡£
+¤³¤ÎÊýË¡¤ÇÁ´¤Æ¤ÎÊÑ¿ô¤òÀßÄê¤Ç¤­¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£
+ÀßÄê¤Ç¤­¤Ê¤¤¤â¤Î¤ÎÂåɽÎã¤È¤·¤Æ¡¢\fBPATH\fR¡¢\fBHOME\fRµÚ¤Ó\fBSHELL\fR¤¬
+¤¢¤ë¡£
+²Ã¤¨¤Æ¡¢¥í¥°¥¤¥ó¥·¥§¥ë¤¬\fB/bin/sh\fR¤Î¾ì¹ç¤Ï\fBIFS\fR¤ÎÀßÄê¤â
+¹Ô¤¦»ö¤¬½ÐÍè¤Ê¤¤¡£
+.PP
+¼¡¤¤¤Ç¡¢É¬Íפʤé¤Ð¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòÂ¥¤µ¤ì¤ë¡£
+¥Ñ¥¹¥ï¡¼¥É¤òÌÀ¤«¤·¤Æ¤·¤Þ¤ï¤Ê¤¤¤¿¤á¤Ë¡¢¥¨¥³¡¼¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+¿ô²ó°Ê¾å¥Ñ¥¹¥ï¡¼¥ÉÆþÎϤ˼ºÇÔ¤¹¤ë¤È\fIlogin\fR¤Ï½ªÎ»¤·ÄÌ¿®¤ÎÀܳ¤Ï
+ÀÚÃǤµ¤ì¤Æ¤·¤Þ¤¦¡£
+.PP
+¥¢¥«¥¦¥ó¥È¤ËÂФ·¤Æ¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
+Àè¤Ë¿Ê¤àÁ°¤Ë¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ÎÀßÄê¤òÂ¥¤µ¤ì¤ë¤³¤È¤â¤¢¤ë¡£
+¥»¥Ã¥·¥ç¥ó¤ò³¤±¤ë¤¿¤á¤Ë¤Ï¸Å¤¤¥Ñ¥¹¥ï¡¼¥ÉµÚ¤Ó¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤òÆþÎÏ
+¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¾Ü¤·¤¤¾ðÊó¤Ï\fIpasswd(1)\fR¤ò»²¾È¤»¤è¡£
+.PP
+¥í¥°¥¤¥ó¤ËÀ®¸ù¤¹¤ë¤È¡¢¥·¥¹¥Æ¥à¤Ë´Ø¤¹¤ë¾ðÊó¤ä¥á¥¤¥ë¤Î̵ͭ¤¬É½¼¨¤µ¤ì¤ë¡£
+¥í¥°¥¤¥ó¥Ç¥£¥ì¥¯¥È¥ê¤ËŤµ0¤Î¥Õ¥¡¥¤¥ë\fI.hushlogin\fR¤òºî¤Ã¤Æ¤ª¤¯¤³¤È¤Ç¡¢
+¥·¥¹¥Æ¥à¤Î¥á¥Ã¥»¡¼¥¸¥Õ¥¡¥¤¥ë¡¢Â¨¤Á\fI/etc/motd\fR¤¬É½¼¨¤µ¤ì¤Ê¤¯¤¹¤ë¤³¤È
+¤â½ÐÍè¤ë¡£
+¥á¥¤¥ë¤Ë´Ø¤¹¤ë¥á¥Ã¥»¡¼¥¸¤È¤·¤Æ¤Ï¡¢¥á¥¤¥ë¥Ü¥Ã¥¯¥¹¤Î¾õÂ֤ˤè¤Ã¤Æ
+"\fIYou have new mail.\fR"¡¢
+"\fIYou have mail.\fR"¡¢¤â¤·¤¯¤Ï "\fINo Mail.\fR"¤Î¤¤¤º¤ì¤¬É½¼¨¤µ¤ì¤ë¡£
+.PP
+¥æ¡¼¥¶µÚ¤Ó¥°¥ë¡¼¥×¤ÎID¤Ï\fI/etc/passwd\fR¥Õ¥¡¥¤¥ëÃæ¤Ëµ­ºÜ¤µ¤ì¤Æ¤¤¤ëÃÍ
+¤Ë¤è¤Ã¤ÆÀßÄꤵ¤ì¤ë¡£
+\fB$HOME\fR¡¢\fB$SHELL\fR¡¢\fB$PATH\fR¡¢\fB$LOGNAME\fRµÚ¤Ó\fB$MAIL\fR¤ÎÃÍ
+¤Ï¥Ñ¥¹¥ï¡¼¥É¥¨¥ó¥È¥ê¡¼Ãæ¤ÎÂбþ¤¹¤ëÍó¤Ëµ­¤µ¤ì¤¿Ãͤˤè¤Ã¤ÆÀßÄꤵ¤ì¤ë¡£
+ulimit¡¢umaskµÚ¤ÓniceÃͤòGECOSÍó¤Î¥¨¥ó¥È¥ê¡¼¤Ë¤è¤Ã¤ÆÀßÄꤹ¤ë¤³¤È¤â¤Ç¤­¤ë¡£
+.PP
+¥¤¥ó¥¹¥È¥ì¡¼¥·¥ç¥ó¤Ë¤è¤Ã¤Æ¤Ï¡¢
+tty¥Ç¥Ð¥¤¥¹¤ÎüËö¤Î¼ïÎà¤Ë¤¢¤ï¤»¤Æ¡¢
+´Ä¶­ÊÑ¿ô\fB$TERM\fR¤¬
+\fI/etc/ttytype\fR¤Ë»ØÄꤵ¤ì¤¿Ä̤ê¤Ë½é´ü²½¤µ¤ì¤ë¡£
+.PP
+¥³¥Þ¥ó¥É¥¤¥ó¥¿¥×¥ê¥¿¤Î½é´ü²½¥¹¥¯¥ê¥×¥È¤¬¼Â¹Ô¤µ¤ì¤ë¤³¤È¤â¤¢¤ë¡£
+¤³¤Îµ¡Ç½¤Ë¤Ä¤¤¤Æ¤Î¾Ü¤·¤¤¾ðÊó¤ÏŬÅö¤Ê¥Þ¥Ë¥å¥¢¥ë¥»¥¯¥·¥ç¥ó¤ò»²¾È¤Î¤³¤È¡£
+.SH ·Ù¹ð
+.PP
+¤³¤ÎÈǤÎ\fIlogin\fR¤Ë¤Ï¿¤¯¤Î¥³¥ó¥Ñ¥¤¥ë»þ¥ª¥×¥·¥ç¥ó¤¬¤¢¤ë¤¬¡¢
+¥µ¥¤¥È¤Ë¤è¤Ã¤Æ¤Ï¡¢¤½¤Î¤¦¤Á¤Î¤¤¤¯¤Ä¤«¤·¤«»È¤ï¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤â¤¢¤ë¡£
+.PP
+¥·¥¹¥Æ¥à¤ÎÀßÄê¤Î°ã¤¤¤Ë¤è¤Ã¤Æ¾åµ­¥Õ¥¡¥¤¥ë¤Îºß½è¤Ï¤«¤ï¤ë¡£
+.SH shadow¥í¥°¥¤¥ó¥×¥í¥°¥é¥à¤Ç¤Î¥æ¡¼¥¶À©¸Â¤ÎÀßÄêÊýË¡
+.PP
+¤Þ¤º¡¢¥ê¥½¡¼¥¹¤ËÂФ·¤Æ²Ý¤·¤¿¤¤À©¸Â¤òµ­¤·¤¿¡¢root¤Î¤ß¤¬ÆÉ¤à¤³¤È¤Î½ÐÍè¤ë
+¥Õ¥¡¥¤¥ë(¥Ç¥£¥Õ¥©¥ë¥È¤Ç¤Ï\fB/etc/limits\fR¡¢
+¼ã¤·¤¯¤Ïconfig.hÃæ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ëLIMITS_FILE¤Ç»ØÄꤷ¤¿¤â¤Î)¤òºî¤ë¡£
+¥Ç¥£¥Õ¥©¥ë¥È¤Ç¤Ï¡¢'root'¤Ë¤Ïquota¤ÎÀ©¸Â¤Ï²Ý¤µ¤ì¤Ê¤¤¡£
+¼ÂºÝ¤Î¤È¤³¤í¡¢¤³¤Î¼êË¡¤Ë¤è¤Ã¤Æroot¤ÈƱ¸¢¤Î¥¢¥«¥¦¥ó¥È(UID¤¬0¤Î¥¢¥«¥¦¥ó¥È)
+¤ËÀ©¸Â¤ò²Ý¤¹¼êΩ¤Æ¤Ï¸ºß¤·¤Ê¤¤¡£
+.PP
+³Æ¹Ô¤Ë¤Ï°Ê²¼¤Î½ñ¼°¤Ç¥æ¡¼¥¶¤Ø¤ÎÀ©¸Â¤ò½ñ¤¤¤Æ¤ª¤¯¡£
+.br
+\fBuser LIMITS_STRING\fR
+.PP
+\fBLIMITS_STRING\fR¤Ï¥ê¥½¡¼¥¹¤ËÂФ¹¤ëÀ©¸Â¤Î¥ê¥¹¥È¤òÏ¢·ë¤·¤¿
+ʸ»úÎó¤Ç¤¢¤ë¡£
+³ÆÀ©¸Â¤Ï¼±Ê̻Ұìʸ»ú¤È¤½¤ì¤Ë³¤¯À©¸Â¿ôÃͤˤè¤Ã¤Æ»ØÄꤹ¤ë¡£
+¼±Ê̻ҤȤ·¤ÆÍ­¸ú¤Ê¤â¤Î¤Ï:
+.br
+\fBC\fR: core¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤ÎºÇÂçÃÍ (KB)
+.br
+\fBD\fR: ºÇÂç¤Î¥Ç¡¼¥¿¥µ¥¤¥º (KB)
+.br
+\fBF\fR: ºÇÂç¤Î¥Õ¥¡¥¤¥ë¥µ¥¤¥º (KB)
+.br
+\fBM\fR: ¥á¥â¥êÃæ¤ÇÀêÍ­¤¹¤ë¤³¤È¤Î½ÐÍè¤ë¥¢¥É¥ì¥¹¶õ´Ö¤ÎºÇÂçÃÍ (KB)
+.br
+\fBN\fR: ³«¤¯¤³¤È¤Î½ÐÍè¤ë¥Õ¥¡¥¤¥ë¿ô¤ÎºÇÂçÃÍ
+.br
+\fBR\fR: ¾ïÃ󤵤»¤é¤ì¤ëºÇÂ祵¥¤¥º (KB)
+.br
+\fBS\fR: ºÇÂç¤Î¥¹¥¿¥Ã¥¯¥µ¥¤¥º (KB)
+.br
+\fBT\fR: ºÇÂçCPU¥¿¥¤¥à (ʬ)
+.br
+\fBU\fR: ºÇÂç¥×¥í¥»¥¹¿ô
+.br
+\fBL\fR: ¥í¥°¥¤¥ó½ÐÍè¤ë¿ô¤ÎºÇÂçÃÍ
+.PP
+Î㤨¤Ð¡¢\fBL2D2048N5\fR¤ÏÀµ¤·¤¤\fBLIMITS_STRING\fR¤Ç¤¢¤ë¡£
+.PP
+¥Ç¥£¥Õ¥©¥ë¥È¤Î¥¨¥ó¥È¥ê¡¼¤Ï'\fB*\fR'¤È¤¤¤¦¥æ¡¼¥¶Ì¾¤Çɽ¤µ¤ì¤ë¡£
+LIMITS_FILEÃæ¤ËÊ£¿ô¤Î'¥Ç¥£¥Õ¥©¥ë¥È'¥¨¥ó¥È¥ê¡¼¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
+ºÇ¸å¤Î¤â¤Î¤¬¥Ç¥£¥Õ¥©¥ë¥È¥¨¥ó¥È¥ê¡¼¤È¤·¤ÆÍѤ¤¤é¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/utmp \- ¸½ºß¤Î¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥ó¤Î¥ê¥¹¥È
+.br
+/etc/wtmp \- Ä¾Á°¤Î¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥ó¤Î¥ê¥¹¥È
+.br
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Î¾ðÊó
+.br
+/etc/shadow \- shadow¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥ÉµÚ¤Ó¡¢´ü¸Â¤Î¾ðÊó
+.br
+/etc/motd \- ¥·¥¹¥Æ¥à¥á¥Ã¥»¡¼¥¸¥Õ¥¡¥¤¥ë
+.br
+/etc/ttytype \- Ã¼Ëö¤Î¼ïÎà¤Î¥ê¥¹¥È
+.br
+/etc/limits \- ¥æ¡¼¥¶¤Ë²Ý¤¹¥·¥¹¥Æ¥à¥ê¥½¡¼¥¹¤Ø¤ÎÀ©¸Â
+.br
+$HOME/.profile \- ¥Ç¥£¥Õ¥©¥ë¥È¥·¥§¥ë¤Î½é´ü²½¥¹¥¯¥ê¥×¥È
+.br
+$HOME/.hushlogin \- ¥·¥¹¥Æ¥à¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨¤ò¤È¤á¤ë
+.br
+.SH ´ØÏ¢¥³¥Þ¥ó¥É
+.PP
+getty(1M),
+mail(1),
+passwd(1),
+sh(1),
+su(1),
+d_passwd(4),
+passwd(4)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/login.access.5 b/man/ja/login.access.5
new file mode 100644 (file)
index 0000000..e03c169
--- /dev/null
@@ -0,0 +1,54 @@
+.\" this is comment
+.Dd April 30, 1994
+.Dt LOGIN.ACCESS 5
+.\" .Dt SKEY.ACCESS 5
+.\" .Os FreeBSD 1.2
+.Sh Ì¾Á°
+.Nm login.access
+.Nd ¥í¥°¥¤¥ó¥¢¥¯¥»¥¹¤ò¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¥Æ¡¼¥Ö¥ë
+.SH ÀâÌÀ
+.Nm login.access
+¥Õ¥¡¥¤¥ë¤Ë¤Ï¡¢¥í¥°¥¤¥ó¤òµö²ÄËô¤ÏµñÀ䤹¤ë(¥æ¡¼¥¶, ¥Û¥¹¥È)¤ÎÁȵڤÓ/Ëô¤Ï
+(¥æ¡¼¥¶, tty)¤ÎÁȤߤ¢¤ï¤»¤ò»ØÄꤹ¤ë¡£
+.Pp
+狼¤¬¥í¥°¥¤¥ó¤·¤¿ºÝ¤Ï¡¢
+.Nm login.access
+¥Õ¥¡¥¤¥ë¤¬¥¹¥­¥ã¥ó¤µ¤ì¡¢ºÇ½é¤ËÉä¹ç¤¹¤ë(¥æ¡¼¥¶,¥Û¥¹¥È)¤ÎÁȹ礻¡¢¤â¤·¤¯¤Ï
+¥Í¥Ã¥È¥ï¡¼¥¯·Ðͳ¤Î¥í¥°¥¤¥ó¤Ç¤Ê¤¤¾ì¹ç¤ÏºÇ½é¤ËÉä¹ç¤¹¤ë(¥æ¡¼¥¶, tty)¤ÎÁȤß
+¹ç¤ï¤»¤òõ¤¹¡£
+¤³¤Î¥Æ¡¼¥Ö¥ë¤Îµö²ÄÍó¤Ë¤è¤Ã¤Æ¥í¥°¥¤¥ó¤¬µö²Ä¤µ¤ì¤ë¤«µñÀ䤵¤ì¤ë¤«¤¬·è¤Þ¤ë¡£
+.Pp
+¥í¥°¥¤¥ó¥¢¥¯¥»¥¹À©¸æÉ½¤Î³Æ¹Ô¤Ë¤Ï3¤Ä¤ÎÍ󤬤¢¤ê¡¢Ê¸»ú":"¤Çʬ³ä¤µ¤ì¤Æ¤¤¤ë:
+µö²Ä:¥æ¡¼¥¶:Àܳ¸µ
+
+ºÇ½é¤ÎÍó¤Ï"+"(¥¢¥¯¥»¥¹¤òµö²Ä¤¹¤ë)¤â¤·¤¯¤Ï"-"(¥¢¥¯¥»¥¹¤òµñÈݤ¹¤ë)¤Ç¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£
+ÆóÈÖÌܤÎÍó¤Ï°ì¤Ä°Ê¾å¤Î¥í¥°¥¤¥ó̾¤Þ¤¿¤Ï¥°¥ë¡¼¥×̾¡¢¤â¤·¤¯¤ÏALL(ɬ¤ºÉä¹ç¤¹¤ë)
+¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+»°ÈÖÌܤÎÍó¤Ï¡¢°ì¤Ä°Ê¾å¤Îtty̾(¥Í¥Ã¥È¥ï¡¼¥¯·Ðͳ¤Ç¤Ê¤¤¥í¥°¥¤¥ó¤Î¾ì¹ç)¡¢
+¥Û¥¹¥È̾¡¢("."¤Ç»Ï¤Þ¤ë)¥É¥á¥¤¥ó̾¡¢¥Û¥¹¥È¥¢¥É¥ì¥¹¡¢¤Þ¤¿¤Ï("."¤Ç½ª¤ï¤ë)
+¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Î¥Í¥Ã¥È¥ï¡¼¥¯Èֹ椫¤é¤Ê¤ë¥ê¥¹¥È¡¢ALL(ɬ¤ºÉä¹ç¤¹¤ë)Ëô¤Ï
+LOCAL("."¤òÁ´¤¯´Þ¤Þ¤Ê¤¤Ê¸»úÎóÁ´¤Æ¤ËÉä¹ç¤¹¤ë)¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+NIS¤ò±¿ÍѤ·¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Û¥¹¥ÈËô¤Ï¥æ¡¼¥¶¤Î¥Ñ¥¿¡¼¥óÃæ¤Ë@netgroupname
+¤ò»ØÄꤹ¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+
+EXCEPT¥ª¥Ú¥ì¡¼¥¿¤òÍѤ¤¤ë¤³¤È¤Ë¤è¤ê¡¢¤È¤Æ¤â´Êά¤Ë¥ë¡¼¥ë¤ò»ØÄꤹ¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+
+¥í¥°¥¤¥ó¤¹¤ë¥æ¡¼¥¶Ì¾¤¬¤¤¤º¤ì¤Î̾Á°¤È¤âÉä¹ç¤·¤Ê¤¤¾ì¹ç¤Î¤ß¡¢group¥Õ¥¡¥¤¥ë
+¤ò¸¡º÷¤¹¤ë¡£
+¥æ¡¼¥¶Ì¾¤¬Íۤ˵­¤µ¤ì¤Æ¤¤¤ë¥°¥ë¡¼¥×¤Ë¤Î¤ßÉä¹ç¤¹¤ë: ¥×¥í¥°¥é¥à¤Ï¥æ¡¼¥¶¤Î
+¼ç¥°¥ë¡¼¥×¤ÎidÈÖ¹æËø¤Ï¸«¤Ê¤¤¡£
+.Sh ¥Õ¥¡¥¤¥ë
+.Bl -tag -width /etc/login.access -compact
+.It Pa /etc/login.access
+.Nm login.access
+¥Õ¥¡¥¤¥ë¤Ï
+.Pa /etc
+¤ËÃÖ¤«¤ì¤Æ¤¤¤ë¡£
+.El
+.SH ´ØÏ¢¹àÌÜ
+.Xr login 1
+.SH Ãø¼Ô
+Guido van Rooij
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/login.defs.5 b/man/ja/login.defs.5
new file mode 100644 (file)
index 0000000..e5f00dc
--- /dev/null
@@ -0,0 +1,447 @@
+.\" Copyright 1991 - 1993, John F. Haugh II and Chip Rosenthal
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: login.defs.5,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH LOGIN 5
+.SH Ì¾Á°
+/etc/login.defs \- Login¤ÎÀßÄê
+.SH ÀâÌÀ
+.I /etc/login.defs
+¥Õ¥¡¥¤¥ë¤Ïshadow login suite¤ËÂФ¹¤ë¥µ¥¤¥È¸ÇÍ­¤ÎÀßÄê¤ò¹Ô¤¦¤¿¤á¤Î¤â¤Î¤Ç¤¢¤ë¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤Ïɬ¤ºÂ¸ºß¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤¬Ìµ¤¯¤È¤â¥·¥¹¥Æ¥à±¿ÍѤϲÄǽ¤Ç¤¢¤ë¤¬¡¢¤ª¤½¤é¤¯Ë¾¤Þ¤Ê¤¤
+·ë²Ì¤È¤Ê¤ë¤À¤í¤¦¡£
+.PP
+¤³¤Î¥Õ¥¡¥¤¥ë¤ÏÆÉ¤ß¼è¤ê²Äǽ¤Ê¥Æ¥­¥¹¥È¥Õ¥¡¥¤¥ë¤Ç¡¢¥Õ¥¡¥¤¥ëÃæ¤Î°ì¹Ô¤Ë¤Ä¤­
+°ì¤Ä¤Î¥Ñ¥é¥á¥¿¤òÀßÄꤷ¤Æ¤¤¤ë¡£
+³Æ¹Ô¤ÏÀßÄê¥Ñ¥é¥á¡¼¥¿¤Î̾Á°µÚ¤Ó¤½¤ÎÃͤ¬¶õÇò¤Ç¶èÀÚ¤é¤ì¤¿¤â¤Î¤«¤é¤Ê¤ë¡£
+¶õ¹ÔµÚ¤Ó¥³¥á¥ó¥È¹Ô¤Ï̵»ë¤µ¤ì¤ë¡£
+¥³¥á¥ó¥È¹Ô¤Ï'#'µ­¹æ¤Ç»Ï¤Þ¤ë¡£µ­¹æ'#'¤Ï¤½¤Î¹Ô¤ÎºÇ½é¤Î¶õÇò°Ê³°¤Îʸ»ú
+¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.PP
+¥Ñ¥é¥á¡¼¥¿ÃͤϻͤĤη¿¤ò¼è¤ë¤³¤È¤¬½ÐÍè¤ë: Ê¸»úÎó¡¢¥Ö¡¼¥ë·¿¡¢¿ô¡¢ÇÜÀºÅÙ¿ô
+¤Ç¤¢¤ë¡£
+ʸ»úÎó¤Ë¤ÏÁ´¤Æ¤Î°õºþ²Äǽʸ»ú¤ò»È¤¦¤³¤È¤¬½ÐÍè¤ë¡£
+¥Ö¡¼¥ë·¿¥Ñ¥é¥á¡¼¥¿¤ÎÃͤÏ``yes''Ëô¤Ï``no''¤Î¤¤¤º¤ì¤«¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+̤ÄêµÁ¤Î¡¢¤â¤·¤¯¤Ï¾åµ­°Ê³°¤ÎÃͤΥ֡¼¥ë·¿¥Ñ¥é¥á¡¼¥¿¤ÎÃͤÏ``no''¤È¤µ¤ì¤ë¡£
+(ñÀºÅÙµÚ¤ÓÇÜÀºÅÙ)¿ô¤Ï¡¢½½¿Ê¿ô¡¢(¿ôÃͤÎÁ°¤Ë``0''¤òÉÕ¤±¤¿)Ȭ¿Ê¿ô¤Þ¤¿¤Ï
+(¿ôÃͤÎÁ°¤Ë``0x''¤òÉÕ¤±¤¿)½½Ï»¿Ê¿ô¤Î¤¤¤º¤ì¤«¤Ç»ØÄꤹ¤ë¡£
+ñµÚ¤ÓÇÜÀºÅÙ¿ô¥Ñ¥é¥á¡¼¥¿¤ÎºÇÂçÃͤϷ׻»µ¡¤Ë°Í¸¤¹¤ë¡£
+.PP
+°Ê²¼¤Ë¼¨¤¹¤è¤¦¤ÊÀßÄê¹àÌܤ¬¤¢¤ë:
+.\"
+.IP "CONSOLE (ʸ»úÎó)"
+¤³¤Î¹àÌܤò»ØÄꤹ¤ë¤È¡¢root¤¬¥í¥°¥¤¥ó¤Ç¤­¤ë¥³¥ó¥½¡¼¥ë¥Ç¥Ð¥¤¥¹¤òÀ©¸Â¤¹¤ë
+¤³¤È¤¬½ÐÍè¤ë¡£
+¤³¤³¤Ç»ØÄꤷ¤¿ÀßÄê¤òËþ¤¿¤µ¤Ê¤¤¥³¥ó¥½¡¼¥ë¥Ç¥Ð¥¤¥¹¤«¤éroot¤È¤·¤Æ¥í¥°¥¤¥ó
+¤·¤è¤¦¤È¤·¤Æ¤âµñÈݤµ¤ì¤ë¡£¤³¤Î¹àÌܤÎÀßÄê¤ÏÆó¤Ä¤Î·Á¼°¤òÍѤ¤¤ë¤³¤È¤¬½ÐÍè¡¢
+¤Ò¤È¤Ä¤Ï
+.sp
+.ft CW
+       CONSOLE /etc/consoles
+.ft P
+.sp
+¤ÎÍͤÊÀäÂХѥ¹¤òÍѤ¤¤¿»ØÄêË¡¡¢
+º£°ì¤Ä¤Ï
+.sp
+.ft CW
+       CONSOLE console:tty01:tty02:tty03:tty04
+.ft P
+.sp
+¤ÎÍͤ˥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤¿¥ê¥¹¥È¤ÇüËöÀþ¤ò»ØÄꤹ¤ëÊýË¡¤Ç¤¢¤ë¡£
+¥Ñ¥¹Ì¾¤ò»ØÄꤹ¤ë¾ì¹ç¤Ï¡¢°ì¹Ô¤Ç°ì¤Ä¤ÎüËöÀܳÀþ¤ò»ØÄꤷ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬Ì¤ÄêµÁ¤Ç¤¢¤ë¾ì¹ç¤ä»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¡¢
+root¤ÏÁ´¤Æ¤ÎüËö¥Ç¥Ð¥¤¥¹¤«¤é¥í¥°¥¤¥ó½ÐÍè¤Æ¤·¤Þ¤¦¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¤ä²õ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ïroot¤È¤·¤Æ¤ÎÉÔÀµ¤Ê¥í¥°¥¤¥ó¤¬
+½ÐÍè¤Æ¤·¤Þ¤¦¤³¤È¤Ë¤Ê¤ë¤Î¤Ç¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ï¥×¥í¥Æ¥¯¥È¤ò¤«¤±¤Æ¤ª¤«¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£
+¥»¥­¥å¥ê¥Æ¥£¤¬Èó¾ï¤Ë½ÅÍפǤ¢¤ë¾ì¹ç¤Ï¡¢¤³¤Î¤è¤¦¤Ê¥¢¥¿¥Ã¥¯¤Î²ÄǽÀ­¤ò̵¤¯¤¹
+¤¿¤á¤Ë¡¢¥³¥í¥ó¤Ç¶èÀڤä¿·Á¼°¤òÍѤ¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.\"
+.IP "DIALUPS_CHECK_ENAB (¥Ö¡¼¥ëÃÍ)"
+Ãͤ¬
+.I yes
+¤Ç¡¢¤«¤Ä
+.I /etc/dialups
+¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤Ç»ØÄꤷ¤¿¥À¥¤¥¢¥ë¥¢¥Ã¥×¥Ç¥Ð¥¤¥¹
+¤Ç¤ÏÂèÆó¤Î¥Ñ¥¹¥ï¡¼¥É¤â»ÈÍѤµ¤ì¤ë¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤Ï¥À¥¤¥¢¥ë¥¢¥Ã¥×ÀܳÀþ¤Î¥ê¥¹¥È¤ò°Ê²¼¤ÎÍͤ˰ì¹Ô¤Ë°ì¤Ä¤º¤Ä
+»ØÄꤷ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤:
+.nf
+.sp
+.ft CW
+       ttyfm01
+       ttyfm02
+       \0\0.
+       \0\0.
+       \0\0.
+.ft P
+.sp
+.fi
+.\"
+.IP "ENV_HZ (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤ÏHZ´Ä¶­ÊÑ¿ô¤ÎÆâÍÆ¤ò»ØÄꤹ¤ë¡£
+»ÈÍÑÎã¤Ï:
+.sp
+       \f(CWENV_HZ     HZ=50\fP
+.sp
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢HZ¤ÎÃͤϽé´ü²½¤µ¤ì¤Ê¤¤¡£
+.\"
+.IP "ENV_PATH (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ï°ìÈ̥桼¥¶¤Î¸¡º÷¥Ñ¥¹¤ËÀßÄꤷ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+UID¤¬¥¼¥í°Ê³°¤Î¥æ¡¼¥¶¤¬¥í¥°¥¤¥ó¤·¤¿¾ì¹ç¡¢´Ä¶­ÊÑ¿ôPATH¤ÎÆâÍÆ¤Ï¤³¤Î
+Ãͤ˽é´ü²½¤µ¤ì¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ïɬ¤ºÉ¬ÍפǤ¢¤ë; ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¸í¤Ã¤¿
+¥Ç¥£¥Õ¥©¥ë¥ÈÃͤËÀßÄꤵ¤ì¤Æ¤·¤Þ¤¦¤À¤í¤¦¡£
+.\"
+.IP "ENV_SUPATH (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ï¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Î¸¡º÷¥Ñ¥¹¤ËÀßÄꤷ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+UID¤¬¥¼¥í¤Î¥æ¡¼¥¶¤¬¥í¥°¥¤¥ó¤·¤¿¾ì¹ç¡¢´Ä¶­ÊÑ¿ôPATH¤ÎÆâÍÆ¤Ï¤³¤Î
+Ãͤ˽é´ü²½¤µ¤ì¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ïɬ¤ºÉ¬ÍפǤ¢¤ë; ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¸í¤ê¤Î¤¢¤êÆÀ¤ë
+¥Ç¥£¥Õ¥©¥ë¥ÈÃͤËÀßÄꤵ¤ì¤Æ¤·¤Þ¤¦¤À¤í¤¦¡£
+.\"
+.IP "ENV_TZ (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï´Ä¶­ÊÑ¿ôTZ¤òºî¤ê½Ð¤¹¤¿¤á¤Î¾ðÊó¤ò»ØÄꤹ¤ë¡£
+¥Ñ¥é¥á¡¼¥¿¤ÎÃͤϡ¢TZ¤Ë»ØÄꤷ¤¿¤¤Ãͤ«¡¢¤³¤Î¾ðÊ󤬵­½Ò¤µ¤ì¤Æ¤¤¤ë¥Õ¥¡¥¤¥ë¤Î
+ÀäÂХѥ¹Ì¾¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+»ÈÍÑÎã¤Ï:
+.sp
+       \f(CWENV_TZ\0\0\0\0TZ=CST6CDT\fP
+.sp
+Ëô¤Ï
+.sp
+       \f(CWENV_TZ\0\0\0\0/etc/tzname\fP
+.sp
+¸ºß¤·¤Ê¤¤¥Õ¥¡¥¤¥ë¤ò»ØÄꤷ¤¿¾ì¹ç¡¢TZ¤Ï¤¢¤ë¥Ç¥£¥Õ¥©¥ë¥ÈÃͤ˽é´ü²½¤µ¤ì¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬Ì¤ÄêµÁ¤Î¾ì¹ç¤ÏTZ¤ÎÃͤϽé´ü²½¤µ¤ì¤Ê¤¤¡£
+.\"
+.IP "ERASECHAR (¿ô)"
+üËö¤Î
+.I erase
+ʸ»ú¤¬¤³¤ÎÃͤ˽é´ü²½¤µ¤ì¤ë¡£
+.I termio
+¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òÈ÷¤¨¤¿¥·¥¹¥Æ¥à(Î㤨¤Ð System V)¤Ç¤Î¤ß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢eraseʸ»ú¤Ï¥Ð¥Ã¥¯¥¹¥Ú¡¼¥¹¤Ë½é´ü²½¤µ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤Ë¤Ä¤¤¤Æ¤ÏKILLCHAR¤ò»²¾È¤»¤è¡£
+.\"
+.IP "FAILLOG_ENAB (¥Ö¡¼¥ëÃÍ)"
+.I yes
+¤ËÀßÄꤷ¤¿¾ì¹ç¤Ï¡¢¥í¥°¥¤¥ó¤Î¼ºÇÔ¤¬
+.I /var/log/faillog
+Ãæ¤Ë
+.I faillog(8)
+¤Î½ñ¼°¤Çµ­Ï¿¤µ¤ì¤ë¡£
+.\"
+.IP "FTMP_FILE (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï¥í¥°¥¤¥ó¼ºÇÔ¤òµ­Ï¿¤¹¤ë¥Õ¥¡¥¤¥ë¤ÎÀäÂХѥ¹Ì¾¤ò»ØÄꤹ¤ë¡£
+¥í¥°¥¤¥ó¼ºÇÔ¤¬È¯À¸¤·¤¿¾ì¹ç¡¢¤½¤Îµ­Ï¿¤¬¤³¤Î¥Õ¥¡¥¤¥ë¤Ë
+.I utmp
+·Á¼°¤Î¥ì¥³¡¼¥É¤ÇÄɲ䵤ì¤ë¡£
+.I /var/log/faillog
+.\" this parameter is not specified then logging will be inhibited.  See
+.\" FAILLOG_ENAB and LOG_UNKFAIL_ENAB for related information.
+¤Ø¤Î¥í¥°¥¤¥ó¼ºÇԤε­Ï¿¤È¤Ï¡¢°Ê²¼¤ÎÅÀ¤Ç°Û¤Ê¤Ã¤Æ¤¤¤ë¤³¤È¤ËÃí°Õ¡£
+¤³¤Îµ¡Ç½¤Ç¤Ï¥í¥°¥¤¥ó¼ºÇÔ¤òÁ´¤Æµ­Ï¿¤¹¤ë¤¬¡¢``faillog''µ¡Ç½¤Ç¤Ï¥í¥°¥¤¥ó¼ºÇÔ
+¾ðÊó¤ò¥æ¡¼¥¶Ëè¤Ëµ­Ï¿¤·¤Æ¹Ô¤¯¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¥í¥®¥ó¥°¤¬ÍÞÀ©¤µ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤ÏFAILLOG_ENAB¤ÈLOG_UNKFAIL_ENAB¤ò»²¾È¤»¤è¡£
+.\"
+.IP "HUSHLOGIN_FILE (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ï``hushlogin''¤Î¾ò·ï¤òÀßÄꤹ¤ë¤¿¤á¤ËÍѤ¤¤ë¡£
+¤³¤ÎÀßÄê¤ò¹Ô¤¦ÊýË¡¤Ë¤ÏÆóÄ̤ꤢ¤ë¡£
+Âè°ì¤ÎÊýË¡¤Ï¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ÎÃͤ¬¥Õ¥¡¥¤¥ë̾¤Ç¤¢¤ê³î¤Ä¤½¤Î¥Õ¥¡¥¤¥ë¤¬
+¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Ë¸ºß¤¹¤ë¾ì¹ç¤Ï``hushlogin''¤Î¾ò·ï¤¬À®Î©¤¹¤ë¡¢
+¤È¤¤¤¦¤â¤Î¤Ç¤¢¤ë¡£
+¥Õ¥¡¥¤¥ë¤ÎÃæ¿È¤Ï̵»ë¤µ¤ì¤ë; ¤½¤ì¤¬Â¸ºß¤¹¤ë»ö¤Î¤ß¤¬``hushlogin''¾ò·ï¤ò
+À®Î©¤µ¤»¤ë¤Î¤Ç¤¢¤ë¡£
+ÂèÆó¤ÎÊýË¡¤Ï¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ÎÃͤ¬ÀäÂХѥ¹Ì¾¤Ç¡¢¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó̾Ëô¤Ï
+¥·¥§¥ë¤¬¤³¤Î¥Õ¥¡¥¤¥ëÃæ¤Ëµ­½Ò¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë``hushlogin''¾ò·ï¤¬À®¤êΩ¤Ä¡¢
+¤È¤¤¤¦¤â¤Î¤Ç¤¢¤ë¡£
+¤³¤Î¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤Ï°Ê²¼¤ÎÍͤʽñ¼°¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤:
+.nf
+.sp
+.ft CW
+       demo
+       /usr/lib/uucp/uucico
+       \0\0.
+       \0\0.
+       \0\0.
+.ft P
+.sp
+.fi
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬Ì¤ÄêµÁ¤Î¾ì¹ç¤Ï¡¢``hushlogin''¾ò·ï¤¬À®Î©¤¹¤ë¤³¤È¤Ï̵¤¤¡£
+``hushlogin''¾ò·ï¤¬À®Î©¤·¤¿¾ì¹ç¡¢¤½¤ÎÆü¤Î¥á¥Ã¥»¡¼¥¸¤Îɽ¼¨¡¢¤â¤Ã¤È¤âºÇ¶á¤Î
+¥í¥°¥¤¥óÀ®¸ùµÚ¤Ó¼ºÇÔ¤Îɽ¼¨¡¢¥á¥¤¥ë¤Î̵ͭ¤Îɽ¼¨¡¢¥Ñ¥¹¥ï¡¼¥É´ü¸Â¤Î¥Á¥§¥Ã¥¯¤Ï
+¹Ô¤ï¤ì¤Ê¤¤¡£
+¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Ëhushlogin¥Õ¥¡¥¤¥ë¤òÃÖ¤«¤»¤ëÊýË¡¤òÍѤ¤¤ë¤È
+¥æ¡¼¥¶¤¬¥Ñ¥¹¥ï¡¼¥É´ü¸Â¤Î¥Á¥§¥Ã¥¯¤ò²óÈò¤Ç¤­¤Æ¤·¤Þ¤¦¤³¤È¤ËÃí°Õ¡£
+´ØÏ¢¤¹¤ë¾ðÊó¤ÏMOTD_FILE, FAILLOG_ENAB, LASTLOG_ENAB, µÚ¤ÓMAIL_CHECK_ENAB
+¤ò»²¾È¤»¤è¡£ 
+.\"
+.IP "KILLCHAR (¿ô)"
+üËö¤Î
+.I kill
+ʸ»ú¤¬¤³¤ÎÃͤ˽é´ü²½¤µ¤ì¤ë¡£
+.I termio
+¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òÈ÷¤¨¤¿¥·¥¹¥Æ¥à(Î㤨¤Ð System V)¤Ç¤Î¤ß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢killʸ»ú¤Ï\s-2CTRL/U\s0¤Ë½é´ü²½¤µ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤Ë¤Ä¤¤¤Æ¤ÏERASECHAR¤ò»²¾È¤»¤è¡£
+.\"
+.IP "LASTLOG_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ò
+.IR yes ,
+¤ËÀßÄꤷ¡¢³î¤Ä¥Õ¥¡¥¤¥ë
+.I /var/log/lastlog
+¤¬Â¸ºß¤¹¤ë¾ì¹ç¡¢¥æ¡¼¥¶¤¬¥í¥°¥¤¥ó¤ËÀ®¸ù¤·¤¿µ­Ï¿¤¬¤³¤Î¥Õ¥¡¥¤¥ë¤Ë»Ä¤µ¤ì¤ë¡£
+¤µ¤é¤Ë¡¢¤³¤Î¥ª¥×¥·¥ç¥ó¤¬¥ª¥ó¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤ÏºÇ¤âºÇ¶á¤Î¥í¥°¥¤¥óÀ®¸ù
+µÚ¤Ó¼ºÇÔÆü»þ¤¬¥æ¡¼¥¶¤Ëɽ¼¨¤µ¤ì¤ë¡£FAILLOG_ENAB¤¬¥ª¥ó¤Ë¤Ê¤Ã¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï
+¥í¥°¥¤¥ó¼ºÇÔ¤Îɽ¼¨¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+``hushlogin''¾ò·ï¤¬À®¤êΩ¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¥í¥°¥¤¥óÀ®¸ù¤â¼ºÇÔ¤âɽ¼¨¤µ¤ì¤Ê¤¤¡£
+.\"
+.IP "LOG_UNKFAIL_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬
+.I yes
+¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¥í¥°¥¤¥ó¼ºÇÔ¤¬µ­Ï¿¤µ¤ì¤ëºÝ¤Ë̤ÅÐÏ¿¤Î¥æ¡¼¥¶Ì¾¤â
+´Þ¤á¤é¤ì¤ë¡£¥»¥­¥å¥ê¥Æ¥£¤ò´í¸±¤Ë»¯¤¹²ÄǽÀ­¤â¤¢¤ë¤³¤È¤ËÃí°Õ; ¤è¤¯¸«¤é¤ì¤ë
+¥í¥°¥¤¥ó¤Î¼ºÇԤˡ¢¥æ¡¼¥¶Ì¾¤È¥Ñ¥¹¥ï¡¼¥É¤òÆþ¤ì´¹¤¨¤ÆÆþÎϤ·¤Æ¤·¤Þ¤¦¤³¤È¤¬
+µó¤²¤é¤ì¤ë¤¬¡¢¤³¤Î¾ì¹ç¥Ñ¥¹¥ï¡¼¥É¤¬¼ºÇÔ¥í¥°¤Ëµ­Ï¿¤µ¤ì¤Æ¤·¤Þ¤¦¡£
+¤³¤Î¥ª¥×¥·¥ç¥ó¤ò¥ª¥Õ¤Ë¤·¤Æ¤ª¤¯¤È¡¢Ì¤ÅÐÏ¿¥æ¡¼¥¶Ì¾¤Ï¥í¥°¥¤¥ó¼ºÇÔ¥á¥Ã¥»¡¼¥¸¤Ë
+µ­Ï¿¤µ¤ì¤Ê¤¤¡£
+.\"
+.IP "MAIL_CHECK_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ò
+.IR yes ,
+¤ËÀßÄꤹ¤ë¤È¡¢¥í¥°¥¤¥ó»þ¤Ë¥æ¡¼¥¶¤Ë¥á¥¤¥ë¥Ü¥Ã¥¯¥¹¤Î¾õÂÖ¤òÄÌÃΤ¹¤ë¡£
+´ØÏ¢¾ðÊó¤ÏMAIL_DIR¤ò»²¾È¤»¤è¡£
+.\"
+.IP "MAIL_DIR (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï¥æ¡¼¥¶¤Î¥á¥¤¥ë¥Ü¥Ã¥¯¥¹¥Õ¥¡¥¤¥ë¤¬ÃÖ¤«¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î
+ÀäÂХѥ¹¤ò»ØÄꤹ¤ë¡£
+¤³¤Î¥Ñ¥¹¤Ë¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó̾¤òÉÕ¤±Â­¤·¤ÆMAIL´Ä¶­ÊÑ¿ô \- ¥æ¡¼¥¶¤Î
+¥á¥¤¥ë¥Ü¥Ã¥¯¥¹¤Ø¤Î¥Ñ¥¹ \- ¤òºî¤ê½Ð¤¹¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ïɬ¤ºÄêµÁ¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤; Ì¤ÄêµÁ¤Î¾ì¹ç¤ÏÀµ¤·¤¯¤Ê¤¤²ÄǽÀ­
+¤Î¤¢¤ë¥Ç¥£¥Õ¥©¥ë¥ÈÃͤ¬»È¤ï¤ì¤ë¡£´ØÏ¢¾ðÊó¤ÏMAIL_CHECK_ENAB¤ò»²¾È¤»¤è¡£
+.\"
+.IP "MOTD_FILE (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï``¤½¤ÎÆü¤Î¥á¥Ã¥»¡¼¥¸''¥Õ¥¡¥¤¥ë¤Ø¤Î¥Ñ¥¹Ì¾¤ò¥³¥í¥ó¤Ç¶èÀڤäÆ
+»ØÄꤹ¤ë¡£
+»ØÄꤷ¤¿¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó»þ¤Ë¥Õ¥¡¥¤¥ë¤ÎÃæ¿È¤¬
+ɽ¼¨¤µ¤ì¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¤â¤·¤¯¤Ï``hushlogin''¥í¥°¥¤¥ó¾ò·ï
+¤¬À®¤êΩ¤Ä¾ì¹ç¤Ë¤Ï¡¢É½¼¨¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+.\"
+.IP "NOLOGINS_FILE (ʸ»úÎó)"
+.\" the user will be disconnected.  If this parameter is not specified
+.\" then this feature will be inhibited.
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤Ïroot°Ê³°¤Î¥í¥°¥¤¥ó¤ò¶Ø»ß¤¹¤ë¥Õ¥¡¥¤¥ë¤ÎÀäÂХѥ¹Ì¾¤ò»ØÄê
+¤¹¤ë¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ë¤Ï¡¢root°Ê³°¤Î¥æ¡¼¥¶¤¬¥í¥°¥¤¥ó¤·¤è¤¦¤È¤·¤¿ºÝ
+¥Õ¥¡¥¤¥ë¤ÎÃæ¿È¤¬É½¼¨¤µ¤ì¡¢¥í¥°¥¤¥ó¤ÏµñÈݤµ¤ì¤ë¡£¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬»ØÄꤵ¤ì¤Æ
+¤¤¤Ê¤¤¾ì¹ç¤Ï¤³¤Îµ¡Ç½¤Ï»ÈÍѤǤ­¤Ê¤¤¡£
+.\"
+.IP "OBSCURE_CHECKS_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬
+.IR yes
+¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹¤ò¼õ¤±ÉÕ¤±¤ëÁ°¤Ë¥×¥í¥°¥é¥à
+.I passwd
+¤¬Í¾Ê¬¤Ë¥Á¥§¥Ã¥¯¤ò¹Ô¤¦¡£
+¹Ô¤ï¤ì¤ë¥Á¥§¥Ã¥¯¤ÏÈó¾ï¤Ëñ½ã¤Ç¤¢¤ê¡¢À§Èó¤È¤âÍѤ¤¤ë¤Ù¤­¤Ç¤¢¤ë¡£
+.I passwd
+¥×¥í¥°¥é¥à¤¬
+.IR root
+¤Ë¤è¤Ã¤Æ¼Â¹Ô¤µ¤ì¤¿¾ì¹ç¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ÎÆñ²òÅÙ¥Á¥§¥Ã¥¯¤Ï¥Ð¥¤¥Ñ¥¹¤µ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤ÏPASS_MIN_LEN¤ò»²¾È¤»¤è¡£
+.\"
+.IP "PASS_MIN_DAYS (¿ô)"
+¥Ñ¥¹¥ï¡¼¥É¤¬Êѹ¹¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ë¤Þ¤Ç¤ÎºÇûÆü¿ô¡£
+¤³¤ÎÆü¿ô¤¬·Ð¤¿¤Ê¤¤¤¦¤Á¤Ë¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤è¤¦¤È¤·¤Æ¤âµñÈݤµ¤ì¤ë¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¥¼¥í¤È¸«Ðö¤µ¤ì¤ë¡£
+.\"
+.IP "PASS_MIN_LEN (¿ô)"
+¥Ñ¥¹¥ï¡¼¥É¤È¤·¤Æµö¤µ¤ì¤ëºÇ¾®¤Îʸ»ú¿ô¡£
+¤³¤ì¤è¤ê¤âû¤¤¥Ñ¥¹¥ï¡¼¥É¤òÀßÄꤷ¤è¤¦¤È¤·¤Æ¤âµñÈݤµ¤ì¤ë¡£
+¥¼¥í¤ËÀßÄꤷ¤Æ¤ª¤¯¤È¤³¤Î¸¡ºº¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¥¼¥í¤È¸«Ðö¤µ¤ì¤ë¡£
+.\"
+.IP "PASS_MAX_DAYS (¿ô)"
+°ì¤Ä¤Î¥Ñ¥¹¥ï¡¼¥É¤ò»È¤¨¤ëºÇĹÆü¿ô¡£¥Ñ¥¹¥ï¡¼¥É¤¬¤³¤ÎÆü¿ô¤è¤ê¤â¸Å¤¤¾ì¹ç¤Ï
+¥¢¥«¥¦¥ó¥È¤¬¥í¥Ã¥¯¤µ¤ì¤ë¡£»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¤¢¤ëÂ礭¤Ê¿ô¤¬ÍѤ¤¤é¤ì¤ë¡£
+.\"
+.IP "PASS_WARN_AGE (¿ô)"
+¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤¬Íè¤ëÁ°¤Ë·Ù¹ð¤òȯ¤¹¤ëÆü¿ô¡£¥¼¥í¤Ë¤·¤Æ¤ª¤¯¤È¡¢ÅöÆü¤Ë¤Î¤ß
+·Ù¹ð¤ò¹Ô¤¤¡¢Éé¿ô¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï·Ù¹ð¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï·Ù¹ð¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+.IP "PORTTIME_CHECKS_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤ò
+.I yes
+¤ËÀßÄꤷ¡¢³î¤Ä
+.I /etc/porttime
+¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤¹¤ë¾ì¹ç¤Ï¡¢¥æ¡¼¥¶¤¬¤½¤Î»þ´Ö»ØÄꤷ¤¿Ã¼Ëö¤«¤é¥í¥°¥¤¥ó¤·¤ÆÎɤ¤¤«
+¤ò³Îǧ¤¹¤ë¤Î¤Ë¤½¤Î¥Õ¥¡¥¤¥ë¤ò»²¾È¤¹¤ë¡£
+c.f. porttime(4)
+.\"
+.IP "QUOTAS_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬
+.I yes
+¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥æ¡¼¥¶¤Î``ulimit,'' ``umask,`` µÚ¤Ó ``niceness''
+¤¬
+.I passwd
+¥Õ¥¡¥¤¥ë¤Î
+.I gecos
+Íó¤Ë»ØÄꤵ¤ì¤Æ¤¤¤ëÃͤ˽é´ü²½¤µ¤ì¤ë¡£
+c.f. passwd(4).
+.\"
+.IP "SU_NAME (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ï``su -''¤¬¼Â¹Ô¤µ¤ì¤¿¾ì¹ç¤Î¥³¥Þ¥ó¥É̾¤òÀßÄꤹ¤ë¡£
+Î㤨¤Ð¡¢¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬``su''¤ÈÄêµÁ¤µ¤ì¤Æ¤¤¤¿¾ì¹ç¡¢
+.I ps(1)
+¤Ç¤Ï¼Â¹ÔÃæ¤Î¥³¥Þ¥ó¥É¤¬``-su''¤Èɽ¼¨¤µ¤ì¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢
+.I ps(1)
+¤Ë¤Ï¼Â¹ÔÃæ¤Î¼ÂºÝ¤Î¥·¥§¥ë¤Î̾Á°¡¢Î㤨¤Ð``-sh``¤È¤¤¤Ã¤¿É½¼¨¤¬¤Ê¤µ¤ì¤ë¡£
+.\"
+.IP "SULOG_FILE (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤Ï
+.I su
+¥³¥Þ¥ó¥É¤Î¼Â¹Ôµ­Ï¿¤ò½ñ¤­¹þ¤à¥Õ¥¡¥¤¥ë¤ÎÀäÂХѥ¹Ì¾¤ò»ØÄꤹ¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢µ­Ï¿¤Ï¹Ô¤ï¤ì¤Ê¤¤¡£
+.I su
+¥³¥Þ¥ó¥É¤Ï¥Ñ¥¹¥ï¡¼¥É¤òǧ¾Ú¤¹¤ëºÝ¤Ë»È¤ï¤ì¤ë»ö¤â¤¢¤ë¤Î¤Ç¡¢¤³¤Î¥ª¥×¥·¥ç¥óËô¤Ï
+.I syslog
+¤Î¤¤¤º¤ì¤«¤òÍѤ¤¤Æ
+.I su
+¼Â¹Ô¤òµ­Ï¿¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+´ØÏ¢¾ðÊó¤ÏSYSLOG_SU_ENAB¥ª¥×¥·¥ç¥ó¤ò»²¾È¤»¤è¡£
+.\"
+.IP "SYSLOG_SU_ENAB (¥Ö¡¼¥ëÃÍ)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬
+.I yes
+¤ËÀßÄꤵ¤ì¡¢³î¤Ä
+.I login
+¤¬
+.I syslog
+µ¡Ç½¤òƯ¤«¤»¤ë¤è¤¦¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢Á´¤Æ¤Î
+.I su
+¼Â¹Ô¤¬
+.I syslog
+µ¡Ç½¤òÍѤ¤¤ÆÄÌÃΤµ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤ÏSULOG_FILE¤ò»²¾È¤»¤è¡£
+.\"
+.IP "TTYGROUP (ʸ»úÎóËô¤Ï¿ô)"
+üËö¤Î¥°¥ë¡¼¥×½êͭ°À­¤¬¤³¤Î¥°¥ë¡¼¥×̾¤â¤·¤¯¤ÏID¤Ë½é´ü²½¤µ¤ì¤ë¡£
+Îɤ¯ÃΤé¤ì¤¿¥»¥­¥å¥ê¥Æ¥£¹¶·â¤Î°ì¤Ä¤Ë¡¢Â¾¤Î¥æ¡¼¥¶¤ÎüËöÀþ¤ËüËö
+¥³¥ó¥È¥í¡¼¥ë¥·¡¼¥±¥ó¥¹¤òÁ÷¤ë¡¢¤È¤¤¤¦¤â¤Î¤¬¤¢¤ë¡£
+¤³¤ÎÌäÂê¤Ï¡¢Â¾¤Î¥æ¡¼¥¶¤¬Ã¼ËöÀþ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Ê¤¤¤è¤¦¤Ëµö²Ä°À­¤òÀßÄꤹ¤ì¤Ð
+²óÈò¤Ç¤­¤ë¤¬¡¢¤³¤¦¤¹¤ë¤È»Äǰ¤Ê¤¬¤é
+.I write
+¤È¤¤¤Ã¤¿¥×¥í¥°¥é¥à¤¬µ¡Ç½¤·¤Ê¤¯¤Ê¤Ã¤Æ¤·¤Þ¤¦¡£Â¾¤Î²ò·èÊýË¡¤È¤·¤Æ¤Ï¡¢
+ÀøºßŪ¤Ë´í¸±¤òÕÔ¤ó¤Àʸ»ú¥·¡¼¥±¥ó¥¹¤ò¥Õ¥£¥ë¥¿¡¼¤·¤Æ¼è¤ê½ü¤¤¤Æ¤·¤Þ¤¦ÍͤÊ
+.I write
+¥×¥í¥°¥é¥à¤ò»È¤¤¡¢¤³¤ì¤òÆÃ¼ì¤Ê¥°¥ë¡¼¥×¤Ë``setgid''¤µ¤»¡¢¤³¤Î¥°¥ë¡¼¥×¤Ë
+üËö¥Ç¥Ð¥¤¥¹¤Î¥°¥ë¡¼¥×½êͭ°À­¤ò³ä¤êÅö¤Æ¡¢Ã¼ËöÀþ¤Îµö²Ä°À­¤ò\f(CW0620\fP¤Ë
+ÀßÄꤹ¤ë¡¢¤È¤¤¤¦¤â¤Î¤â¤¢¤ë¡£
+TTYGROUP¤Ï¤Þ¤µ¤Ë¤³¤ÎÍͤʾõ¶·¤Î¤¿¤á¤ËÀßÄê¤Ç¤­¤ë¤è¤¦¤Ë¤·¤Æ¤¢¤ë¡£
+¤³¤Î¹àÌܤ¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Ê¤¤¤È¤­¤Ï¡¢Ã¼Ëö¤Î¥°¥ë¡¼¥×½êͭ°À­¤Ï¥æ¡¼¥¶¤Î¥°¥ë¡¼¥×
+ÈÖ¹æ¤Ë½é´ü²½¤µ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤ÏTTYPERMS¤ò»²¾È¤»¤è¡£
+.\"
+.IP "TTYPERM (¿ô)"
+¥í¥°¥¤¥óüËö¤Îµö²Ä°À­¤¬¤³¤ÎÃͤ˽é´ü²½¤µ¤ì¤ë¡£
+ŵ·¿Åª¤ÊÀßÄêÃͤȤ·¤Æ¤Ï¡¢\f(CW0622\fP¤ËÀßÄꤷ¤ÆÂ¾¤Î¥æ¡¼¥¶¤¬¤½¤ÎüËö¤Ëwrite
+¥¢¥¯¥»¥¹½ÐÍè¤ëÍͤˤ¹¤ë¤â¤Î¤ä¡¢\f(CW0600\fP¤ËÀßÄꤷ¤ÆÂ¾¤Î¥æ¡¼¥¶¤«¤éüËö¤ò
+¼é¤ë¤â¤Î¤Ê¤É¤¬¤¢¤ë¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢Ã¼Ëö¤Îµö²Ä°À­¤Ï\f(CW0622\fP¤Ë½é´ü²½¤µ¤ì¤ë¡£
+´ØÏ¢¾ðÊó¤ÏTTYGROUP¤ò»²¾È¤»¤è¡£
+.\"
+.IP "TTYTYPE_FILE (ʸ»úÎó)"
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤Ë¤ÏüËö¥Ç¥Ð¥¤¥¹¤òüËö¤Î¼ïÎà¤Ë¥Þ¥Ã¥×¤¹¤ë¥Õ¥¡¥¤¥ë¤ÎÀäÂХѥ¹Ì¾¤ò
+»ØÄꤹ¤ë¡£³Æ¹Ô¤Ë¤ÏüËö¤Î¼ïÎà¤ò°ì¤Ä¤ÈüËöÀþ¤ò°ì¤Ä¡¢¶õÇò¤Ç¶èÀڤäƵ­½Ò¤¹¤ë¡£
+Î㤨¤Ð:
+.nf
+.sp
+.ft CW
+       vt100\0 tty01
+       wyse60  tty02
+       \0\0.\0\0\0     \0\0.
+       \0\0.\0\0\0     \0\0.
+       \0\0.\0\0\0     \0\0.
+.ft P
+.sp
+.fi
+¤³¤Î¾ðÊó¤Ï´Ä¶­ÊÑ¿ôTERM¤ò½é´ü²½¤¹¤ë¤¿¤á¤ËÍѤ¤¤é¤ì¤ë¡£
+µ­¹æ``#''¤Ç»Ï¤Þ¤ë¹Ô¤Ï¥³¥á¥ó¥È¤È¤·¤Æ°·¤ï¤ì¤ë¡£
+¤³¤Î¥Ñ¥é¥á¡¼¥¿¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç¡¢¤â¤·¤¯¤Ï¤³¤Î
+¥Õ¥¡¥¤¥ëÃæ¤ÇüËöÀþ¤¬¸«¤Ä¤«¤é¤Ê¤¤¾ì¹ç¤Ï¡¢´Ä¶­ÊÑ¿ôTERM¤ÏÀßÄꤵ¤ì¤Ê¤¤¡£
+.\"
+.IP "ULIMIT (ÇÜÀºÅÙ¿ô)"
+¥Õ¥¡¥¤¥ë¥µ¥¤¥º¤Î¸ÂÅÙ¤ò¤³¤ÎÃͤ˽é´ü²½¤¹¤ë¡£
+.IR ulimit
+¤¬È÷¤ï¤Ã¤Æ¤¤¤ë¥·¥¹¥Æ¥à¡¢Î㤨¤ÐSystem V¤Ç¤Î¤ß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Õ¥¡¥¤¥ë¥µ¥¤¥º¸ÂÅ٤Ϥ¢¤ëÂ礭¤ÊÃͤ˽é´ü²½¤µ¤ì¤ë¡£
+.\"
+.IP "UMASK (¿ô)"
+µö²Ä°À­¥Þ¥¹¥¯¤ò¤³¤ÎÃͤ˽é´ü²½¤¹¤ë¡£
+»ØÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢µö²Ä°À­¥Þ¥¹¥¯¤Ï¥¼¥í¤Ë½é´ü²½¤µ¤ì¤ë¡£
+.\"
+.SH Áê¸ß»²¾È
+.\" The following cross reference shows which programs in the shadow login
+.\" suite use which parameters.
+°Ê²¼¤ÎÁê¸ß»²¾È¤Ïshadow login suiteÃæ¤Î¤É¤Î¥×¥í¥°¥é¥à¤¬
+¤É¤Î¥Ñ¥é¥á¡¼¥¿¤ò»ÈÍѤ¹¤ë¤«¤ò¼¨¤·¤¿¤â¤Î¤Ç¤¢¤ë
+.na
+.IP login 12
+CONSOLE DIALUPS_CHECK_ENAB ENV_HZ ENV_SUPATH ENV_TZ ERASECHAR FAILLOG_ENAB
+FTMP_FILE HUSHLOGIN_FILE KILLCHAR LASTLOG_ENAB LOG_UNKFAIL_ENAB
+MAIL_CHECK_ENAB MAIL_DIR MOTD_FILE NOLOGINS_FILE PORTTIME_CHECKS_ENAB
+QUOTAS_ENAB TTYPERM TTYTYPE_FILE ULIMIT UMASK
+.IP newusers 12
+PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UMASK
+.IP passwd 12
+OBSCURE_CHECKS_ENAB PASS_MIN_LEN
+.IP pwconv 12
+PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
+.IP su 12
+ENV_HZ ENV_SUPATH ENV_TZ HUSHLOGIN_FILE MAIL_CHECK_ENAB MAIL_DIR
+MOTD_FILE NOLOGIN_STR QUOTAS_ENAB SULOG_FILE SYSLOG_SU_ENAB
+.IP sulogin 12
+ENV_HZ ENV_SUPATH ENV_TZ MAIL_DIR QUOTAS_ENAB TTYPERM
+.ad
+.SH ´ØÏ¢¹àÌÜ
+login(1), passwd(4), faillog(4), porttime(4), faillog(8)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/logoutd.8 b/man/ja/logoutd.8
new file mode 100644 (file)
index 0000000..36ef82c
--- /dev/null
@@ -0,0 +1,60 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: logoutd.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH LOGOUTD 8
+.SH Ì¾Á°
+logoutd \- ¥í¥°¥¤¥ó»þ´Ö¤ÎÀ©¸Â¤ò²Ê¤¹
+.SH ½ñ¼°
+.B /etc/logoutd
+.SH ÀâÌÀ
+.I logoutd
+¤Ï/etc/porttime¤Ëµ­¤µ¤ì¤Æ¤¤¤ë¥í¥°¥¤¥ó»þ´ÖµÚ¤Ó¥Ý¡¼¥È¤ËÂФ¹¤ë
+À©¸Â»ö¹à¤ò¼Â»Ü¤¹¤ë¡£
+.I logoutd
+¤Ï\fB/etc/rc\fR¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.\" at the current time.
+\fB/etc/utmp\fR¥Õ¥¡¥¤¥ë¤òÄê´üŪ¤ËÁöºº¤·¡¢¥í¥°¥¤¥ó¤·¤Æ¤¤¤ë³Æ¥æ¡¼¥¶¤¬
+\fB/etc/porttime\fRÃæ¤Ç»ØÄꤵ¤ì¤¿¥í¥°¥¤¥ó²Äǽ¥æ¡¼¥¶Ì¾¡¢¥Ý¡¼¥ÈµÚ¤Ó»þ¹ï¤Ë
+È¿¤·¤Æ¤¤¤Ê¤¤¤«¤ò¸¡ºº¤¹¤ë¡£
+\fB/etc/porttime\fR¤ÎÀ©¸Â¤ËÈ¿¤¹¤ë¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥ó¤Ï½ªÎ»¤µ¤»¤é¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/porttime \- ¥í¥°¥¤¥óµÚ¤Ó¥Ý¡¼¥È¤ËÂФ¹¤ëµö²Ä
+.br
+/etc/utmp \- ¸½ºß¤Î¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥ó
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/mkpasswd.8 b/man/ja/mkpasswd.8
new file mode 100644 (file)
index 0000000..738c8fa
--- /dev/null
@@ -0,0 +1,89 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: mkpasswd.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.\" .TH MKPASSWD 1
+.TH MKPASSWD 8
+.SH Ì¾Á°
+mkpasswd \- passwdµÚ¤Ógroup¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤ò¹¹¿·¤¹¤ë
+.SH ½ñ¼°
+\fBmkpasswd\fR [ \fB-fvgps\fR ] \fIfile\fR
+.SH ÀâÌÀ
+.I mkpasswd
+¤Ï¥Õ¥é¥Ã¥°¤ÇÍ¿¤¨¤é¤ì¤¿½ñ¼°¤Ë¤·¤¿¤¬¤Ã¤Æ¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤ß¡¢
+Âбþ¤¹¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤Î½ñ¼°¤ËÊÑ´¹¤¹¤ë¡£
+ºîÀ®¤µ¤ì¤¿¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤Ï¡¢Â¿¤¯¤Î¥æ¡¼¥¶¤¬¤¤¤ë¥·¥¹¥Æ¥à¤Ç¤Î¥¢¥¯¥»¥¹
+¥Ñ¥Õ¥©¡¼¥Þ¥ó¥¹¤ò²þÁ±¤¹¤ë°Ù¤ËÍѤ¤¤é¤ì¤ë¡£
+½ÐÎÏ¥Õ¥¡¥¤¥ë¤Ï\fIfile\fR.dirµÚ¤Ó\fIfile\fR.pag¤È¤Î̾Á°¤¬ÉÕ¤±¤é¤ì¤ë¡£
+.PP
+\fB-f\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤹ¤ë¤È¡¢\fImkpasswd\fR¤Ï´û¤Ë½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬Â¸ºß
+¤·¤Æ¤¤¤Æ¤â̵»ë¤·¤Æ¾å½ñ¤­¤ò¹Ô¤Ê¤¦¡£
+Ä̾ï¤Ï¡¢½ÐÎÏ¥Õ¥¡¥¤¥ë¤¬´û¤Ë¸ºß¤¹¤ë¤È¤Î·Ù¹ð¤òȯ¤·¤ÆÃæÅÓ½ªÎ»¤¹¤ë¡£
+.PP
+\fB-v\fR¥ª¥×¥·¥ç¥ó¤òÉÕ¤±¤¿¾ì¹ç¡¢\fImkpasswd\fR¤ÏÊÑ´¹¤ò¹Ô¤Ê¤¦Ëè¤Ë
+³Æ¥ì¥³¡¼¥É¤Î¾ðÊó¤ò½ÐÎϤ¹¤ë¤È¤È¤â¤Ë¡¢ºÇ¸å¤Ë½ªÎ»¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤¹¤ë¡£
+.PP
+\fB-g\fR¥ª¥×¥·¥ç¥ó¤ò»ØÄꤷ¤¿¾ì¹ç¤Ï¡¢ÆþÎÏ¥Õ¥¡¥¤¥ë¤¬\fB/etc/group\fR
+¥Õ¥¡¥¤¥ë¤ÈƱ¤¸½ñ¼°¤Ç¤¢¤ë¤È¤·¤Æ½èÍý¤ò¹Ô¤Ê¤¦¡£
+\fB-s\fR¥ª¥×¥·¥ç¥ó¤ÈÁȤ߹ç¤ï¤»¤ÆÍѤ¤¤¿¾ì¹ç¤Ï¡¢\fB/etc/gshadow\fR¥Õ¥¡¥¤¥ë
+¤Î½ñ¼°¤È¤·¤Æ°·¤¦¡£
+.PP
+\fB-p\fR¥ª¥×¥·¥ç¥ó¤òÉÕ¤±¤¿¾ì¹ç¤Ï¡¢ÆþÎÏ¥Õ¥¡¥¤¥ë¤Î½ñ¼°¤¬\fB/etc/passwd\fR
+¤Î·Á¼°¤Ç¤¢¤ë¤È¤·¤Æ½èÍý¤¹¤ë¡£
+¥Ç¥£¥Õ¥©¥ë¥È¡£
+\fB-s\fR¥ª¥×¥·¥ç¥ó¤ÈÁȤ߹ç¤ï¤»¤¿¾ì¹ç¤Ï¡¢\fB/etc/shadow\fR¥Õ¥¡¥¤¥ë¤Î
+½ñ¼°¤È¤·¤Æ½èÍý¤ò¹Ô¤¦¡£
+.SH ·Ù¹ð
+Ê£¿ô¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤ò»ÈÍѤ¹¤ë¤³¤È¤Ï¡¢NDBM¥Ç¡¼¥¿¥Ù¡¼¥¹¥é¥¤¥Ö¥é¥ê
+¤¬È÷¤ï¤Ã¤¿¥·¥¹¥Æ¥à¤Ç¤Î¤ß²Äǽ¤Ç¤¢¤ê¡¢Á´¤Æ¤Î¥·¥¹¥Æ¥à¤ÇÍѤ¤¤ë»ö¤¬½ÐÍè¤ë
+Ìõ¤Ç¤Ï¤Ê¤¤¡£
+.SH Ãí°Õ
+ÂçÄñ¤Î¥³¥Þ¥ó¥É¤ÏÊѹ¹¤ò»Ü¤·¤¿ºÝ¤Ë¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤ò¹¹¿·¤¹¤ë¤³¤È¤¬½ÐÍè¤ë
+¤Î¤Ç¡¢¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢¸í¤Ã¤Æ¾Ãµî¤·¤Æ¤·¤Þ¤Ã¤¿¡¢¤Þ¤¿¤Ï²õ¤ì¤¿¥Ç¡¼¥¿¥Ù¡¼¥¹
+¥Õ¥¡¥¤¥ë¤òºÆÀ¸¤¹¤ë»þ¤Ë¤Î¤ßɬÍפˤʤ롣
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Î¾ðÊó
+.br
+/etc/shadow \- shadow¤·¤¿¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Î¾ðÊó
+.br
+/etc/group \- ¥°¥ë¡¼¥×¾ðÊó
+.br
+/etc/gshadow \- shadow¤·¤¿¥°¥ë¡¼¥×¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+passwd(4), group(4), shadow(4)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/newgrp.1 b/man/ja/newgrp.1
new file mode 100644 (file)
index 0000000..e1b54ce
--- /dev/null
@@ -0,0 +1,89 @@
+.\" Copyright 1991, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: newgrp.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH NEWGRP 1
+.SH Ì¾Á°
+newgrp \- ¥°¥ë¡¼¥×ID¤òÊѹ¹¤¹¤ë
+.br
+sg \- °Û¤Ê¤ë¥°¥ë¡¼¥×ID¤Ç¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë
+.SH ½ñ¼°
+.B newgrp
+[ - ] [ \fIgroup\fR ]
+.br
+.B sg
+[ - ] [ \fIgroup\fR [ \fB-c\fR \fIcommand\fR ] ]
+.SH ÀâÌÀ
+.I newgrp
+¤Ï¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥óÃæ¤Ë¸½ºß¤Î¥°¥ë¡¼¥×ID¤òÊѹ¹¤¹¤ë¤¿¤á¤ËÍѤ¤¤é¤ì¤ë¡£
+¥ª¥×¥·¥ç¥ó¤È¤·¤Æ\fB\-\fR¥Õ¥é¥°¤òÍ¿¤¨¤¿¾ì¹ç¤Ï¡¢
+¿·¤¿¤Ë¥í¥°¥¤¥ó¤·¤¿¤Î¤ÈƱ¤¸Íͤ˴Ķ­¤¬ºÆ½é´ü²½¤µ¤ì¤ë¡£
+¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ï¡¢ºî¶È¥Ç¥£¥ì¥¯¥È¥ê¤ò´Þ¤á¤Æ¡¢¸½ºß¤Î´Ä¶­¤ÏÊѲ½¤·¤Ê¤¤¡£
+.PP
+.I newgrp
+¤Ï¡¢¸½ºß¤Î¼ÂºÝ¤Î¥°¥ë¡¼¥×ID¤ò¡¢»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Ë¡¢
+¤Þ¤¿¥°¥ë¡¼¥×̾¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï\fB/etc/passwd\fR¤Ëµ­ºÜ¤µ¤ì¤¿
+¥Ç¥£¥Õ¥©¥ë¥È¤Î¥°¥ë¡¼¥×¤Ë¡¢Êѹ¹¤¹¤ë¡£
+¥æ¡¼¥¶¤Ë¤Ï¥Ñ¥¹¥ï¡¼¥É¤¬¤Ê¤¯¥°¥ë¡¼¥×¤Ë¤Ï¤¢¤ë¾ì¹ç¡¢
+¤â¤·¤¯¤Ï¡¢¥á¥ó¥Ð¡¼¤Ç¤¢¤ë¤ÈÀßÄꤵ¤ì¤Æ¤ª¤é¤º¡¢
+¤·¤«¤â¥°¥ë¡¼¥×¤Ë¤Ï¥Ñ¥¹¥ï¡¼¥É¤¬¤¢¤ë¾ì¹ç¤Ë¤Ï¡¢
+¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤòµá¤á¤é¤ì¤ë¡£
+¥°¥ë¡¼¥×¤Î¥Ñ¥¹¥ï¡¼¥É¤¬ÀßÄꤵ¤ì¤Æ¤ª¤é¤º¡¢¤«¤Ä¥æ¡¼¥¶¤¬¥á¥ó¥Ð¡¼¤È¤·¤Æ
+ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥¢¥¯¥»¥¹¤òµñÈݤµ¤ì¤ë¡£
+.PP
+.I sg
+¥³¥Þ¥ó¥É¤Ï\fInewgrp\fR¤ÈƱÍÍ¤ÊÆ¯¤­¤ò¤¹¤ë¤¬¡¢
+¥æ¡¼¥¶¤Î¥·¥§¥ë¤ÏÃÖ¤­´¹¤ï¤é¤Ê¤¤¡£
+½¾¤Ã¤Æ¡¢\fIsg\fR¥³¥Þ¥ó¥É¤«¤éÈ´¤±¤¿¾ì¹ç¤Ï°ÊÁ°¤Î¥°¥ë¡¼¥×ID¤ËÌá¤ë¡£
+.I sg
+¤Ï¥³¥Þ¥ó¥É¤â¼õ¤±ÉÕ¤±¤ë¡£
+¥³¥Þ¥ó¥É¤ÏBourne¥·¥§¥ë¤Ç¼Â¹Ô¤µ¤ì¡¢°úÍÑÉä¤Ç°Ï¤Þ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ·Ù¹ð
+.PP
+¤³¤ÎÈǤÎ\fInewgrp\fR¤Ë¤Ï¿¤¯¤Î¥³¥ó¥Ñ¥¤¥ë»þ¥ª¥×¥·¥ç¥ó¤¬¤¢¤ë¤¬¡¢
+¥µ¥¤¥È¤Ë¤è¤Ã¤Æ¤Ï¡¢¤½¤Î¤¦¤Á¤Î¤¤¤¯¤Ä¤«¤·¤«ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤â¤¢¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/group \- ¥°¥ë¡¼¥×¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+login(1),
+id(1),
+su(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/passwd.1 b/man/ja/passwd.1
new file mode 100644 (file)
index 0000000..9803560
--- /dev/null
@@ -0,0 +1,193 @@
+.\" Copyright 1989 - 1994, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: passwd.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PASSWD 1
+.SH Ì¾Á°
+passwd \- ¥æ¡¼¥¶¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë
+.SH ½ñ¼°
+\fBpasswd\fR [ \fB-f \fR|\fB -s \fR ] [ \fIname\fR ]
+.br
+\fBpasswd\fR [ \fB-g\fR ] [ \fB-r\fR|\fBR\fR ] \fIgroup\fR
+.br
+\fBpasswd\fR [ \fB-x\fR \fImax\fR ] [ \fB-n\fR \fImin\fR ]
+[ \fB-w\fR \fIwarn\fR ] [ \fB-i\fR \fIinact\fR ] \fIname\fR
+.br
+\fBpasswd\fR { \fB-l\fR | \fB-u\fR | \fB-d\fR | \fB-S\fR } \fIname\fR
+.SH ÀâÌÀ
+\fIpasswd\fR¤Ï¥æ¡¼¥¶µÚ¤Ó¥°¥ë¡¼¥×¥¢¥«¥¦¥ó¥È¤Î¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë¡£
+°ìÈ̥桼¥¶¤Ï¼«Ê¬¤Î¥¢¥«¥¦¥ó¥È¤Î¥Ñ¥¹¥ï¡¼¥É¤·¤«Êѹ¹¤Ç¤­¤Ê¤¤¡£
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Ï¤¤¤«¤Ê¤ë¥¢¥«¥¦¥ó¥È¤Î¥Ñ¥¹¥ï¡¼¥É¤âÊѹ¹¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+¥°¥ë¡¼¥×¤Î´ÉÍý¼Ô¤Ï¥°¥ë¡¼¥×¤Î¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+\fIpasswd\fR¤Ë¤è¤Ã¤Æ¡¢¥æ¡¼¥¶¤Î¥Õ¥ë¥Í¡¼¥à¡¢¥í¥°¥¤¥ó¥·¥§¥ë¡¢¥Ñ¥¹¥ï¡¼¥É¤Î
+´ü¸ÂÀÚ¤ì¤ÎÆüÉÕµÚ¤ÓÍ­¸ú´ü´ÖÅù¤Î¥¢¥«¥¦¥ó¥È¾ðÊó¤òÊѹ¹¤¹¤ë¤³¤È¤â¤Ç¤­¤ë¡£
+.SS ¥Ñ¥¹¥ï¡¼¥É¤ÎÊѹ¹
+¥Ñ¥¹¥ï¡¼¥É¤¬´û¤Ë¤¢¤ë¾ì¹ç¤Ï¡¢À褺¸Å¤¤¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ¹¤ë¤è¤¦Â¥¤µ¤ì¤ë¡£
+ÆþÎϤµ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢°Å¹æ²½¤µ¤ì¡¢µ­Ï¿¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤È¾È¹ç¤µ¤ì¤ë¡£
+Àµ¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤ò1²ó¤ÇÆþÎϤ·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤ò˺¤ì¤Æ¤·¤Þ¤Ã¤¿ºÝ¤ÎÊѹ¹¤â¹Ô¤Ê¤¨¤ëÍͤˡ¢
+¤³¤Î¥¹¥Æ¥Ã¥×¤ò̵»ë¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+.PP
+¥Ñ¥¹¥ï¡¼¥É¤¬ÆþÎϤµ¤ì¤¿¸å¡¢¥Ñ¥¹¥ï¡¼¥ÉÍ­¸ú´ü¸Â¤Î¾ðÊó¤òÄ´¤Ù¡¢
+¸½ºß¥Ñ¥¹¥ï¡¼¥É¤ÎÊѹ¹¤¬µö¤µ¤ì¤Æ¤¤¤ë¤«¸¡ºº¤¹¤ë¡£
+¤â¤·µö²Ä¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢\fIpasswd\fR¤ÏÊѹ¹¤òµñÈݤ·¤Æ½ªÎ»¤¹¤ë¡£
+.PP
+¼¡¤¤¤Ç¡¢Âå¤ï¤ê¤Î¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ¹¤ë¤è¤¦Â¥¤µ¤ì¤ë¡£
+ÆþÎϤµ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤ÏÊ£»¨¤µ¤ò¸¡ºº¤µ¤ì¤ë¡£
+°ìÈÌŪ¤Ê»Ø¿Ë¤È¤·¤Æ¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï°Ê²¼¤Î½¸¹ç¤½¤ì¤¾¤ì¤«¤é°ì¤Ä°Ê¾å¤Î
+ʸ»ú¤ò»È¤Ã¤¿6¤«¤é8ʸ»ú¤Î¤â¤Î¤Ë¤¹¤Ù¤­¤Ç¤¢¤ë
+.IP "" .5i
+¾®Ê¸»ú¤Î¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È
+.IP "" .5i
+Âçʸ»ú¤Î¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È
+.IP "" .5i
+0¤«¤é9Ëø¤Î¿ô»ú
+.IP "" .5i
+¶çÆÉÅÀ
+.PP
+¥·¥¹¥Æ¥à¤Î¥Ç¥£¥Õ¥©¥ë¥È¤Î¾Ãµîʸ»ú¤äkillʸ»ú¤ò´Þ¤á¤Ê¤¤ÍͤË
+Ãí°Õ¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+\fIpasswd\fR¤Ï¤¢¤Þ¤ê¤Ëñ½ã¤Ê¥Ñ¥¹¥ï¡¼¥É¤Ø¤ÎÊѹ¹¤ÏµñÈݤ¹¤ë¡£
+.PP
+ÆþÎϤ·¤¿¥Ñ¥¹¥ï¡¼¥É¤¬¼õ¤±Æþ¤ì¤é¤ì¤¿¾ì¹ç¡¢
+\fIpasswd\fR¤Ï¤â¤¦°ìÅÙÆþÎϤòÂ¥¤·¡¢ÆóÈÖÌÜ¤ËÆþÎϤ·¤¿¤â¤Î¤òºÇ½é¤Î
+¤â¤Î¤ÈÈæ³Ó¤¹¤ë¡£
+¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹¤¬¼õ¤±Æþ¤ì¤é¤ì¤ë¤¿¤á¤Ë¤Ï¡¢Î¾Êý¤ÎÆþÎϤ¬Éä¹ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SS ¥°¥ë¡¼¥×¥Ñ¥¹¥ï¡¼¥É
+\fB-g\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤¿¾ì¹ç¡¢»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Î¥Ñ¥¹¥ï¡¼¥É¤¬Êѹ¹¤µ¤ì¤ë¡£
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤«»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Î´ÉÍý¼Ô¤Ç¤Ê¤¤¤È
+¤³¤Î¥ª¥×¥·¥ç¥ó¤Ï»È¤¨¤Ê¤¤¡£
+¸½ºß¤Î¥°¥ë¡¼¥×¥Ñ¥¹¥ï¡¼¥É¤Ï¿Ò¤Í¤Æ¤³¤Ê¤¤¡£
+\fB-g\fR¥ª¥×¥·¥ç¥ó¤ò\fB-r\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤ËÍѤ¤¤ë¤È¡¢
+»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Î¥Ñ¥¹¥ï¡¼¥É¤¬ºï½ü¤µ¤ì¤ë¡£
+¤³¤¦¤¹¤ë¤È¡¢Á´¤Æ¤Î¥á¥ó¥Ð¡¼¤¬¤³¤Î¥°¥ë¡¼¥×¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤ë¡£
+\fB-R\fR¥ª¥×¥·¥ç¥ó¤ò\fB-g\fR¥ª¥×¥·¥ç¥ó¤È¤È¤â¤ËÍѤ¤¤ë¤È¡¢
+Á´¤Æ¤Î¥æ¡¼¥¶¤ËÂФ·¤Æ»ØÄꤷ¤¿¥°¥ë¡¼¥×¤Ø¤Î¥¢¥¯¥»¥¹¤ò¶Ø»ß¤¹¤ë»ö¤¬½ÐÍè¤ë¡£
+.SS ¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¾ðÊó
+¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤Î¾ðÊó¤Ï¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤¬\fB-x\fR¡¢\fB-n\fR¡¢
+\fB-w\fRµÚ¤Ó\fB-i\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ÆÊѹ¹¤Ç¤­¤ë¡£
+\fB-x\fR¥ª¥×¥·¥ç¥ó¤Ï¥Ñ¥¹¥ï¡¼¥É¤¬Í­¸ú¤ÊºÇÂçÆü¿ô¤òÀßÄꤹ¤ë¤Î¤ËÍѤ¤¤é¤ì¤ë¡£
+\fImax\fRÆü¤¬²á¤®¤ë¤È¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë¤è¤¦¤Ëµá¤á¤é¤ì¤ë¡£
+\fB-n\fR¥ª¥×¥·¥ç¥ó¤Ï¥Ñ¥¹¥ï¡¼¥É¤¬Êѹ¹²Äǽ¤È¤Ê¤ë¤Þ¤Ç¤ÎºÇ¾®Æü¿ô¤ò
+ÀßÄꤹ¤ë¤Î¤ËÍѤ¤¤é¤ì¤ë¡£
+¥æ¡¼¥¶¤Ï\fImin\fRÆü¤¬·Ð²á¤·¤¿¸å¤Ç¤Ê¤¤¤È¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë¤³¤È¤¬
+¤Ç¤­¤Ê¤¤¡£
+\fB-w\fR¥ª¥×¥·¥ç¥ó¤Ï¥Ñ¥¹¥ï¡¼¥É¤Î»ÈÍÑ´ü¸Â¤¬Íè¤ëÁ°¤Ë²¿Æü´Ö
+·Ù¹ð¤òÍ¿¤¨¤ë¤«¤òÀßÄꤹ¤ë¤¿¤á¤ËÍѤ¤¤é¤ì¤ë¡£
+´ü¸ÂÀÚ¤ì¤Î\fIwarn\fRÆüÁ°¤«¤éÃí°Õ¤¬³«»Ï¤µ¤ì¡¢
+¤¢¤È²¿Æü¤Ç¥Ñ¥¹¥ï¡¼¥É¤¬´ü¸ÂÀÚ¤ì¤Ë¤Ê¤ë¤«¤¬¼¨¤µ¤ì¤ë¡£
+\fB-i\fR¥ª¥×¥·¥ç¥ó¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤Î´ü¸Â¤¬Àڤ줿¤¢¤È²¿Æü´Ö¤½¤Î¥¢¥«¥¦¥ó¥È
+¤¬»ÈÍÑÉÔǽ¤Î¾õÂ֤ˤ¹¤ë¤«¤òÀßÄꤹ¤ë¤Î¤ËÍѤ¤¤ë¡£
+\fIinact\fRÆü´Ö¥¢¥«¥¦¥ó¥È¤ò¥Ñ¥¹¥ï¡¼¥É´ü¸ÂÀÚ¤ì¾õÂ֤Τޤޤˤ¹¤ë¤È¡¢
+¥æ¡¼¥¶¤Ï¤½¤Î¥¢¥«¥¦¥ó¥È¤ËÆþ¤ë¤³¤È¤¬½ÐÍè¤Ê¤¯¤Ê¤ë¡£
+.SS ¥¢¥«¥¦¥ó¥È¤ÎÊݼé
+\fB-l\fRµÚ¤Ó\fB-u\fR¥Õ¥é¥Ã¥°¤òÍѤ¤¤Æ¥¢¥«¥¦¥ó¥È¤ò¥í¥Ã¥¯¤·¤¿¤ê
+¥í¥Ã¥¯¤ò³°¤·¤¿¤ê¤¹¤ë»ö¤¬½ÐÍè¤ë¡£
+\fB-l\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¤È¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï°Å¹æ²½¤µ¤ì¤¿Ç¡²¿¤Ê¤ëÃͤȤâ
+Éä¹ç¤·¤Ê¤¯¤Ê¤ê¡¢¥¢¥«¥¦¥ó¥È¤Ï»ÈÍÑÉÔǽ¤Ë¤Ê¤ë¡£
+\fB-u\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¤È¡¢¥Ñ¥¹¥ï¡¼¥É¤¬°ÊÁ°¤ÎÃͤËÌá¤ê¡¢
+¥¢¥«¥¦¥ó¥È¤¬ºÆ¤Ó»ÈÍѲÄǽ¤È¤Ê¤ë¡£
+.PP
+\fB-S\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¤È¥¢¥«¥¦¥ó¥È¤Î¾õÂÖ¤¬É½¼¨¤µ¤ì¤ë¡£
+¥¢¥«¥¦¥ó¥È¤Î¾õÂ֤ξðÊó¤Ï6¤Ä¤ÎÉôʬ¤«¤é¤Ê¤ë¡£
+ºÇ½é¤ÎÉôʬ¤Ï¡¢¥¢¥«¥¦¥ó¥È¤Ë¥í¥Ã¥¯¤¬¤«¤±¤é¤ì¤Æ¤¤¤ë¤Î¤«(L)¡¢
+¥Ñ¥¹¥ï¡¼¥É¤¬Â¸ºß¤·¤Ê¤¤¤Î¤«(NP)¡¢
+¤â¤·¤¯¤Ï»ÈÍѲÄǽ¤Ê¥Ñ¥¹¥ï¡¼¥É¤¬¤¢¤ë(P)¤Î¤«¤ò¼¨¤¹¡£
+2ÈÖÌܤϺǸå¤Ë¥Ñ¥¹¥ï¡¼¥É¤¬Êѹ¹¤µ¤ì¤¿ÆüÉÕ¤ò¼¨¤¹¡£
+»Ä¤ê¤Î4¤Ä¤ÎÉôʬ¤Ï¤½¤ì¤¾¤ì¥Ñ¥¹¥ï¡¼¥É¤ÎºÇû´ü¸Â¡¢ºÇĹ´ü¸Â¡¢·Ù¹ð´ü´Ö¡¢
+»ÈÍÑÉÔǽ´ü´Ö¤Ç¤¢¤ë¡£
+.SS ¥æ¡¼¥¶¥Ñ¥¹¥ï¡¼¥É¤ËÂФ¹¤ë¥Ò¥ó¥È
+¥Ñ¥¹¥ï¡¼¥É¤Î°ÂÁ´À­¤Ï°Å¹æ²½¥¢¥ë¥´¥ê¥º¥à¤Î¶¯ÎϤµ¤È¥­¡¼¶õ´Ö¤ÎÂ礭¤µ¤Ë
+°Í¸¤¹¤ë¡£
+\fB\s-2UNIX\s+2\fR¤Î¥·¥¹¥Æ¥à°Å¹æ²½¤ÎÊýË¡¤ÏNBS DES¥¢¥ë¥´¥ê¥º¥à¤Ë
+´ð¤Å¤¤¤Æ¤ª¤ê¡¢Èó¾ï¤Ë°ÂÁ´À­¤¬¹â¤¤¡£
+¥­¡¼¶õ´Ö¤ÎÂ礭¤µ¤ÏÁª¤Ð¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Î¥é¥ó¥À¥à¤µ¤Ë°Í¸¤¹¤ë¡£
+.PP
+¥Ñ¥¹¥ï¡¼¥É¤Î°ÂÁ´À­¤¬¶¼¤«¤µ¤ì¤ë¤Î¤Ï¡¢ÂçÄñ¤Î¾ì¹ç¥Ñ¥¹¥ï¡¼¥É¤òÃí°Õ¿¼¤¯
+Áª¤Ó°·¤ï¤Ê¤¤»ö¤Ë¤è¤ë¡£
+¤·¤¿¤¬¤Ã¤Æ¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¼­½ñ¤ËºÜ¤Ã¤Æ¤¤¤Ê¤¤¤â¤Î¼ã¤·¤¯¤Ï
+½ñ¤­Î±¤á¤ëɬÍפΤʤ¤¤â¤Î¤òÁªÂò¤¹¤Ù¤­¤Ç¤¢¤ë¡£
+¤Þ¤¿¡¢¸Çͭ̾»ì¤äÌȵö¾ÚÈֹ桢ÃÂÀ¸Æü¤ä¼«Âð¤Î½»½ê¤È¤¤¤Ã¤¿¤â¤Î¤ò
+¥Ñ¥¹¥ï¡¼¥É¤Ë¤¹¤ë¤Î¤âÈò¤±¤ë¤Ù¤­¤Ç¤¢¤ë¡£
+¤È¤¤¤¦¤Î¤Ï¡¢¾å¤Î¤¤¤º¤ì¤â¥·¥¹¥Æ¥à¤Î¥»¥­¥å¥ê¥Æ¥£¤òÈȤ¹ºÝ¤Î¿äÎ̤Ȥ·¤Æ
+ÍѤ¤¤é¤ì¤ë²ÄǽÀ­¤¬¤¢¤ë¤«¤é¤Ç¤¢¤ë¡£
+.PP
+¥Ñ¥¹¥ï¡¼¥É¤Ï»æÊҤ˽ñ¤­Î±¤á¤Æ¤ª¤¯É¬Íפ¬Ìµ¤¤¤è¤¦¤Ê´Êñ¤Ë»×¤¤½Ð¤»¤ë
+¤â¤Î¤Ë¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤³¤ì¤Ï¡¢Î㤨¤Ðû¤¤Æó¤Ä¤Îñ¸ì¤ò¤¯¤ÃÉÕ¤±¤Æ¤½¤Î´Ö¤ËÆÃ¼ìµ­¹æËô¤Ï¿ô»ú¤ò
+¶´¤ß¹þ¤à¤³¤È¤Ë¤è¤Ã¤Æºî¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+Î㤨¤Ð¡¢Pass%wordÅù¤Ç¤¢¤ë¡£
+.PP
+¾¤Îºî¤êÊý¤È¤·¤Æ¤Ï¡¢Ê¸³ØºîÉʤʤɤ«¤é»×¤¤½Ð¤·¤ä¤¹¤¤¶ç¤òÁª¤Ó½Ð¤·¡¢
+¤½¤ì¤¾¤ì¤Îñ¸ì¤«¤éºÇ½é¼ã¤·¤¯¤ÏºÇ¸å¤Îʸ»ú¤òÈ´¤­½Ð¤¹ÊýË¡¤¬¤¢¤ë¡£
+¤³¤ÎÊýË¡¤ÎÎã¤È¤·¤Æ¤Ï
+.IP "" .5i
+Ask not for whom the bell tolls.
+.PP
+¤È¤¤¤¦¶ç¤«¤é¼¡¤ÎÍͤʥѥ¹¥ï¡¼¥É¤¬ºî¤ê½Ð¤»¤ë¡£
+.IP "" .5i
+An4wtbt.
+.PP
+¶²¤é¤¯¥¯¥é¥Ã¥«¡¼¤Î»ý¤Ã¤Æ¤¤¤ë¼­½ñ¤Ë¤³¤ó¤Ê¸ì¶ç¤ÏºÜ¤Ã¤Æ¤¤¤Ê¤µ¤½¤¦¤À¡¢
+¤È»×¤¦¤Ç¤¢¤í¤¦¡£
+¤·¤«¤·¡¢¤³¤³¤Ë¼¨¤·¤¿ÊýË¡¤À¤±¤ËÍê¤ë¤Î¤Ç¤Ï¤Ê¤¯¡¢¼«Ê¬ÆÈ¼«¤Î¥Ñ¥¹¥ï¡¼¥É
+¤Îºî¤êÊý¤ò¹Í¤¨½Ð¤¹¤Ù¤­¤Ç¤¢¤ë¡£
+.SS ¥°¥ë¡¼¥×¤Î¥Ñ¥¹¥ï¡¼¥É¤Ë´Ø¤¹¤ëÃí°Õ
+¥°¥ë¡¼¥×¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢°ì¿Í°Ê¾å¤Î¿Í´Ö¤¬ÃΤ뤳¤È¤¬µö¤µ¤ì¤ë¤â¤Î¤Ç¤¢¤ë¤«¤é¡¢
+À¸ÍèŪ¤Ë¥»¥­¥å¥ê¥Æ¥£¾å¤ÎÌäÂê¤òÊú¤¨¤Æ¤¤¤ë¡£
+¤·¤«¤·¡¢¥°¥ë¡¼¥×¤È¤¤¤¦Æ»¶ñΩ¤Æ¤ÏÊÌ¡¹¤Î¿Í´Ö¤¬¶¦Æ±¤Çºî¶È¤¹¤ë»ö¤¬½ÐÍè¤ë¤Î¤Ç¡¢
+ÊØÍø¤Ç¤Ï¤¢¤ë¡£
+.SH ·Ù¹ð
+Á´¤Æ¤Î¥ª¥×¥·¥ç¥ó¤¬»È¤¨¤ë¤è¤¦¤Ë¤ÏÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤²ÄǽÀ­¤¬¤¢¤ë¡£
+¥Ñ¥¹¥ï¡¼¥É¤ÎÊ£»¨¤µ¤Î¸¡¾Ú¤Ï¥µ¥¤¥ÈËè¤Ë°Û¤Ê¤Ã¤Æ¤¤¤ë¤À¤í¤¦¡£
+¥æ¡¼¥¶¤Ï¥·¥¹¥Æ¥à¤¬Ëþ­¤¹¤ë½¼Ê¬Ê£»¨¤Ê¥Ñ¥¹¥ï¡¼¥É¤òÁª¤Ö¤è¤¦¶¯¤¤¤é¤ì¤ë¡£
+NIS¤¬Æ°ºî¤·¤Æ¤ª¤ê¤·¤«¤âNIS¥µ¡¼¥Ð°Ê³°¤Ë¥í¥°¥¤¥ó¤·¤Æ¤¤¤ë¾ì¹ç¤Ï
+¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë¤³¤È¤¬½ÐÍè¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó
+.br
+/etc/shadow \- ¥æ¡¼¥¶¤Î°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É
+.SH ´ØÏ¢¹àÌÜ
+passwd(3),
+shadow(3),
+group(5),
+passwd(5)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
+
+
diff --git a/man/ja/passwd.5 b/man/ja/passwd.5
new file mode 100644 (file)
index 0000000..56c9381
--- /dev/null
@@ -0,0 +1,111 @@
+.\" Copyright 1989 - 1990, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: passwd.5,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PASSWD 5
+.SH Ì¾Á°
+passwd \- ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë
+.SH ÀâÌÀ
+.I passwd
+¥Õ¥¡¥¤¥ë¤Ë¤Ï³Æ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤ÎÍÍ¡¹¤Ê¾ðÊ󤬵­Ï¿¤µ¤ì¤Æ¤¤¤ë¡£
+½ñ¤«¤ì¤Æ¤¤¤ë¤Î¤Ï¡¢
+.IP "" .5i
+¥í¥°¥¤¥ó̾
+.IP "" .5i
+¥ª¥×¥·¥ç¥ó¤Î°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É
+.IP "" .5i
+¥æ¡¼¥¶IDÈÖ¹æ
+.IP "" .5i
+¥°¥ë¡¼¥×IDÈÖ¹æ
+.IP "" .5i
+¥æ¡¼¥¶Ì¾¤â¤·¤¯¤Ï¥³¥á¥ó¥ÈÍó
+.IP "" .5i
+¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê
+.IP "" .5i
+¥æ¡¼¥¶¤Î¥³¥Þ¥ó¥É¥¤¥ó¥¿¥×¥ê¥¿
+.PP
+¥Ñ¥¹¥ï¡¼¥É¤¬shadow¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢¥Ñ¥¹¥ï¡¼¥ÉÍó¤òËä¤á¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+shadow¥Ñ¥¹¥ï¡¼¥É¤òÍѤ¤¤Æ¤¤¤ë¾ì¹ç¡¢°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï
+\fB/etc/shadow\fR¤Ë½ñ¤«¤ì¤Æ¤¤¤ë¡£
+°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢¥¢¥ë¥Õ¥¡¥Ù¥Ã¥Èa¤«¤éz¡¢A¤«¤éZ¡¢0¤«¤é9
+µÚ¤Ó\.¤È/.¤Î64ʸ»ú¤«¤éºî¤é¤ì¤¿13ʸ»ú¤«¤é¤Ê¤ë¡£
+¤³¤Îʸ»úÎ󤬤ɤΤ褦¤Ë²ò¼á¤µ¤ì¤ë¤«¤Î¾ÜºÙ¤Ï¡¢\fIcrypt(3)\fR¤ò
+»²¾È¤Î¤³¤È¡£
+.PP
+¥ª¥×¥·¥ç¥ó¤Ç¡¢¥Ñ¥¹¥ï¡¼¥É¤Ë³¤¤¤Æ¥Ñ¥¹¥ï¡¼¥ÉÍ­¸ú´ü¸Â¤¬¡¢
+¥³¥ó¥Þ¤Ç¶èÀÚ¤Ã¤ÆÆ±¤¸Ê¸»ú½¸¹ç¤Îʸ»ú¤ò¤ò»È¤Ã¤Æµ­¤µ¤ì¤Æ¤¤¤ë¤³¤È¤â¤¢¤ë¡£
+¥Ñ¥¹¥ï¡¼¥ÉÍ­¸ú´ü¸Â¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¼«¿È¤ÈƱ¤¸Ê¸»ú½¸¹ç¤«¤éºî¤é¤ì¤Æ¤¤¤ë¡£
+ºÇ½é¤Îʸ»ú¤Ë¤Ï¡¢¥Ñ¥¹¥ï¡¼¥É¤¬²¿½µ´ÖÍ­¸ú¤«¤¬µ­¤µ¤ì¤Æ¤¤¤ë¡£
+ÆóÈÖÌܤÎʸ»ú¤Ï¡¢²¿½µ´Ö·Ð¤Æ¤Ð¥æ¡¼¥¶¤¬¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤Ç¤­¤ë¤«¤òÍ¿¤¨¤ë¡£
+ºÇ¸å¤ÎÆóʸ»ú¤Ë¤Ï¡¢ºÇ¸å¤Ë¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤¿¤Î¤Ï1970ǯ1·î¤«¤é²¿½µ´Ö
+·Ð²á¤·¤¿»þ¤Ç¤¢¤ë¤«¤òɽ¤¹¡£
+¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤¬²á¤®¤¿»þ¤Ï¡¢¥æ¡¼¥¶¤Ï¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¤òÀßÄê
+¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.PP
+¥³¥á¥ó¥ÈÍó¤Ï¡¢\fIfinger(1)\fRÅù¤ÎÍÍ¡¹¤Ê¥·¥¹¥Æ¥à¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤ËÍøÍѤµ¤ì¤ë¡£
+¥³¥á¥ó¥ÈÍó¤Ë¤Ï¹¹¤Ë3¤Ä¤Î¿ôÃͤ¬µ­Æþ¤µ¤ì¤Æ¤¤¤Æ¤âÎɤ¤¡£
+¤½¤ì¤é¤Ï¡¢
+.IP "" .5i
+pri= \- nice¤Î½é´üÀßÄêÃÍ
+.IP "" .5i
+umask= \- umask¤Î½é´üÀßÄêÃÍ
+.IP "" .5i
+ulimit= \- ulimit¤Î½é´üÀßÄêÃÍ
+.PP
+¤³¤ì¤é¤ÎÍó¤Ï¸ß¤¤¤Ë¡¢¤Þ¤¿¥³¥á¥ó¥ÈÍó¤ÎÊ̤Υե£¡¼¥ë¥É¤È¡¢¥³¥ó¥Þ¤òÍѤ¤¤Æ
+¶èÊ̤µ¤ì¤Æ¤¤¤ë¡£
+.PP
+¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥êÍó¤Ë¤Ï¥í¥°¥¤¥ó»þ¤Îºî¶È¥Ç¥£¥ì¥¯¥È¥ê̾¤¬µ­¤µ¤ì¤Æ¤¤¤ë¡£
+\fILogin\fR¤Ï¤³¤Î¾ðÊó¤òÍѤ¤¤Æ´Ä¶­ÊÑ¿ô\fBHOME\fR¤ÎÆâÍÆ¤òÀßÄꤹ¤ë¡£
+.PP
+¥³¥Þ¥ó¥É¥¤¥ó¥¿¥×¥ê¥¿Íó¤Ë¤Ï¥æ¡¼¥¶¤Î¥³¥Þ¥ó¥É¸À¸ì¥¤¥ó¥¿¥×¥ê¥¿¤â¤·¤¯¤Ï
+ºÇ½é¤Ë¼Â¹Ô¤¹¤ë¥×¥í¥°¥é¥à¤Î̾Á°¤òµ­¤¹¡£
+\fILogin\fR¤Ï¤³¤Î¾ðÊó¤òÍѤ¤¤Æ´Ä¶­ÊÑ¿ô\fBSHELL\fR¤ÎÆâÍÆ¤òÀßÄꤹ¤ë¡£
+¤³¤ÎÍó¤Ë²¿¤âµ­¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥Ç¥£¥Õ¥©¥ë¥ÈÃͤȤ·¤Æ\fB/bin/sh\fR¤ò
+»ÈÍѤ¹¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+login(1),
+passwd(1),
+su(1),
+sulogin(1M),
+shadow(5),
+pwconv(8),
+pwunconv(8)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/porttime.5 b/man/ja/porttime.5
new file mode 100644 (file)
index 0000000..cbb24bb
--- /dev/null
@@ -0,0 +1,93 @@
+.\" Copyright 1989 - 1990, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: porttime.5,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PORTTIME 5
+.SH Ì¾Á°
+porttime \- ¥Ý¡¼¥È¥¢¥¯¥»¥¹»þ´ÖÀßÄê¥Õ¥¡¥¤¥ë
+.SH ÀâÌÀ
+.I porttime
+¤Ë¤Ïtty¥Ç¥Ð¥¤¥¹¡¢¥æ¡¼¥¶Ì¾µÚ¤Ó¥í¥°¥¤¥ó²Äǽ»þ´Ö¤Î¥ê¥¹¥È¤¬µ­¤µ¤ì¤Æ¤¤¤ë¡£
+.PP
+¸Ä¡¹¤Î¥¨¥ó¥È¥ê¡¼¤Ï¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤¿»°¤Ä¤ÎÍ󤫤é¤Ê¤ë¡£
+ºÇ½é¤ÎÍó¤Ï¥³¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿tty¥Ç¥Ð¥¤¥¹¤Î¥ê¥¹¥È¡¢Ëô¤ÏÁ´¤Æ¤Îtty¥Ç¥Ð¥¤¥¹¤¬
+Éä¹ç¤¹¤ë¤è¤¦¤Ë¥¢¥¹¥¿¥ê¥¹¥¯¤òµ­¤¹¡£
+ÆóÈÖÌܤÎÍó¤Ë¤Ï¥³¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¥æ¡¼¥¶Ì¾¤Î¥ê¥¹¥È¡¢Ëô¤ÏÁ´¤Æ¤Î¥æ¡¼¥¶¤¬Éä¹ç
+¤¹¤ë¤è¤¦¤Ë¥¢¥¹¥¿¥ê¥¹¥¯¤òµ­¤¹¡£
+»°ÈÖÌܤÎÍó¤Ë¤Ï¥³¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¥í¥°¥¤¥ó¤òµö²Ä¤¹¤ë»þ´Ö¤Î¥ê¥¹¥È¤òµ­¤¹¡£
+.PP
+¥¢¥¯¥»¥¹¥¿¥¤¥à¤Î³Æ¥¨¥ó¥È¥ê¤Ï¡¢
+\fBSu\fR, \fBMo\fR, \fBTu\fR, \fBWe\fR, \fBTh\fR, \fBFr\fR, µÚ¤Ó \fBSa\fR
+¤Èάµ­¤µ¤ì¤¿¥¼¥í¸Ä°Ê¾å¤ÎÍËÆü¤È¡¢¤½¤ì¤Ë³¤¯¥Ï¥¤¥Õ¥ó¤Ç³Ö¤Æ¤é¤ì¤¿»þ´Ö¤ÎÁÈ
+¤«¤é¤Ê¤ë¡£
+·îÍËÆü¤«¤é¶âÍËÆü¤Þ¤Ç¤ò»ØÄꤹ¤ë¤¿¤á¤Ë\fBWk\fR¤ò¡¢
+Á´¤Æ¤ÎÆü¤ò»ØÄꤹ¤ë¤¿¤á¤Ë\fBAl\fR¤È¤¤¤¦Î¬µ­Ë¡¤òÍѤ¤¤ë¤³¤È¤â½ÐÍè¤ë¡£
+ÍËÆü¤Î»ØÄ̵꤬¤¤¾ì¹ç¤Ï¡¢\fBAl\fR¤À¤È¤ß¤Ê¤¹¡£
+.SH Îã
+°Ê²¼¤ÎÎã¤Ç¤Ï¡¢¥æ¡¼¥¶\fBjfh\fR¤¬Ê¿Æü¤Î¸áÁ°9»þ¤«¤é¸á¸å5»þ¤Þ¤Ç
+Á´¤Æ¤Î¥Ý¡¼¥È¤«¤é¥¢¥¯¥»¥¹¤¹¤ë»ö¤òµö²Ä¤·¤Æ¤¤¤ë¡£
+.br
+.sp 1
+*:jfh:Wk0900-1700
+.br
+.sp 1
+°Ê²¼¤Î¥¨¥ó¥È¥ê¤Ç¤Ï¡¢\fBroot\fRµÚ¤Ó\fBoper\fR°Ê³°¤Î¥æ¡¼¥¶¤Ë¤ÏÇ¡²¿¤Ê¤ë»þ´Ö¤Ç¤â
+/dev/console¤«¤é¤Î¥¢¥¯¥»¥¹¤òµö²Ä¤·¤Æ¤¤¤Ê¤¤¡£
+¤³¤ÎÎ㤫¤é\fB/etc/porttime\fR¥Õ¥¡¥¤¥ë¤¬¥¢¥¯¥»¥¹¥¿¥¤¥à¤Î¥ê¥¹¥È¤È¤·¤Æ
+¤É¤ÎÍÍ¤Ê½ç½ø¤Ç½èÍý¤µ¤ì¤ë¤«¤¬Ê¬¤«¤ë¡£
+¾¤ÎÁ´¤Æ¤Î¥æ¡¼¥¶¤ÏÆóÈÖÌܤΥ¨¥ó¥È¥ê¤ËÉä¹ç¤·¡¢½¾¤Ã¤Æconsole¤«¤é¤Î¥¢¥¯¥»¥¹¤Ï
+µö²Ä¤µ¤ì¤Ê¤¤¡£
+.br
+.sp 1
+console:root,oper:Al0000-2400
+.br
+console:*:
+.br
+.sp 1
+°Ê²¼¤Î¥¨¥ó¥È¥ê¤Ç¤Ï¡¢¥æ¡¼¥¶\fBgames\fR¤Ï½¢¶È»þ´Ö³°¤Ê¤éÇ¡²¿¤Ê¤ë¥Ý¡¼¥È¤«¤é¤â
+¥¢¥¯¥»¥¹½ÐÍè¤ëÍͤ˻ØÄꤷ¤Æ¤¤¤ë¡£
+.br
+.sp 1
+*:games:Wk1700-0900,SaSu0000-2400
+.br
+.sp 1
+.SH ¥Õ¥¡¥¤¥ë
+/etc/porttime \- ¥Ý¡¼¥È¤Ø¤Î¥¢¥¯¥»¥¹²Äǽ»þ´Ö¤òµ­¤·¤¿¥Õ¥¡¥¤¥ë
+.SH ´ØÏ¢¹àÌÜ
+login(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/pw_auth.3 b/man/ja/pw_auth.3
new file mode 100644 (file)
index 0000000..8606f36
--- /dev/null
@@ -0,0 +1,130 @@
+.\" Copyright 1992 - 1993, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: pw_auth.3,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PWAUTH 3
+.SH Ì¾Á°
+pwauth \- ´ÉÍý¼Ô¤ÎÀßÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥Éǧ¾Ú¥ë¡¼¥Á¥ó
+.SH ½ñ¼°
+.IP "" .5i
+#include <pwauth.h>
+.IP "" .5i
+int pw_auth (char *command, char *user, int reason, char *input);
+.SH ÀâÌÀ
+.I pw_auth
+¤Ï¡¢»ØÄꤵ¤ì¤¿¥æ¡¼¥¶¤ËÂФ·¤Æ´ÉÍý¼Ô¤¬ÀßÄꤷ¤¿´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹¡£
+.PP
+\fIcommand\fR¤Ïǧ¾Ú¥×¥í¥°¥é¥à¤Î̾Á°¤Ç¤¢¤ë¡£
+¤É¤Îǧ¾Ú¥×¥í¥°¥é¥à¤ò»ÈÍѤ¹¤ë¤«¤Ï¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ëµ­¤µ¤ì¤¿¥æ¡¼¥¶¾ðÊó
+¤Ë¤è¤ê·èÄꤵ¤ì¤ë¡£
+¤³¤Îʸ»úÎó¤Ë¤Ï¡¢¥»¥ß¥³¥í¥ó¤Ç¶èÀÚ¤é¤ì¤¿°ì¤Ä°Ê¾å¤Î¼Â¹Ô¥Õ¥¡¥¤¥ë̾¤ò»ØÄꤹ¤ë¡£
+³Æ¡¹¤Î¥×¥í¥°¥é¥à¤Ïµ­¤µ¤ì¤Æ¤¤¤ë½ç¤Ë¼Â¹Ô¤µ¤ì¤ë¡£
+¥³¥Þ¥ó¥É¥é¥¤¥ó°ú¿ô¤Ï°Ê²¼¤Ëµó¤²¤ëÊýË¡¤Ç»ØÄꤵ¤ì¤ë¡£
+.PP
+\fIuser\fR¤Ï¡¢\fB/etc/passwd\fR¥Õ¥¡¥¤¥ëÃæ¤Ëµ­¤µ¤ì¤¿¡¢
+ǧ¾Ú¤µ¤ì¤ë¥æ¡¼¥¶Ì¾¤Ç¤¢¤ë¡£
+¥æ¡¼¥¶¥¨¥ó¥È¥ê¤Ï¥æ¡¼¥¶Ì¾¤Ç»ØÄꤵ¤ì¤ë¡£
+¤·¤¿¤¬¤Ã¤Æ¡¢°ì°ÕŪ¤Ç¤Ê¤¤¥æ¡¼¥¶ID¤¬¤¢¤Ã¤Æ¤âÎɤ¯¡¢
+¤½¤Î¥æ¡¼¥¶ID¤Ë·ë¤Ó¤Ä¤±¤é¤ì¤¿°Û¤Ê¤ë¥æ¡¼¥¶Ì¾³Æ¡¹¤ËÂФ·¤Æ°Û¤Ê¤ëǧ¾Ú¥×¥í¥°¥é¥à
+µÚ¤Óǧ¾Ú¾ðÊó¤ò»ØÄê¤Ç¤­¤ë¡£
+.PP
+»ÈÍѤǤ­¤ë³Æ¡¹¤Îǧ¾ÚÊýË¡¤Ï¡¢Á´¤¯°Û¤Ê¤ë»ÅÊý¤Ç¼Â¹Ô¤µ¤ìÆÀ¤ë¡£
+ÆÃ¤Ëµ­¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢¥æ¡¼¥¶¤È¤ä¤ê¤È¤ê¤¹¤ë¤¿¤á¤Ëɸ½àŪ¤Ê
+¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿0,1µÚ¤Ó2¤ò»È¤¦¤³¤È¤¬½ÐÍè¤ë¡£
+ǧ¾Ú¤òÍ×ÀÁ¤·¤¿¥æ¡¼¥¶¤ÎƱ°ìÀ­¤òÄ´¤Ù¤ë¤¿¤á¤Ë¼ÂºÝ¤Î¥æ¡¼¥¶ID¤òÍѤ¤¤ë¤³¤È¤â½ÐÍè¤ë¡£
+\fIreason\fR¤Ï°Ê²¼¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ë
+.IP PW_SU 1i
+»ØÄꤷ¤¿¥æ¡¼¥¶¤Î¼Â¥æ¡¼¥¶ID¤ËÊѹ¹¤¹¤ë¤¿¤á¤Ë¡¢¥³¥Þ¥ó¥É¤òµ¯Æ°¤·¤¿¥æ¡¼¥¶¤Î
+¼Â¥æ¡¼¥¶ID¤Îǧ¾Ú¤ò¹Ô¤¦¡£
+\fB-s\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_LOGIN 1i
+¿·¤¿¤Ë¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥ó¤òºî¤ê½Ð¤½¤¦¤È¤·¤Æ¤¤¤ë»ØÄꤵ¤ì¤¿¥æ¡¼¥¶¤Îǧ¾Ú¤ò
+¹Ô¤¦¡£
+\fB-l\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_ADD 1i
+»ØÄꤵ¤ì¤¿¥æ¡¼¥¶¤ËÂФ·¤Æ¿·¤¿¤Ê¥¨¥ó¥È¥ê¤òºî¤ë¡£
+¤³¤ì¤Ë¤è¤ê¡¢Ç§¾Ú¥×¥í¥°¥é¥à¤¬¿·µ¬¥æ¡¼¥¶ÍѤε­²±Îΰè¤ò½àÈ÷¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+\fB-a\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_CHANGE 1i
+»ØÄꤵ¤ì¤¿¥æ¡¼¥¶¤Î´û¸¤Î¥¨¥ó¥È¥ê¤òÊѹ¹¤¹¤ë¡£
+¤³¤ì¤Ë¤è¤ê¡¢Ç§¾Ú¥×¥í¥°¥é¥à¤¬´û¸¤Î¥æ¡¼¥¶¤Îǧ¾Ú¾ðÊó¤òÊѹ¹¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+\fB-c\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_DELETE 1i
+»ØÄꤵ¤ì¤¿¥æ¡¼¥¶¤Îǧ¾Ú¾ðÊó¤ò¾Ãµî¤¹¤ë¡£
+¤³¤ì¤Ë¤è¤ê¡¢°Ê¸å¤³¤Îǧ¾Ú¥×¥í¥°¥é¥à¤òÍѤ¤¤ÆÇ§¾Ú¤µ¤ì¤ë»ö¤Î̵¤¯¤Ê¤Ã¤¿¥æ¡¼¥¶
+¾ðÊó¤Îµ­²±Îΰè¤ò²óÉü¤¹¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+\fB-d\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_TELNET 1i
+\fItelnet\fR¥³¥Þ¥ó¥É¤òÍѤ¤¤Æ¥·¥¹¥Æ¥à¤ËÀܳ¤·¤ÆÍ褿¥æ¡¼¥¶¤Îǧ¾Ú¤ò¹Ô¤¦¡£
+\fB-t\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_RLOGIN 1i
+\fIrlogin\fR¥³¥Þ¥ó¥É¤òÍѤ¤¤Æ¥·¥¹¥Æ¥à¤ËÀܳ¤·¤ÆÍ褿¥æ¡¼¥¶¤Îǧ¾Ú¤ò¹Ô¤¦¡£
+\fB-r\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.IP PW_FTP 1i
+\fIftp\fR¥³¥Þ¥ó¥É¤òÍѤ¤¤Æ¥·¥¹¥Æ¥à¤ËÀܳ¤·¤ÆÍ褿¥æ¡¼¥¶¤Îǧ¾Ú¤ò¹Ô¤¦¡£
+\fB-f\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+¥æ¡¼¥¶¤È¤ä¤ê¤È¤ê¤¹¤ë¤¿¤á¤Ëɸ½à¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤òÍѤ¤¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+ɸ½àÆþÎÏ¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Ï¿Æ¥×¥í¥»¥¹¤Ë·ë¤Ó¤Ä¤±¤é¤ì¤Æ¤ª¤ê¡¢
+°ìÊý¾¤ÎÆó¤Ä¤Î½ÐÎÏ¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Ï\fB/dev/null\fR¤Ë·ë¤Ó¤Ä¤±¤é¤ì¤Æ¤¤¤ë¡£
+\fIpw_auth\fR´Ø¿ô¤Ï¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿0¤òÍѤ¤¤Æ°ì¹Ô¤Î¥Ç¡¼¥¿¤ò
+ǧ¾Ú¥×¥í¥°¥é¥à¤Ë¥Ñ¥¤¥×¤¹¤ë¡£
+.IP PW_REXEC 1i
+\fIrexec\fR¥³¥Þ¥ó¥É¤òÍѤ¤¤Æ¥·¥¹¥Æ¥à¤ËÀܳ¤·¤ÆÍ褿¥æ¡¼¥¶¤Îǧ¾Ú¤ò¹Ô¤¦¡£
+\fB-x\fR¥ª¥×¥·¥ç¥ó¤Î¸å¤Ë¥æ¡¼¥¶Ì¾¤ò»ØÄꤷ¤ÆÇ§¾Ú¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+¥ê¥â¡¼¥È¥æ¡¼¥¶¤È¤ä¤ê¤È¤ê¤¹¤ë¤¿¤á¤Ëɸ½à¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤òÍѤ¤¤ë¤³¤È¤Ï
+½ÐÍè¤Ê¤¤¡£
+ɸ½àÆþÎÏ¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Ï¿Æ¥×¥í¥»¥¹¤Ë·ë¤Ó¤Ä¤±¤é¤ì¤Æ¤ª¤ê¡¢
+°ìÊý¾¤ÎÆó¤Ä¤Î½ÐÎÏ¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤Ï\fB/dev/null\fR¤Ë·ë¤Ó¤Ä¤±¤é¤ì¤Æ¤¤¤ë¡£
+\fIpw_auth\fR´Ø¿ô¤Ï¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿0¤òÍѤ¤¤Æ°ì¹Ô¤Î¥Ç¡¼¥¿¤ò
+ǧ¾Ú¥×¥í¥°¥é¥à¤Ë¥Ñ¥¤¥×¤¹¤ë¡£
+.PP
+ºÇ¸å¤Î°ú¿ô¤ÏPW_FTPµÚ¤ÓPW_REXEC¤ÎÊýË¡¤ÇÍѤ¤¤é¤ì¤ëǧ¾Ú¥Ç¡¼¥¿¤Ç¤¢¤ê¡¢
+°ì¹Ô¤Îʸ¤È¤·¤Æ°·¤ï¤ì¤Æ¡¢Ç§¾Ú¥×¥í¥°¥é¥à¤Ë¥Ñ¥¤¥×¤µ¤ì¤ë¡£
+PW_CHANGE¤ÎÊýË¡¤Ç¥æ¡¼¥¶Ì¾¤¬Êѹ¹¤µ¤ì¤ë¾ì¹ç¤Ï¡¢\fIinput\fR¤ÎÆâÍÆ¤Ï
+°ÊÁ°ÍѤ¤¤Æ¤¤¤¿¥æ¡¼¥¶Ì¾¤È¤Ê¤Ã¤Æ¤¤¤ë¡£
+.SH ·Ù¹ð
+¤³¤Î´Ø¿ô¤Ï¼ÂºÝ¤Î¥»¥Ã¥·¥ç¥ó¤òºî¤ê½Ð¤¹¤³¤È¤Ï¤·¤Ê¤¤¡£
+»ØÄꤵ¤ì¤¿¥æ¡¼¥¶¤Î¥»¥Ã¥·¥ç¥ó¤òºî¤ê½Ð¤¹»ö¤òµö²Ä¤¹¤ë¤«Èݤ«¤òÅú¤¨¤ë¤À¤±¤Ç¤¢¤ë¡£
+.PP
+¤Þ¤À¥Í¥Ã¥È¥ï¡¼¥¯¥ª¥×¥·¥ç¥ó¤Ï¥Æ¥¹¥È¤·¤Æ¤¤¤Ê¤¤¡£
+.SH ÊÖ¤êÃÍ
+\fIpw_auth\fR´Ø¿ô¤Ï¡¢Ç§¾Ú¥×¥í¥°¥é¥à¤¬½ªÎ»¥³¡¼¥É0¤Ç½ªÎ»¤·¤¿¾ì¹ç¤Ï0¤ò¡¢
+¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¥¼¥í°Ê³°¤ÎÃͤòÊÖ¤¹¡£
+.SH ´ØÏ¢¹àÌÜ
+login(1), passwd(1), su(1), useradd(1), userdel(1), usermod(1)
+.\" .SH ËÝÌõ¼Ô
+.\" ¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/pwauth.8 b/man/ja/pwauth.8
new file mode 100644 (file)
index 0000000..590d870
--- /dev/null
@@ -0,0 +1,67 @@
+.\" Copyright 1992, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: pwauth.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PWAUTH 8
+.SH Ì¾Á°
+pwauth \- ´ÉÍý¼Ô¤ÎÀßÄꤷ¤¿¥Ñ¥¹¥ï¡¼¥Éǧ¾ÚË¡
+.SH ÀâÌÀ
+¥·¥¹¥Æ¥à¤Î´ÉÍý¼Ô¤Ï¡¢¥æ¡¼¥¶¤¬ËܿͤǤ¢¤ë»ö¤òǧ¾Ú¤¹¤ë¼êÃʤȤ·¤Æ¡¢
+¥×¥í¥°¥é¥à¤ò¤¤¤¯¤Ä¤«ÀßÄꤷ¤Æ¤ª¤¯»ö¤¬½ÐÍè¤ë¡£
+¤½¤ì¤é¤Î¥×¥í¥°¥é¥à¤Ï\fB/etc/passwd\fR¤â¤·¤¯¤Ï\fB/etc/shadow\fR¥Õ¥¡¥¤¥ëÃæ¤Ç¡¢
+°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤ÎÂå¤ï¤ê¤È¤·¤Æ»ØÄꤵ¤ì¤ë¡£
+¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤ò´ÉÍý¤¹¤ë¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤Ï¡¢°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥ÉÍó
+¤òÄ´¤Ù¡¢¤½¤Î¥æ¡¼¥¶¤ËÂФ·¤Æ¥·¥¹¥Æ¥à´ÉÍý¼Ô¤¬Ç§¾Ú¥×¥í¥°¥é¥à¤òÀßÄꤷ¤Æ
+¤¤¤ë¤«¤É¤¦¤«¤òȽÃǤ¹¤ë¡£
+´ÉÍý¥×¥í¥°¥é¥à¤Î¤¤¤º¤ì¤«¤¬¡¢
+¤³¤ì¤«¤éÊѹ¹¤µ¤ì¤ë¥æ¡¼¥¶¤Ëǧ¾Ú¥×¥í¥°¥é¥à¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë¤È
+ȽÃǤ·¤¿¾ì¹ç¤Ï¾ï¤Ë¡¢\fIpw_auth\fR´Ø¿ô¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
+.PP
+¥æ¡¼¥¶Ç§¾Ú¤ËÍѤ¤¤ëºÇ½é¤Î¥¨¥ó¥È¥ê¤Ï\fIuseradd\fR¥³¥Þ¥ó¥É¤Ë¤è¤êÀ¸À®¤µ¤ì¤ë¡£
+ǧ¾Ú¾ðÊó¤ÎÊѹ¹¤ä¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤òºï½ü¤¹¤ëÅù¤ÎÊѹ¹¤ËºÝ¤·¤Æ¤Ï
+\fIpw_auth\fR´Ø¿ô¤¬¸Æ¤Ó½Ð¤µ¤ì¡¢
+³Æ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Îǧ¾Ú¾ðÊ󤬺ǿ·¤Î¾õÂ֤˰ݻý¤µ¤ì¤ë¡£
+.PP
+ǧ¾Ú¥×¥í¥°¥é¥à¼«ÂÎ¤Ï¼ÂºÝ¤Î¥í¥°¥¤¥óËô¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥»¥Ã¥·¥ç¥ó¤ò
+À¸À®¤·¤Ê¤¤¡£
+ǧ¾Ú¥×¥í¥°¥é¥à¤Î½ªÎ»¥³¡¼¥É¤Ï¥í¥°¥¤¥ó¤¬µö²Ä¤µ¤ì¤¿¤«Èݤ«¤ÎȽÃǤËÍѤ¤¤é¤ì¤ë¡£
+¸Æ¤Ó½Ð¤·¤¿¥×¥í¥»¥¹¤Ë¤Ï¡¢¥í¥°¥¤¥ó¤â¤·¤¯¤Ï¥Í¥Ã¥È¥ï¡¼¥¯¥»¥Ã¥·¥ç¥ó¤òÀ¸À®
+¤·ÆÀ¤ëŬÀÚ¤ÊÆÃ¸¢¤¬¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ´ØÏ¢¹àÌÜ
+login(1), passwd(1), su(1), useradd(1), userdel(1), usermod(1), pwauth(3)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/pwck.8 b/man/ja/pwck.8
new file mode 100644 (file)
index 0000000..b2323ad
--- /dev/null
@@ -0,0 +1,113 @@
+.\" Copyright 1992, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: pwck.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PWCK 8
+.SH Ì¾Á°
+pwck \- ¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Î´°Á´À­¤ò¸¡¾Ú¤¹¤ë
+.SH ½ñ¼°
+\fBpwck\fR [ \fB-r\fR ] [ \fIpassword\fR \fIshadow\fR ]
+.SH ½ñ¼°
+\fBpwck\fR¤Ï¥·¥¹¥Æ¥à¤Îǧ¾Ú¾ðÊó¤Î´°Á´À­¤Î¸¡¾Ú¤ò¹Ô¤¦¡£
+\fB/etc/passwd\fRµÚ¤Ó\fB/etc/shadow\fR¥Õ¥¡¥¤¥ëÃæ¤ÎÁ´¤Æ¤Î¥¨¥ó¥È¥ê¡¼¤ËÂФ·¤Æ¡¢
+½ñ¼°¤¬Àµ¤·¤¤¤«µÚ¤Ó³ÆÍó¤Ëµ­¤µ¤ì¤Æ¤¤¤ë¥Ç¡¼¥¿¤ÏÍ­¸ú¤Ê¤â¤Î¤«¤É¤¦¤«¤Î¸¡¾Ú¤¬
+¹Ô¤Ê¤ï¤ì¤ë¡£
+½ñ¼°¤¬Àµ¤·¤¯¤Ê¤«¤Ã¤¿¤ê¤½¤Î¾¤ÎÄûÀµÉÔǽ¤Ê¸í¤ê¤ò´Þ¤à¥¨¥ó¥È¥ê¡¼¤Ïºï½ü¤òÂ¥¤µ¤ì¤ë¡£
+.P
+³Æ¡¹¤Î¥¨¥ó¥È¥ê¡¼¤ËÂФ·¤Æ
+.sp
+.in +.5i
+- Íó¤Î¿ô¤¬Àµ¤·¤¤¤«
+.br
+- ¥æ¡¼¥¶Ì¾¤Ë½ÅÊ£¤¬¤Ê¤¤¤«
+.br
+- ¥æ¡¼¥¶µÚ¤Ó¥°¥ë¡¼¥×¥¢¥¤¥Ç¥ó¥Æ¥£¥Õ¥¡¥¤¥¢¤¬Í­¸ú¤Ê¤â¤Î¤Ç¤¢¤ë¤«
+.br
+- ¼ç¥°¥ë¡¼¥×¤¬Í­¸ú¤Ê¤â¤Î¤Ç¤¢¤ë¤«
+.br
+- ¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤¬Àµ¤·¤¤¤«
+.br
+- ¥í¥°¥¤¥ó¥·¥§¥ë¤¬Àµ¤·¤¤¤«
+.in -.5i
+Åù¤Î¥Á¥§¥Ã¥¯¤¬¹Ô¤ï¤ì¤ë¡£
+.sp
+.P
+Íó¤Î¿ô¤¬Àµ¤·¤¤¤³¤ÈµÚ¤Ó¥æ¡¼¥¶Ì¾¤Î½ÅÊ£¤¬¤Ê¤¤¤³¤È¤¬ºÇ½ÅÍ×»ö¹à¤Ç¤¢¤ë¡£
+Íó¤Î¿ô¤¬Àµ¤·¤¯¤Ê¤¤¾ì¹ç¡¢¤½¤Î¹Ô¤Î¥¨¥ó¥È¥ê¡¼¤òºï½ü¤¹¤ë¤è¤¦Â¥¤µ¤ì¤ë¡£
+ºï½ü¤ËƱ°Õ¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¤½¤ì°Ê¹ß¤Î¥Á¥§¥Ã¥¯¤Ï̵»ë¤µ¤ì¤ë¡£
+½ÅÊ£¤·¤¿¥æ¡¼¥¶Ì¾¤¬¤¢¤Ã¤¿¾ì¹ç¤âºï½ü¤òÂ¥¤µ¤ì¤ë¤¬¡¢¤³¤Î¾ì¹ç¤Ï
+¤½¤ì°Ê¹ß¤Î¥Á¥§¥Ã¥¯¤Ï³¹Ô¤µ¤ì¤ë¡£
+¾¤ÎÁ´¤Æ¤Î¥¨¥é¡¼¤ËÂФ·¤Æ¤Ï·Ù¹ð¤¬¤Ê¤µ¤ì¤ë¤Î¤ß¤Ç¤¢¤ê¡¢¤½¤Î¾ì¹ç¤Ï
+¸í¤ê¤òÄûÀµ¤¹¤ë¤¿¤á¤Ë\fBusermod\fR¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤è¤¦´«¤á¤é¤ì¤ë¡£
+.P
+\fB/etc/passwd\fR¥Õ¥¡¥¤¥ë¤ËºîÍѤ¹¤ë¥³¥Þ¥ó¥É¤Ï¡¢¸í¤Ã¤¿¤â¤·¤¯¤Ï
+½ÅÊ£¤·¤¿¥¨¥ó¥È¥ê¡¼¤òÊѹ¹¤¹¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+¤½¤ÎºÝ¤Ï¡¢\fBpwck\fR¤òÍѤ¤¤Æ¸í¤ê¤Î¤¢¤ë¥¨¥ó¥È¥ê¡¼¤òºï½ü¤¹¤Ù¤­¤Ç¤¢¤ë¡£
+.SH ¥ª¥×¥·¥ç¥ó
+¥Ç¥£¥Õ¥©¥ë¥È¤Ç¤Ï¡¢\fBpwck\fR¤Ï\fB/etc/passwd\fR¥Õ¥¡¥¤¥ëµÚ¤Ó
+\fB/etc/shadow\fR¤ËÂФ·¤ÆºîÍѤ¹¤ë¡£
+\fIpasswd\fRµÚ¤Ó\fIshadow\fR¥Ñ¥é¥á¡¼¥¿¤òÍѤ¤¤ÆÊ̤Υե¡¥¤¥ë¤òÁªÂò¤¹¤ë
+»ö¤â¤Ç¤­¤ë¡£
+²Ã¤¨¤Æ¡¢\fB-r\fR¥Õ¥é¥Ã¥°¤Ç»Ø¼¨¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢
+¥ê¡¼¥É¥ª¥ó¥ê¡¼¥â¡¼¥É¤Ç¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤¹¤ë¤³¤È¤â¤Ç¤­¤ë¡£
+¤³¤Î¾ì¹ç¤Ï¡¢Êѹ¹¤ò¹Ô¤¦¤«¤É¤¦¤«¤Î¼ÁÌä¤ËÂФ·¤Æ¤¤¤Á¤¤¤ÁÅú¤¨¤Ê¤¯¤È¤â¡¢
+¼«Æ°Åª¤Ë\fBno\fR¤È²óÅú¤µ¤ì¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó
+.br
+/etc/shadow \- °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¾ðÊó
+.br
+/etc/group \- ¥°¥ë¡¼¥×¤Ë´Ø¤¹¤ë¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+usermod(1), group(4), passwd(4), shadow(4)
+.SH ÊÖ¤êÃÍ
+\fIpwck\fR¥³¥Þ¥ó¥É¤Ï°Ê²¼¤ÎÌá¤êÃͤòÊÖ¤·¤Æ½ªÎ»¤¹¤ë:
+.IP 0 5
+À®¸ù
+.IP 1 5
+¹½Ê¸¥¨¥é¡¼
+.IP 2 5
+¸í¤Ã¤¿¥Ñ¥¹¥ï¡¼¥É¥¨¥ó¥È¥ê¡¼¤¬Â¸ºß¤¹¤ë
+.IP 3 5
+¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤ò¥ª¡¼¥×¥ó¤Ç¤­¤Ê¤¤
+.IP 4 5
+¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤ò¥í¥Ã¥¯¤Ç¤­¤Ê¤¤
+.IP 5 5
+¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤ò¹¹¿·½ÐÍè¤Ê¤¤
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/pwconv.8 b/man/ja/pwconv.8
new file mode 100644 (file)
index 0000000..6465ee9
--- /dev/null
@@ -0,0 +1,73 @@
+.\" Copyright 1989 - 1993, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: pwconv.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH PWCONV 8
+.SH Ì¾Á°
+pwconv \- shadow¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤òÊÑ´¹¡¦¹¹¿·¤¹¤ë
+.SH ½ñ¼°
+pwconv
+.SH ÀâÌÀ
+\fIPwconv\fR¤Ï¸Å¤¤¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¾ðÊó¤ò¿·¤¿¤Êshadow¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ë
+¥³¥Ô¡¼¤·¡¢¤Þ¤¿¥ª¥×¥·¥ç¥ó¤Î´û¸¤Îshadow¥Õ¥¡¥¤¥ë¤«¤é¥¨¥ó¥È¥ê¤òÉղ乤롣
+¿·¤·¤¤¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ï\fBnpasswd\fR¡¢¿·¤·¤¤shadow¥Õ¥¡¥¤¥ë¤Ï\fBnshadow\fR
+¤È¤¤¤¦Ì¾Á°¤ÇÊݸ¤µ¤ì¤ë¡£
+À¸À®¤µ¤ì¤ëξ¥Õ¥¡¥¤¥ë¤Îµö²Ä¥â¡¼¥É¤Ï¤È¤â¤Ë¡¢½êÍ­¼Ô¤Î¤ß¤¬read¥¢¥¯¥»¥¹¤ò
+½ÐÍè¤ëÍͤËÀßÄꤵ¤ì¤ë¡£
+´û¸¤Îshadow¥Õ¥¡¥¤¥ë¤Î¥¨¥ó¥È¥ê¤Ï¤½¤Î¤Þ¤Þ¥³¥Ô¡¼¤µ¤ì¤ë¡£
+System V Release 3.2¥Õ¥©¡¼¥Þ¥Ã¥È¤Îshadow¥Õ¥¡¥¤¥ë¥¨¥ó¥È¥ê¤Ï
+²¿¤â¸À¤ï¤ºSystem V Release 4¥Õ¥©¡¼¥Þ¥Ã¥È¤ËÊÑ´¹¤µ¤ì½ÐÎϤµ¤ì¤ë¡£
+¥¨¥ó¥È¥ê¤Ë¶õÇòÍ󤬤¢¤ë»þ¤Ï(ŬÅö¤Ê¤é¤Ð)¥Ç¥£¥Õ¥©¥ë¥ÈÃͤ¬ÁÞÆþ¤µ¤ì¤ë¡£
+¥Ñ¥¹¥ï¡¼¥É¤Î´ü¸Â¾ðÊ󤬴û¤ËÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç¤Ï¡¢
+¿·¤¿¤Ê¥¨¥ó¥È¥ê¤Î¥Ñ¥¹¥ï¡¼¥ÉÍ­¸ú´ü¸Â¤Ï10000Æü¸å¤ÈÀßÄꤵ¤ì¡¢
+ºÇ½ª¹¹¿·Æü¤Ï¤³¤Î¥×¥í¥°¥é¥à¤òµ¯Æ°¤·¤¿ÆüÉդȤʤ롣
+¥Ñ¥¹¥ï¡¼¥ÉÍ󤬶õÇò¤Î¥¨¥ó¥È¥ê¤Ïshadow¥Õ¥¡¥¤¥ë¤ËÁ´¤¯¥³¥Ô¡¼¤µ¤ì¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¸Å¤¤°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥ÉµÚ¤Ó¤½¤ÎÍ­¸ú´ü¸Â
+.br
+/etc/shadow \- °ÊÁ°¤ËÊÑ´¹¤µ¤ì¤¿shadow¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë
+.br
+./npasswd \- ¿·µ¬ºîÀ®¤µ¤ì¤ë¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë
+.br
+./nshadow \- ¿·µ¬ºîÀ®¤µ¤ì¤ëshadow¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë
+.SH ´ØÏ¢¹àÌÜ
+passwd(1),
+passwd(4),
+shadow(4),
+pwunconv(8)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/shadow.3 b/man/ja/shadow.3
new file mode 100644 (file)
index 0000000..a171677
--- /dev/null
@@ -0,0 +1,144 @@
+.\" Copyright 1989 - 1993, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: shadow.3,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH SHADOW 3
+.SH Ì¾Á°
+shadow \- °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ëÍѥ롼¥Á¥ó
+.SH ½ñ¼°
+#include <shadow.h>
+.br
+struct spwd *getspent();
+.br
+struct spwd *getspnam(char * name);
+.br
+void setspent();
+.br
+void endspent();
+.br
+struct spwd *fgetspent(FILE *fp);
+.br
+struct spwd *sgetspent(char *cp);
+.br
+int putspent(struct spwd *p,FILE *fp);
+.br
+int lckpwdf ();
+.br
+int ulckpwdf ();
+.SH ÀâÌÀ
+.I shadow
+¤Ïshadow¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë\fB/etc/shadow\fR¤ÎÆâÍÆ¤òÁàºî¤¹¤ë¥ë¡¼¥Á¥ó¤Ç¤¢¤ë¡£
+.sp
+struct spwd {
+.in +.5i
+.br
+       char    *sp_namp; /* ¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó̾ */
+.br
+       char    *sp_pwdp; /* °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É */
+.br
+       long    sp_lstchg; /* ºÇ½ª¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹Æü»þ */
+.br
+       int     sp_min; /* ¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹ÉÔǽÆü¿ô */
+.br
+       int     sp_max; /* ¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹Í×µáËø¤ÎÆü¿ô */
+.br
+       int     sp_warn; /* ¥Ñ¥¹¥ï¡¼¥É´ü¸ÂËþλ·Ù¹ðÆü¿ô */
+.br
+       int     sp_inact; /* ¥¢¥«¥¦¥ó¥È̵¸ú¤Þ¤Ç¤ÎÆü¿ô */
+.br
+       int     sp_expire; /* ¥¢¥«¥¦¥ó¥È´ü¸ÂËþλ¤ÎÆüÉÕ */
+.br
+       int     sp_flag; /* ¾­Íè¤Î»ÈÍѤËͽÌó */
+.br
+.in -.5i
+}
+.PP
+³ÆÍó¤Î°ÕÌ£¤Ï
+.sp
+sp_namp \- ¥Ì¥ë½ªÃ¼¤Î¥æ¡¼¥¶Ì¾¤Ø¤Î¥Ý¥¤¥ó¥¿
+.br
+sp_pwdp \- ¥Ì¥ë½ªÃ¼¤Î¥Ñ¥¹¥ï¡¼¥É¤Ø¤Î¥Ý¥¤¥ó¥¿
+.br
+sp_lstchg \- 1970ǯ1·î1Æü¤«¤é¥Ñ¥¹¥ï¡¼¥ÉºÇ½ªÊѹ¹Æü»þËø¤ÎÆü¿ô
+.br
+sp_min \- ¥Ñ¥¹¥ï¡¼¥ÉÊѹ¹¤¬½ÐÍè¤ëÍͤˤʤë¤Þ¤Ç¤ÎÆü¿ô
+.br
+sp_max \- ¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤Ê¤¯¤Æ¤âÎɤ¤Æü¿ô
+.br
+sp_warn \- ¥Ñ¥¹¥ï¡¼¥É¤¬Ìµ¸ú¤È¤Ê¤ë¤Þ¤Ç¤Ë¥æ¡¼¥¶¤Ë¥Ñ¥¹¥ï¡¼¥É¤¬
+̵¸ú¤È¤Ê¤ê¤«¤«¤Ã¤Æ¤¤¤ë¤È¤Î·Ù¹ð¤ò½Ð¤¹Æü¿ô
+.br
+sp_inact \- ¥Ñ¥¹¥ï¡¼¥É¤¬Ìµ¸ú¤È¤Ê¤Ã¤Æ¤«¤é¥¢¥«¥¦¥ó¥È¤¬ÉÔǽ¤È¤Ê¤ê
+»ÈÍѤǤ­¤Ê¤¯¤Ê¤ë¤Þ¤Ç¤ÎÆü¿ô
+.br
+sp_expire \- 1970ǯ1·î1¤«¤é¥¢¥«¥¦¥ó¥È»ÈÍÑÉÔǽ¤È¤Ê¤ëËø¤ÎÆü¿ô
+.br
+sp_flag \- ¾­Íè¤Î»ÈÍѤËͽÌó
+.SH ÀâÌÀ
+\fIgetspent\fR, \fIgetspname\fR, \fIfgetspent\fR, µÚ¤Ó \fIsgetspent\fR
+¤Ï³Æ¡¹\fBstruct spwd\fR¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£
+\fIgetspent\fR¤Ï¥Õ¥¡¥¤¥ë¤«¤é¼¡¤Î¥¨¥ó¥È¥ê¤ò¡¢\fIfgetspent\fR¤Ï
+»ØÄꤵ¤ì¤¿¥¹¥È¥ê¡¼¥à¤«¤é¼¡¤Î¥¨¥ó¥È¥ê¤òÊÖ¤¹¡£
+¤³¤ÎºÝ¡¢¥Õ¥¡¥¤¥ë¤ÏÀµ¤·¤¤½ñ¼°¤Ç¤¢¤ë²¾Äꤷ¤Æ¤¤¤ë¡£
+\fIsgetspent\fR¤ÏÆþÎϤȤ·¤ÆÍ¿¤¨¤é¤ì¤¿Ê¸»úÎó¤òÍѤ¤¤Æ\fBstruct spwd\fR
+¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤¹¡£
+\fIgetspnam\fR¤Ï¥Õ¥¡¥¤¥ëÃæ¤Î¸½ºß¤Î°ÌÃÖ¤«¤é\fIname\fR¤ËÉä¹ç¤¹¤ë¥¨¥ó¥È¥ê
+¤òõ¤¹¡£
+.PP
+\fIsetspent\fRµÚ¤Ó\fIendspent\fR¤Ïshadow¤·¤¿¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ø¤Î
+¥¢¥¯¥»¥¹¤òÉס¹³«»ÏµÚ¤Ó½ªÎ»¤¹¤ë¤¿¤á¤ËÍѤ¤¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+.PP
+\fB/etc/shadow\fR¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ëÇÓ¾Ū¤Ê¥¢¥¯¥»¥¹¤òÊݾڤ¹¤ë¤¿¤á¤Ë¡¢
+\fIlckpwdf\fRµÚ¤Ó\fIulckpwdf\fR¥ë¡¼¥Á¥ó¤òÍѤ¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+\fIlckpwdf\fR¤Ï\fIpw_lock\fR¤òÍѤ¤¤ÆºÇÂç15Éô֥í¥Ã¥¯¤ò¤·¤è¤¦¤È¤¹¤ë¡£
+¤½¤·¤Æ¡¢ºÇ½é¤Î15ÉäλĤê¤òÍѤ¤¤ÆÆóÅÙÌܤΥí¥Ã¥¯¤ò¤·¤è¤¦¤È¤·Â³¤±¤ë¡£
+Á´Éô¤Ç15Éô֤δ֤ˤ¤¤º¤ì¤«¤Î»î¤ß¤¬¼ºÇÔ¤·¤¿¾ì¹ç¤Ï¡¢\fIlckpwdf\fR¤Ï-1¤òÊÖ¤¹¡£
+¤¤¤º¤ì¤Î¥í¥Ã¥¯¤âÀ®¸ù¤·¤¿¾ì¹ç¤Ï0¤¬ÊÖ¤µ¤ì¤ë¡£
+.SH ÊÖ¤êÃÍ
+¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Ï¡¢¥¨¥ó¥È¥ê¤¬»Ä¤Ã¤Æ¤¤¤Ê¤¤¾ì¹çËô¤Ï½èÍý¤Î²áÄø¤Ç
+¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤ËNULL¤òÊÖ¤¹¡£
+ÊÖ¤êÃͤ¬\fBint\fR¤Ç¤¢¤ë¥ë¡¼¥Á¥ó¤Ï¡¢À®¸ù»þ¤Ë¤Ï0¤ò¡¢¼ºÇÔ»þ¤Ë¤Ï-1¤òÊÖ¤¹¡£
+.SH ·Ù¹ð
+shadow¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤ÏÀ©¸Â¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¢
+¤³¤ì¤é¤Î¥ë¡¼¥Á¥ó¤Ï¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Î¤ßÍѤ¤¤ë¤³¤È¤¬½ÐÍè¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/shadow \- °Å¹æ²½¤µ¤ì¤¿¥æ¡¼¥¶¥Ñ¥¹¥ï¡¼¥É
+.SH ´ØÏ¢¹àÌÜ
+getpwent(3),
+shadow(5)
+.\" .SH ËÝÌõ¼Ô
+.\" ¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/shadow.5 b/man/ja/shadow.5
new file mode 100644 (file)
index 0000000..8b587ee
--- /dev/null
@@ -0,0 +1,103 @@
+.\" Copyright 1989 - 1990, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: shadow.5,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH SHADOW 5
+.SH Ì¾Á°
+shadow \- °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë
+.SH ÀâÌÀ
+.I shadow
+¤Ë¤Ï¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¤ËÂФ¹¤ë°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Î¾ðÊó¡¢µÚ¤Ó
+¥ª¥×¥·¥ç¥ó¤È¤·¤Æ¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤Î¾ðÊ󤬵­¤µ¤ì¤Æ¤¤¤ë¡£
+´Þ¤Þ¤ì¤Æ¤¤¤ëÆâÍÆ¤Ï
+.IP "" .5i
+¥í¥°¥¤¥ó̾
+.IP "" .5i
+°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É
+.IP "" .5i
+1970ǯ1·î1Æü¤«¤éºÇ¸å¤Ë¥Ñ¥¹¥ï¡¼¥É¤¬Êѹ¹¤µ¤ì¤¿ÆüËø¤ÎÆü¿ô
+.IP "" .5i
+¥Ñ¥¹¥ï¡¼¥É¤¬Êѹ¹²Ä¤È¤Ê¤ë¤Þ¤Ç¤ÎÆü¿ô
+.IP "" .5i
+¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¯¤Ê¤ëÆü¤Þ¤Ç¤ÎÆü¿ô
+.IP "" .5i
+¥Ñ¥¹¥ï¡¼¥ÉÍ­¸ú´ü¸Â¤¬Íè¤ë¤³¤È¤ò¥æ¡¼¥¶¤Ë·Ù¹ð¤¹¤ëÆü¿ô
+.IP "" .5i
+¥Ñ¥¹¥ï¡¼¥ÉÍ­¸ú´ü¸Â¤¬²á¤®¤Æ¤«¤é¥¢¥«¥¦¥ó¥È¤¬»ÈÍÑÉÔǽ¤Ë¤Ê¤ëËø¤ÎÆü¿ô
+.IP "" .5i
+1970ǯ1·î1Æü¤«¤é¥¢¥«¥¦¥ó¥È¤¬»ÈÍÑÉÔǽ¤Ë¤Ê¤ëÆü¤Þ¤Ç¤ÎÆü¿ô
+.IP "" .5i
+ͽÌ󤵤줿Íó
+.PP
+¥Ñ¥¹¥ï¡¼¥ÉÍó¤Ïɬ¤ºµ­Æþ¤µ¤ì¤Æ¤¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+°Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥É¤Ï¡¢a¤«¤éz¡¢A¤«¤éZ¤Î¥¢¥ë¥Õ¥¡¥Ù¥Ã¥È¡¢
+0¤«¤é9Ëø¤Î¿ô»úµÚ¤Ó\.¤È/¤Î64ʸ»ú¤Î¤¦¤Á¤Î13¤«¤é24ʸ»ú¤«¤é¤Ê¤ë¡£
+¤³¤Îʸ»úÎ󤬤ɤΤ褦¤Ë²ò¼á¤µ¤ì¤ë¤«¤Î¾ÜºÙ¤Ï\fIcrypt(3)\fR¤ò»²¾È¤»¤è¡£
+.PP
+ºÇ¸å¤Ë¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤·¤¿Æü»þ¤Ï1970ǯ1·î1Æü¤«¤é¤ÎÆü¿ô¤È¤·¤Æ
+µ­½Ò¤µ¤ì¤ë¡£
+¥Ñ¥¹¥ï¡¼¥É¤Ï½½Ê¬¤ÊÆü¿ô¤¬·Ð²á¤·¤Æ¤«¤é¤Ç¤Ê¤¤¤ÈÊѹ¹¤Ç¤­¤º¡¢
+¤Þ¤¿ºÇÂçÆü¿ô¤¬·Ð²á¤·¤¿¸å¤Ïɬ¤ºÊѹ¹¤»¤Í¤Ð¤Ê¤é¤Ê¤¤¡£
+Êѹ¹²Ä¤È¤Ê¤ë¤Þ¤Ç¤ËÍפ¹¤ëÆü¿ô¤¬Í­¸ú´ü¸Â¤è¤ê¤âÂ礭¤¤¾ì¹ç¤Ï¡¢
+¥æ¡¼¥¶¤¬¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹¤¹¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+.PP
+¥Ñ¥¹¥ï¡¼¥É¤ÎÍ­¸ú´ü¸Â¤¬²á¤®¤Æ¤«¤é»ØÄꤷ¤¿Æü¿ô¤Î¤¦¤Á¤Ë¥Ñ¥¹¥ï¡¼¥É¤òÊѹ¹
+¤·¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢¤½¤Î¥¢¥«¥¦¥ó¥È¤Ï̵¸ú¤È¤Ê¤ê¡¢»ÈÍÑÉÔǽ¤Ë¤Ê¤ë¡£
+¤Þ¤¿¡¢¥¢¥«¥¦¥ó¥È¤Ï»ØÄꤷ¤¿´üÆü¤Ë¡¢¥Ñ¥¹¥ï¡¼¥É¾¤ÎÍ­¸ú´ü¸Â¾ðÊó¤Ë¤Ï¤è¤é¤º¡¢
+»ÈÍÑÉÔǽ¤È¤Ê¤ë¡£
+.PP
+¤³¤Î¾ðÊó¤Ï\fB/etc/passwd\fRÃæ¤Ëµ­¤µ¤ì¤Æ¤¤¤ëÇ¡²¿¤Ê¤ë¥Ñ¥¹¥ï¡¼¥ÉµÚ¤Ó
+¤½¤ÎÍ­¸ú´ü¸Â¾ðÊó¤è¤ê¤âÍ¥À褵¤ì¤ë¡£
+.PP
+¥Ñ¥¹¥ï¡¼¥É¤Î°ÂÁ´À­¤ò¤ò°Ý»ý¤¹¤ë¤¿¤á¤Ë¤Ï¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò°ìÈ̥桼¥¶
+¤¬ÆÉ¤á¤ë¤è¤¦¤Ë¤·¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/shadow \- °Å¹æ²½¤µ¤ì¤¿¥æ¡¼¥¶¥Ñ¥¹¥ï¡¼¥É
+.SH ´ØÏ¢¹àÌÜ
+chage(1),
+login(1),
+passwd(1),
+su(1),
+sulogin(1M),
+shadow(3),
+passwd(5),
+pwconv(8),
+pwunconv(8)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/su.1 b/man/ja/su.1
new file mode 100644 (file)
index 0000000..7dbf898
--- /dev/null
@@ -0,0 +1,83 @@
+.\" Copyright 1989 - 1990, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: su.1,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH SU 1
+.SH Ì¾Á°
+su \- ¥æ¡¼¥¶ID¤òÊѹ¹¤¹¤ë¡¢Ëô¤Ï¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Ë¤Ê¤ë
+.SH ½ñ¼°
+.B su
+[ - ] [ username [ args ] ]
+.SH ÀâÌÀ
+.I su
+¤Ï¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥óÃæ¤ËÊ̤Υ桼¥¶¤ËÀ®¤ê¤¹¤Þ¤¹¤Î¤ËÍѤ¤¤ë¡£
+¥æ¡¼¥¶Ì¾¤ò»ØÄꤻ¤º¤Ëµ¯Æ°¤·¤¿¾ì¹ç¡¢
+¥Ç¥£¥Õ¥©¥ë¥È¤Ç¤Ï¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤ÎID¤ËÊѹ¹¤¹¤ë¡£
+¥ª¥×¥·¥ç¥ó°ú¿ô\fB\-\fR¤òÍѤ¤¤ë¤È¡¢
+ľÀÜ¥í¥°¥¤¥ó¤·¤¿¾ì¹ç¤ÈƱ¤¸´Ä¶­¤Ë½é´ü²½¤µ¤ì¤ë¡£
+.PP
+¥æ¡¼¥¶Ì¾¤Î¸å¤í¤ËÄɲäΰú¿ô¤òÍ¿¤¨¤ë¤³¤È¤â¤Ç¤­¡¢
+¤½¤Î¾ì¹ç¤Î°ú¿ô¤Ï¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó¥·¥§¥ë¤ËÅϤµ¤ì¤ë¡£
+ÆÃ¤Ë¡¢¤½¤Î°ú¿ô¤Î°ì¤Ä¤È¤·¤Æ\fB-c\fR¤òÅϤ·¤¿¾ì¹ç¡¢
+¤½¤ì¤Ë³¤¯°ú¿ô¤ÏÂçÉôʬ¤Î¥³¥Þ¥ó¥É¥¤¥ó¥¿¥×¥ê¥¿¤Ë¥³¥Þ¥ó¥É¤È¤·¤Æ²ò¼á¤µ¤ì¤ë¡£
+¤½¤Î¥³¥Þ¥ó¥É¤Ï\fB$SHELL\fR¤Ç»ØÄꤵ¤ì¤¿¥·¥§¥ë¤Ç¡¢¤â¤·¤¯¤Ï
+̤ÄêµÁ¤Î¾ì¹ç¤Ë¤Ï\fI/etc/passwd\fR¤Ç»ØÄꤵ¤ì¤¿¥·¥§¥ë¤Ç¼Â¹Ô¤µ¤ì¤ë¡£
+.PP
+ɬÍפʾì¹ç¤Ë¤Ï¡¢¥æ¡¼¥¶¤Ë¤Ï¥Ñ¥¹¥ï¡¼¥É¤ÎÆþÎϤ¬Â¥¤µ¤ì¤ë¡£
+´Ö°ã¤Ã¤¿¥Ñ¥¹¥ï¡¼¥É¤¬ÆþÎϤµ¤ì¤¿¾ì¹ç¤Ë¤Ï¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤¬½ÐÎϤµ¤ì¤ë¡£
+\fIsu\fR¤·¤è¤¦¤È¤·¤¿¾ì¹ç¤Ï¡¢¥·¥¹¥Æ¥àÇ˲õ¤ò¸¡ÃΤ¹¤ë¤¿¤á¤Ë¡¢
+¤½¤ì¤¬Àµ¤·¤¤¾ì¹ç¤âÉÔÀµ¤Ê¾ì¹ç¤â¾ï¤Ëµ­Ï¿¤¬»Ä¤µ¤ì¤ë¡£
+.PP
+¸½ºß¤Î´Ä¶­¤Ï¿·¤·¤¤¥·¥§¥ë¤Ë°ú¤­·Ñ¤¬¤ì¤ë¡£
+\fB$PATH\fR¤ÎÃͤϡ¢Ä̾ï¤Î¥æ¡¼¥¶¤Î¾ì¹ç¤Ï\fB/bin:/usr/bin\fR¤Ë¡¢
+¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤Î¾ì¹ç¤Ï\fB/bin:/usr/bin:/etc\fR¤ËºÆÀßÄꤵ¤ì¤ë¡£
+.SH ·Ù¹ð
+.PP
+¤³¤ÎÈǤÎ\fIsu\fR¤Ë¤Ï¿¤¯¤Î¥³¥ó¥Ñ¥¤¥ë»þ¥ª¥×¥·¥ç¥ó¤¬¤¢¤ë¤¬¡¢
+¥µ¥¤¥È¤Ë¤è¤Ã¤Æ¤Ï¡¢¤½¤Î°ìÉô¤·¤«ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤â¤¢¤ë¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Î¾ðÊó
+.br
+/etc/shadow \- °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥ÉµÚ¤Ó´ü¸Â¾ðÊó
+.br
+$HOME/.profile \- ¥Ç¥£¥Õ¥©¥ë¥È¥·¥§¥ëÍѤνé´ü²½¥¹¥¯¥ê¥×¥È
+.SH ´ØÏ¢¹àÌÜ
+login(1),
+sh(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/suauth.5 b/man/ja/suauth.5
new file mode 100644 (file)
index 0000000..78b2065
--- /dev/null
@@ -0,0 +1,213 @@
+.TH SUAUTH 5 "Feb 14, 1996"
+.UC 5
+.SH Ì¾Á°
+suauth \- su¤ò¾ÜºÙ¤Ë¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¤¿¤á¤Î¥Õ¥¡¥¤¥ë
+.SH ½ñ¼°
+.B /etc/suauth
+.SH ÀâÌÀ
+.I /etc/suauth
+¥Õ¥¡¥¤¥ë¤Ï¡¢
+.IR /etc/login.defs (5)
+¥Õ¥¡¥¤¥ëÃæ¤ÇÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
+su¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿»þ¤Ëɬ¤º»²¾È¤µ¤ì¤ë¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤Æ¡¢
+.PP
+.RS
+.nf
+1) su¤¬ÂоݤȤ¹¤ë¥æ¡¼¥¶
+.fi
+2)su¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥æ¡¼¥¶(¤â¤·¤¯¤Ï¤½¤Î¥æ¡¼¥¶¤¬Â°¤¹¤ë¥°¥ë¡¼¥×)
+.RE
+¤Ë´ð¤Å¤¤¤Æsu¥³¥Þ¥ó¥É¤Î¿¶Éñ¤¬Êѹ¹¤µ¤ì¤ë¡£
+.PP
+¤³¤Î¥Õ¥¡¥¤¥ë¤Ï°Ê²¼¤ÎÍͤʽñ¼°¤ò¤·¤Æ¤ª¤ê¡¢
+#¤Ç»Ï¤Þ¤ë¹Ô¤Ï¥³¥á¥ó¥È¤È¤·¤Æ°·¤ï¤ì¡¢Ìµ»ë¤µ¤ì¤ë;
+.PP
+.RS
+to-id:from-id:ACTION
+.RE
+.PP
+¤³¤³¤Ç¡¢to-id¤ÏALL¤È¤¤¤¦¸ì¡¢¥³¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¥æ¡¼¥¶Ì¾¤Î¥ê¥¹¥È
+¤â¤·¤¯¤ÏALL EXCEPT¤È¤¤¤¦¸ì¤È¤½¤ì¤Ë³¤¯","¤Ç¶èÀÚ¤é¤ì¤¿¥æ¡¼¥¶Ì¾¤Î¥ê¥¹¥È
+¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ë¡£
+.PP
+from-id¤Ïto-id¤ÈƱ¤¸½ñ¼°¤Ç¤¢¤ê¡¢¹¹¤ËGROUP¤È¤¤¤¦¸ì¤â»ÈÍѤǤ­¤ë¡£
+ALL EXCEPT GROUP¤È¤¤¤¦»È¤¤Êý¤âÁ´¤¯Àµ¤·¤¤¡£
+GROUP¤Î¸å¤Ë¤Ï°ì¤Ä°Ê¾å¤Î¥°¥ë¡¼¥×̾¤ò","¤Ç¶èÀڤäƵ­¤¹¡£
+´ØÏ¢¤¹¤ë¥°¥ë¡¼¥×¤Î¼ç¥°¥ë¡¼¥×id¤òµ­¤¹¤À¤±¤Ç¤Ï½½Ê¬¤Ç¤Ï¤Ê¤¯¡¢
+.IR /etc/group (5)
+Ãæ¤Î¥¨¥ó¥È¥ê¤òµ­¤¹É¬Íפ¬¤¢¤ë¡£
+.PP
+ACTION¤Ë¤Ï¡¢¸½ºß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤Î¤¤¤º¤ì¤«°ì¤Ä
+¤ò»ØÄê¤Ç¤­¤ë¡£
+.TP 20
+DENY
+¥Ñ¥¹¥ï¡¼¥É¤òʹ¤¯Á°¤Ësu¤òÄä»ß¤¹¤ë¡£
+.TP 20
+NOPASS
+¼«Æ°Åª¤Ësu¤¹¤ë¤³¤È¤¬½ÐÍè¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¿Ò¤Í¤ÆÍè¤Ê¤¤¡£
+.TP 20
+OWNPASS
+su½ÐÍè¤ë¤¿¤á¤Ë¤Ï¡¢¥æ¡¼¥¶¤¬¼«Ê¬¤Î¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ·¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ¹¤ë¤è¤¦¤ËÍ׵ᤵ¤ì¤ë¡£
+.PP
+¥³¥í¥ó¤Ë¤è¤Ã¤Æ¶èÀÚ¤é¤ì¤¿ÊÌ¡¹¤ÎÍ󤬻°¤Ä¤¢¤ë¤³¤È¤ËÃí°Õ¡£
+¥³¥í¥ó¤ÎÎ٤˶õÇò¤¬¤¢¤Ã¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥Õ¥¡¥¤¥ë¤Ï°ì¹ÔËè¤Ë½çÈ֤˶ãÌ£¤µ¤ì¤ë¤³¤ÈµÚ¤Ó¡¢ºÇ½é¤ËŬ¹ç¤·¤¿µ¬Â§¤òÍѤ¤¡¢
+¥Õ¥¡¥¤¥ë¤Î»Ä¤ê¤Ï¶ãÌ£¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤âÃí°Õ¤»¤è¡£
+¤·¤¿¤¬¤Ã¤Æ¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤ÏɬÍפȤ¹¤ë¤À¤±ÈùÄ´À°¤ò¹Ô¤¦¤³¤È¤¬½ÐÍè¤ë¡£
+.SH Îã
+.PP
+.nf
+# /etc/suauth¥Õ¥¡¥¤¥ë¤ÎÎã
+#
+# ¿ô̾¤ÎÆÃ¸¢¥æ¡¼¥¶¤Ï¼«Ê¬¤Î¥Ñ¥¹¥ï¡¼¥É¤ò
+# ÍѤ¤¤Æroot¤Ësu½ÐÍè¤ë¡£
+#
+root:chris,birddog:OWNPASS
+# 
+# Â¾¤Î¥æ¡¼¥¶¤Ïwheel¥°¥ë¡¼¥×¤Ë°¤·¤Æ¤¤¤Ê¤¤¸Â¤ê
+# root¤Ësu¤¹¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+# BSD¤ÈƱ¤¸¿¶Éñ¡£
+#
+root:ALL EXCEPT GROUP wheel:DENY
+#
+# ¤ª¤½¤é¤¯terry¤Èbirddog¤ÏƱ¤¸¿Í´Ö¤¬
+# ½êÍ­¤¹¤ë¥¢¥«¥¦¥ó¥È¤Ç¤¢¤ë¡£
+# ¥Ñ¥¹¥ï¡¼¥É̵¤·¤Ç¸ß¤¤¤Ë
+# Â¾Êý¤Ësu½ÐÍè¤ë¡£
+#
+terry:birddog:NOPASS
+birddog:terry:NOPASS
+#
+.fi
+.SH ¥Õ¥¡¥¤¥ë
+/etc/suauth
+.SH ¥Ð¥°
+¿¤¯¤Î¥Ð¥°¤¬Àø¤ó¤Ç¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¡£
+¤È¤ê¤ï¤±¡¢¥Õ¥¡¥¤¥ë¥Ñ¡¼¥µ¤Ï½ñ¼°¥¨¥é¡¼¤Ë´²Âç¤Ç¤Ï¤Ê¤¯¡¢
+(¹Ô¤Î»Ï¤áµÚ¤Ó½ª¤ï¤ê°Ê³°¤Ë)¸«¤«¤±¤Î¶õÇò¤Ï¤¢¤Ã¤Æ¤Ï¤Ê¤é¤Ê¤¤¤·¡¢
+ÆÃÄê¤Î¥È¡¼¥¯¥ó¤Ë¤è¤êÁ´¤¯Ê̤ζèÀÚ¤êÊý¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦»ö¤â¤¢¤ë¡£
+.SH ÊÖ¤êÃÍ
+¥Õ¥¡¥¤¥ë¤ò¥Ñ¡¼¥¹¤¹¤ëºÝ¤Î¥¨¥é¡¼¤Ïsyslogd(8)¤òÍѤ¤¤ÆAUTHµ¡Ç½¤Î¥ì¥Ù¥ëERR
+¤È¤·¤ÆÄÌÃΤµ¤ì¤ë¡£
+.SH ´ØÏ¢¹àÌÜ
+su(1), login.defs(5)
+.SH Ãø¼Ô
+.nf
+Chris Evans (lady0110@sable.ox.ac.uk)
+Lady Margaret Hall
+Oxford University
+England
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
+----Next_Part(Sat_Feb_15_01:37:39_1997)----
+
+----Next_Part(Sat_Feb_15_01:37:39_1997)--
+Content-Type: Text/Plain; charset=iso-2022-jp
+Content-Transfer-Encoding: 7bit
+
+.TH SUAUTH 5 "Feb 14, 1996"
+.UC 5
+.SH Ì¾Á°
+suauth \- su¤ò¾ÜºÙ¤Ë¥³¥ó¥È¥í¡¼¥ë¤¹¤ë¤¿¤á¤Î¥Õ¥¡¥¤¥ë
+.SH ½ñ¼°
+.B /etc/suauth
+.SH ÀâÌÀ
+.I /etc/suauth
+¥Õ¥¡¥¤¥ë¤Ï¡¢
+.IR /etc/login.defs (5)
+¥Õ¥¡¥¤¥ëÃæ¤ÇÀßÄꤵ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
+su¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤¿»þ¤Ëɬ¤º»²¾È¤µ¤ì¤ë¡£
+¤³¤Î¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã¤Æ¡¢
+.PP
+.RS
+.nf
+1) su¤¬ÂоݤȤ¹¤ë¥æ¡¼¥¶
+.fi
+2)su¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Æ¤¤¤ë¥æ¡¼¥¶(¤â¤·¤¯¤Ï¤½¤Î¥æ¡¼¥¶¤¬Â°¤¹¤ë¥°¥ë¡¼¥×)
+.RE
+¤Ë´ð¤Å¤¤¤Æsu¥³¥Þ¥ó¥É¤Î¿¶Éñ¤¬Êѹ¹¤µ¤ì¤ë¡£
+.PP
+¤³¤Î¥Õ¥¡¥¤¥ë¤Ï°Ê²¼¤ÎÍͤʽñ¼°¤ò¤·¤Æ¤ª¤ê¡¢
+#¤Ç»Ï¤Þ¤ë¹Ô¤Ï¥³¥á¥ó¥È¤È¤·¤Æ°·¤ï¤ì¡¢Ìµ»ë¤µ¤ì¤ë;
+.PP
+.RS
+to-id:from-id:ACTION
+.RE
+.PP
+¤³¤³¤Ç¡¢to-id¤ÏALL¤È¤¤¤¦¸ì¡¢¥³¥ó¥Þ¤Ç¶èÀÚ¤é¤ì¤¿¥æ¡¼¥¶Ì¾¤Î¥ê¥¹¥È
+¤â¤·¤¯¤ÏALL EXCEPT¤È¤¤¤¦¸ì¤È¤½¤ì¤Ë³¤¯","¤Ç¶èÀÚ¤é¤ì¤¿¥æ¡¼¥¶Ì¾¤Î¥ê¥¹¥È
+¤Î¤¤¤º¤ì¤«¤Ç¤¢¤ë¡£
+.PP
+from-id¤Ïto-id¤ÈƱ¤¸½ñ¼°¤Ç¤¢¤ê¡¢¹¹¤ËGROUP¤È¤¤¤¦¸ì¤â»ÈÍѤǤ­¤ë¡£
+ALL EXCEPT GROUP¤È¤¤¤¦»È¤¤Êý¤âÁ´¤¯Àµ¤·¤¤¡£
+GROUP¤Î¸å¤Ë¤Ï°ì¤Ä°Ê¾å¤Î¥°¥ë¡¼¥×̾¤ò","¤Ç¶èÀڤäƵ­¤¹¡£
+´ØÏ¢¤¹¤ë¥°¥ë¡¼¥×¤Î¼ç¥°¥ë¡¼¥×id¤òµ­¤¹¤À¤±¤Ç¤Ï½½Ê¬¤Ç¤Ï¤Ê¤¯¡¢
+.IR /etc/group (5)
+Ãæ¤Î¥¨¥ó¥È¥ê¤òµ­¤¹É¬Íפ¬¤¢¤ë¡£
+.PP
+ACTION¤Ë¤Ï¡¢¸½ºß¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë°Ê²¼¤Î¥ª¥×¥·¥ç¥ó¤Î¤¤¤º¤ì¤«°ì¤Ä
+¤ò»ØÄê¤Ç¤­¤ë¡£
+.TP 20
+DENY
+¥Ñ¥¹¥ï¡¼¥É¤òʹ¤¯Á°¤Ësu¤òÄä»ß¤¹¤ë¡£
+.TP 20
+NOPASS
+¼«Æ°Åª¤Ësu¤¹¤ë¤³¤È¤¬½ÐÍè¡¢¥Ñ¥¹¥ï¡¼¥É¤Ï¿Ò¤Í¤ÆÍè¤Ê¤¤¡£
+.TP 20
+OWNPASS
+su½ÐÍè¤ë¤¿¤á¤Ë¤Ï¡¢¥æ¡¼¥¶¤¬¼«Ê¬¤Î¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ·¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ¹¤ë¤è¤¦¤ËÍ׵ᤵ¤ì¤ë¡£
+.PP
+¥³¥í¥ó¤Ë¤è¤Ã¤Æ¶èÀÚ¤é¤ì¤¿ÊÌ¡¹¤ÎÍ󤬻°¤Ä¤¢¤ë¤³¤È¤ËÃí°Õ¡£
+¥³¥í¥ó¤ÎÎ٤˶õÇò¤¬¤¢¤Ã¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥Õ¥¡¥¤¥ë¤Ï°ì¹ÔËè¤Ë½çÈ֤˶ãÌ£¤µ¤ì¤ë¤³¤ÈµÚ¤Ó¡¢ºÇ½é¤ËŬ¹ç¤·¤¿µ¬Â§¤òÍѤ¤¡¢
+¥Õ¥¡¥¤¥ë¤Î»Ä¤ê¤Ï¶ãÌ£¤µ¤ì¤Ê¤¤¤³¤È¤Ë¤âÃí°Õ¤»¤è¡£
+¤·¤¿¤¬¤Ã¤Æ¡¢¥·¥¹¥Æ¥à´ÉÍý¼Ô¤ÏɬÍפȤ¹¤ë¤À¤±ÈùÄ´À°¤ò¹Ô¤¦¤³¤È¤¬½ÐÍè¤ë¡£
+.SH Îã
+.PP
+.nf
+# /etc/suauth¥Õ¥¡¥¤¥ë¤ÎÎã
+#
+# ¿ô̾¤ÎÆÃ¸¢¥æ¡¼¥¶¤Ï¼«Ê¬¤Î¥Ñ¥¹¥ï¡¼¥É¤ò
+# ÍѤ¤¤Æroot¤Ësu½ÐÍè¤ë¡£
+#
+root:chris,birddog:OWNPASS
+# 
+# Â¾¤Î¥æ¡¼¥¶¤Ïwheel¥°¥ë¡¼¥×¤Ë°¤·¤Æ¤¤¤Ê¤¤¸Â¤ê
+# root¤Ësu¤¹¤ë¤³¤È¤Ï½ÐÍè¤Ê¤¤¡£
+# BSD¤ÈƱ¤¸¿¶Éñ¡£
+#
+root:ALL EXCEPT GROUP wheel:DENY
+#
+# ¤ª¤½¤é¤¯terry¤Èbirddog¤ÏƱ¤¸¿Í´Ö¤¬
+# ½êÍ­¤¹¤ë¥¢¥«¥¦¥ó¥È¤Ç¤¢¤ë¡£
+# ¥Ñ¥¹¥ï¡¼¥É̵¤·¤Ç¸ß¤¤¤Ë
+# Â¾Êý¤Ësu½ÐÍè¤ë¡£
+#
+terry:birddog:NOPASS
+birddog:terry:NOPASS
+#
+.fi
+.SH ¥Õ¥¡¥¤¥ë
+/etc/suauth
+.SH ¥Ð¥°
+¿¤¯¤Î¥Ð¥°¤¬Àø¤ó¤Ç¤¤¤ë²ÄǽÀ­¤¬¤¢¤ë¡£
+¤È¤ê¤ï¤±¡¢¥Õ¥¡¥¤¥ë¥Ñ¡¼¥µ¤Ï½ñ¼°¥¨¥é¡¼¤Ë´²Âç¤Ç¤Ï¤Ê¤¯¡¢
+(¹Ô¤Î»Ï¤áµÚ¤Ó½ª¤ï¤ê°Ê³°¤Ë)¸«¤«¤±¤Î¶õÇò¤Ï¤¢¤Ã¤Æ¤Ï¤Ê¤é¤Ê¤¤¤·¡¢
+ÆÃÄê¤Î¥È¡¼¥¯¥ó¤Ë¤è¤êÁ´¤¯Ê̤ζèÀÚ¤êÊý¤Ë¤Ê¤Ã¤Æ¤·¤Þ¤¦»ö¤â¤¢¤ë¡£
+.SH ÊÖ¤êÃÍ
+¥Õ¥¡¥¤¥ë¤ò¥Ñ¡¼¥¹¤¹¤ëºÝ¤Î¥¨¥é¡¼¤Ïsyslogd(8)¤òÍѤ¤¤ÆAUTHµ¡Ç½¤Î¥ì¥Ù¥ëERR
+¤È¤·¤ÆÄÌÃΤµ¤ì¤ë¡£
+.SH ´ØÏ¢¹àÌÜ
+su(1), login.defs(5)
+.SH Ãø¼Ô
+.nf
+Chris Evans (lady0110@sable.ox.ac.uk)
+Lady Margaret Hall
+Oxford University
+England
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/sulogin.8 b/man/ja/sulogin.8
new file mode 100644 (file)
index 0000000..1439263
--- /dev/null
@@ -0,0 +1,101 @@
+.\" Copyright 1989 - 1992, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: sulogin.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH SULOGIN 8
+.SH Ì¾Á°
+sulogin \- ¥·¥ó¥°¥ë¥æ¡¼¥¶login
+.SH ½ñ¼°
+\fBsulogin\fR [ \fItty-device\fR ]
+.SH ÀâÌÀ
+.I sulogin
+¤Ï¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É»þ¡¢¥æ¡¼¥¶¤¬¥·¥¹¥Æ¥à¤Ë¥¢¥¯¥»¥¹½ÐÍè¤ë¤è¤¦¤Ë
+¤Ê¤ëÁ°¤Ë\fB/etc/init\fR¤Ë¤è¤Ã¤Æµ¯Æ°¤µ¤ì¤ë¡£
+¤³¤Îµ¡Ç½¤Ï¡¢\fIinit\fR¤¬Å¬ÀÚ¤ËÊѹ¹¤µ¤ì¤Æ¤¤¤ë¤«¡¢
+\fB/etc/inittab\fR¤Ë¥·¥ó¥°¥ë¥æ¡¼¥¶ÍÑlogin¤Î¥¨¥ó¥È¥ê¤¬¤¢¤ë
+¥·¥¹¥Æ¥à¤Ç¤Î¤ßƯ¤«¤»¤ë»ö¤¬½ÐÍè¤ë¡£
+.PP
+¼¡¤ÎÍÍ¤ËÆþÎϤòÂ¥¤µ¤ì¤ë
+.IP "" .5i
+Type control-d for normal startup,
+.br
+(or give root password for system maintenance):
+.PP
+¥ª¥×¥·¥ç¥ó¤Î¥Ç¥Ð¥¤¥¹Ì¾°ú¿ô¤ò»ØÄꤷ¤Ê¤«¤Ã¤¿¾ì¹ç¤Ï¡¢
+ɸ½à¥Õ¥¡¥¤¥ë¥Ç¥£¥¹¥¯¥ê¥×¥¿¤òÍѤ¤¤ÆÆþ½ÐÎϤò¹Ô¤Ê¤¦¡£
+.PP
+¥æ¡¼¥¶¤¬Àµ¤·¤¤root¤Î¥Ñ¥¹¥ï¡¼¥É¤òÆþÎϤ·¤¿¾ì¹ç¤Ï¡¢
+¥í¥°¥¤¥ó¥»¥Ã¥·¥ç¥ó¤¬³«»Ï¤µ¤ì¤ë¡£
+Âå¤ï¤ê¤Ë\fBEOF\fR¤¬²¡¤µ¤ì¤¿¾ì¹ç¤Ï¡¢
+¥·¥¹¥Æ¥à¤Ï¥Þ¥ë¥Á¥æ¡¼¥¶¥â¡¼¥É¤ËÆþ¤ë¡£
+.PP
+¥æ¡¼¥¶¤¬¥·¥ó¥°¥ë¥æ¡¼¥¶¥·¥§¥ë¤òÈ´¤±¤¿¾ì¹ç¡¢¤â¤·¤¯¤Ï\fBEOF\fR¤ò²¡¤·¤¿¾ì¹ç¤Ï
+¥·¥¹¥Æ¥à¤Ï¥Þ¥ë¥Á¥æ¡¼¥¶¥â¡¼¥É¤ËÆþ¤ë¤¿¤á¤ËɬÍפʽé´ü²½½èÍý¤ò³«»Ï¤¹¤ë¡£
+.SH ·Ù¹ð
+.PP
+¤³¤Î¥³¥Þ¥ó¥É¤Ï¡¢
+\fIinit\fR¤¬\fB/bin/sh\fR¤Ç¤Ï¤Ê¤¯\fB/etc/sulogin\fR¤ò¸Æ¤ÖÍÍÊѹ¹¤µ¤ì¤Æ¤¤¤ë¤«¡¢
+¤Þ¤¿¤Ï\fIinittab\fRÃæ¤Ç¥·¥ó¥°¥ë¥æ¡¼¥¶¥í¥°¥¤¥ó¤ËÂФ¹¤ëÀßÄ꤬¤Ê¤µ¤ì¤Æ¤¤¤ë
+¾ì¹ç¤Ë¤Î¤ß»ÈÍѤǤ­¤ë¡£
+Î㤨¤Ð¡¢
+.br
+.sp 1
+co:s:respawn:/etc/sulogin /dev/console
+.br
+.sp 1
+.\" should execute the sulogin command in single user mode.
+¤È¤¤¤¦¹Ô¤òµ­Æþ¤·¤Æ¤ª¤¯»ö¤Ë¤è¤ê¡¢¥·¥ó¥°¥ë¥æ¡¼¥¶¥â¡¼¥É¤Ç¤Ïsulogin
+¥³¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤ë¡£
+.PP
+²Äǽ¤Ê¸Â¤ê´°Á´¤Ê´Ä¶­¤¬Ä󶡤µ¤ì¤ë¡£
+.\" However, various devices may be unmounted or uninitialized and many 
+.\" of the user commands may be unavailable or nonfunctional as a result.
+¤·¤«¤·¤Ê¤¬¤é¡¢ÍÍ¡¹¤Ê¥Ç¥Ð¥¤¥¹¤¬¥Þ¥¦¥ó¥È¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¤ê½é´ü²½¤µ¤ì¤Æ¤¤¤Ê
+¤«¤Ã¤¿¤ê¤¹¤ë¤¿¤á¡¢Â¿¤¯¤Î¥æ¡¼¥¶¥³¥Þ¥ó¥É¤¬»È¤¨¤Ê¤«¤Ã¤¿¤êµ¡Ç½¤·¤Ê¤¤
+¤«¤â¤·¤ì¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/shadow \- °Å¹æ²½¤µ¤ì¤¿¥Ñ¥¹¥ï¡¼¥ÉµÚ¤Ó¤½¤ÎÍ­¸ú´ü¸Â¾ðÊó
+.br
+/.profile \- ¥·¥ó¥°¥ë¥æ¡¼¥¶¥·¥§¥ëÍѤνé´ü²½¥¹¥¯¥ê¥×¥È
+.SH ´ØÏ¢¹àÌÜ
+login(1),
+init(1M),
+sh(1)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
diff --git a/man/ja/userdel.8 b/man/ja/userdel.8
new file mode 100644 (file)
index 0000000..506c7c0
--- /dev/null
@@ -0,0 +1,74 @@
+.\" Copyright 1991 - 1994, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: userdel.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH USERDEL 8
+.SH Ì¾Á°
+userdel \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥ÈµÚ¤Ó´ØÏ¢¤¹¤ë¥Õ¥¡¥¤¥ë¤òºï½ü¤¹¤ë¡£
+.SH ½ñ¼°
+.B userdel
+.\"[ \fB-r\fI ]
+[ \fB-r\fR ]
+.I login
+.SH ÀâÌÀ
+\fIuserdel\fR¥³¥Þ¥ó¥É¤Ï¥·¥¹¥Æ¥à¤Î¥¢¥«¥¦¥ó¥È¥Õ¥¡¥¤¥ë¤ËÊѹ¹¤ò»Ü¤·¡¢
+¥æ¡¼¥¶\fIlogin\fR¤Ë°¤¹¤ëÁ´¤Æ¤Î¥¨¥ó¥È¥ê¡¼¤òºï½ü¤¹¤ë¡£
+ºï½ü¤µ¤ì¤ë¥æ¡¼¥¶¤Ï¸ºß¤·¤Æ¤¤¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¡£
+.IP \fB-r\fR
+¥æ¡¼¥¶¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥êÃæ¤Î¥Õ¥¡¥¤¥ë¤ò¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¼«ÂΤȤȤâ¤Ë
+¾Ãµî¤¹¤ë¡£
+¾¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¾å¤Ë¤¢¤ë¥Õ¥¡¥¤¥ë¤Ï¼êºî¶È¤Çõ¤·½Ð¤·¤Æ½üµî¤·¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó
+.br
+/etc/shadow \- °ÂÁ´¤Ê¡¢¥æ¡¼¥¶¤Î¥¢¥«¥¦¥ó¥È¤Ë´Ø¤¹¤ë¾ðÊó
+.br
+/etc/group \- ¥°¥ë¡¼¥×¤Ë´Ø¤¹¤ë¾ðÊó
+.SH ·Ù¹ð
+\fBuserdel\fR¤Ï¾Ãµî¤µ¤ì¤ë¥æ¡¼¥¶¤¬¸½ºß¥í¥°¥¤¥ó¤·¤Æ¤¤¤ë¾ì¹ç¤Ï
+¤½¤Î¥¢¥«¥¦¥ó¥È¤ò¾Ãµî¤¹¤ë»ö¤òµö²Ä¤·¤Ê¤¤¡£
+¤½¤Î»þ¤Ï¾Ãµî¤·¤è¤¦¤È¤·¤Æ¤¤¤ë¥¢¥«¥¦¥ó¥È¤Ë°¤¹¤ë¼Â¹ÔÃæ¤Î¥×¥í¥»¥¹Á´¤Æ¤ò
+kill¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+NIS¤Î¥¯¥é¥¤¥¢¥ó¥È¤«¤é¤Ï¤¤¤«¤Ê¤ëNIS½êÍ­¤Î¥¢¥«¥¦¥ó¥È¤â¾Ãµî¤¹¤ë»ö¤Ï½ÐÍè¤Ê¤¤¡£
+¾Ãµî¤¹¤ë¾ì¹ç¤Ë¤ÏNIS¤Î¥µ¡¼¥Ð¤«¤é¹Ô¤ï¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ´ØÏ¢¹àÌÜ
+\fBchfn(1), chsh(1), groupadd(1M), groupdel(1M), groupmod(1M),
+passwd(1), useradd(1M), usermod(1M)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
diff --git a/man/ja/usermod.8 b/man/ja/usermod.8
new file mode 100644 (file)
index 0000000..2e66a72
--- /dev/null
@@ -0,0 +1,132 @@
+.\" Copyright 1991 - 1994, John F. Haugh II
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\" This product includes software developed by John F. Haugh, II
+.\"      and other contributors.
+.\" 4. Neither the name of John F. Haugh, II nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JOHN HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: usermod.8,v 1.1 2001/06/16 02:35:46 kloczek Exp $
+.\"
+.\" Japanese Version Copyright (c) 1997 Kazuyoshi Furutaka
+.\"         all rights reserved.
+.\" Translated Fri Feb 14 23:06:00 JST 1997
+.\"         by Kazuyoshi Furutaka <furutaka@Flux.tokai.jaeri.go.jp>
+.\"
+.TH USERMOD 8
+.SH Ì¾Á°
+usermod \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤òÊѹ¹¤¹¤ë
+.SH ½ñ¼°
+.B usermod
+[ \fB-A\fI method\fR | \fBDEFAULT\fR ]
+[ \fB-c\fI comment\fR ]
+[ \fB-d\fI home_dir \fR[ \fB-m\fR ] ]
+[ \fB-e\fI expire_date\fR ]
+[ \fB-f\fI inactive_time\fR ]
+[ \fB-g\fI initial_group\fR ]
+[ \fB-G\fI group[,...]\fR ]
+[ \fB-l\fI login_name \fR ]
+[ \fB-s\fI shell\fR ]
+[ \fB-u\fI uid \fR[ \fB-o\fR ]
+.I login
+.SH ÀâÌÀ
+\fIusermod\fR¥³¥Þ¥ó¥É¤Ï¥³¥Þ¥ó¥É¥é¥¤¥ó¾å¤Ç¤Î»Ø¼¨¤Ë¤·¤¿¤¬¤Ã¤Æ
+¥·¥¹¥Æ¥à¤Î¥¢¥«¥¦¥ó¥È¥Õ¥¡¥¤¥ë¤òÊѹ¹¤¹¤ë¡£
+\fIusermod\fR¥³¥Þ¥ó¥É¤Ç»È¤¨¤ë¥ª¥×¥·¥ç¥ó¤Ï
+.IP "\fB-A \fImethod\fR|\fBDEFAULT\fR"
+¥æ¡¼¥¶¤Î¿·¤·¤¤Ç§¾ÚÊýË¡¡£
+¥æ¡¼¥¶¤Îǧ¾ÚÊýË¡¤È¤Ï¡¢¥æ¡¼¥¶¤¬ËܿͤǤ¢¤ë»ö¤ò³Îǧ¤¹¤ë°Ù¤Î¥×¥í¥°¥é¥à̾¤Ç¤¢¤ë¡£
+ʸ»úÎó\fBDEFAULT\fR¤òÍѤ¤¤Æ¥æ¡¼¥¶¤Îǧ¾ÚÊýË¡¤ò¥·¥¹¥Æ¥àɸ½à¤Î¥Ñ¥¹¥ï¡¼¥ÉÊý¼°¤Ë
+Êѹ¹¤¹¤ë»ö¤â½ÐÍè¤ë¡£
+.IP "\fB-c \fIcomment\fR"
+¥Ñ¥¹¥ï¡¼¥É¥Õ¥¡¥¤¥ë¤Î¿·¤·¤¤¥³¥á¥ó¥ÈÍó¤ÎÆâÍÆ
+Ä̾ï¤Ï\fBchfn(1)\fR¥æ¡¼¥Æ¥£¥ê¥Æ¥£¤òÍѤ¤¤ÆÊѹ¹¤µ¤ì¤ë¡£
+.IP "\fB-d \fIhome_dir\fR"
+¿·¤·¤¤¥í¥°¥¤¥ó¥Ç¥£¥ì¥¯¥È¥ê¡£
+\fB-m\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤¿¾ì¹ç¤Ï¸½ºß¤Î¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤ÎÃæ¿È¤¬
+¿·¤·¤¤¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Üư¤µ¤ì¤ë¡£¤â¤·Â¸ºß¤·¤Ê¤¤¾ì¹ç¤Ï¿·¤¿¤Ë
+ºî¤é¤ì¤ë¡£
+.IP "\fB-e \fIexpire_date\fR"
+¥¢¥«¥¦¥ó¥È¤¬»ÈÍÑÉÔǽ¤Ë¤Ê¤ëÆüÉÕ¡£
+ÆüÉÕ¤Ï\fIMM/DD/YY\fR¤È¤¤¤¦½ñ¼°¤Ç»ØÄꤹ¤ë(MM,DD,YY¤Ï¤½¤ì¤¾¤ì
+·î¡¢Æü¡¢Ç¯¤òɽ¤¹Æó·å¤Î¿ô»ú)¡£
+.IP "\fB-f \fIinactive_days\fR"
+¥Ñ¥¹¥ï¡¼¥É¤Î»ÈÍÑ´ü¸Â¤¬ÀÚ¤ì¤Æ¤«¤é¥¢¥«¥¦¥ó¥È¤¬±Êµ×¤Ë»ÈÍÑÉÔǽ¤Ë¤Ê¤ë
+¤Þ¤Ç¤ÎÆü¿ô¡£
+0¤È¤¹¤ë¤È¡¢¥Ñ¥¹¥ï¡¼¥É¤Î´ü¸Â¤¬ÀÚ¤ì¤ë¤ÈƱ»þ¤Ë¤³¤Î¥¢¥«¥¦¥ó¥È¤Ï»ÈÍÑÉÔ²Äǽ
+¤Ë¤Ê¤ë¡£-1¤È¤¹¤ë¤È¤³¤Îµ¡Ç½¤¬Æ¯¤«¤Ê¤¯¤Ê¤ë¡£
+¥Ç¥£¥Õ¥©¥ë¥ÈÃͤÏ-1¡£
+.IP "\fB-g \fIinitial_group\fR"
+¥í¥°¥¤¥ó»þ¤Î¿·¤·¤¤¥°¥ë¡¼¥×̾¤Þ¤¿¤ÏID¡£
+¤³¤Î¥°¥ë¡¼¥×̾¤Ï´û¤Ë¸ºß¤·¤Æ¤¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤Þ¤¿¡¤¥°¥ë¡¼¥×ÈÖ¹æ¤Ï´û¸¤Î¥°¥ë¡¼¥×¤ò»²¾È¤·¤Æ¤¤¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¥Ç¥£¥Õ¥©¥ë¥È¤Î¥°¥ë¡¼¥×ÈÖ¹æ¤Ï1¤Ç¤¢¤ë¡£
+.IP "\fB-G \fIgroup,[...]\fR"
+¥æ¡¼¥¶¤¬Â°¤¹¡¤Éû¥°¥ë¡¼¥×¤Î¥ê¥¹¥È¡£
+¥°¥ë¡¼¥×¤Ï¥³¥ó¥Þ¤òÍѤ¤¤Æ¶èÀڤꡢ´Ö¤Ë¶õÇòʸ»ú¤òÆþ¤ì¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¡£
+»ØÄê¤Ç¤­¤ë¥°¥ë¡¼¥×¤Ë¤Ï\fB-g\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤ë¾ì¹ç¤È
+ƱÍͤÎÀ©¸Â¤¬¤¢¤ë¡£
+¿·¤·¤¤¥ê¥¹¥È¤Ë¤Ê¤¤¥°¥ë¡¼¥×¤Î¥á¥ó¥Ð¡¼¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢
+¤½¤Î¥°¥ë¡¼¥×¤«¤éºï½ü¤µ¤ì¤ë¡£
+.IP "\fB-l \fIlogin_name\fR"
+¥æ¡¼¥¶¤Î¥í¥°¥¤¥ó̾¤ò\fIlogin\fR¤«¤é\fIlogin_name\fR¤ËÊѹ¹¤¹¤ë¡£
+¾¤Ï²¿¤âÊѹ¹¤·¤Ê¤¤¡£
+ÆÃ¤Ë¡¢¿·¤·¤¤¥í¥°¥¤¥ó̾¤Ë¹ç¤ï¤»¤Æ¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê̾¤òÊѹ¹¤·¤Ê¤¯¤Æ¤Ï
+¤Ê¤é¤Ê¤¤¤À¤í¤¦¡£
+.IP "\fB-s \fIshell\fR"
+¿·¤·¤¤¥í¥°¥¤¥ó¥·¥§¥ë¤Î̾Á°¡£
+¤³¤ÎÍó¤ò¶õÇò¤Ë¤·¤¿¾ì¹ç¤Ï¥·¥¹¥Æ¥à¤¬¥Ç¥£¥Õ¥©¥ë¥È¤Î¥í¥°¥¤¥ó¥·¥§¥ë¤ò
+ÁªÂò¤¹¤ë¡£
+.IP "\fB-u \fIuid\fR"
+¥æ¡¼¥¶¤ÎIDÈֹ档
+¤³¤ÎÈÖ¹æ¤Ï¾¤È½ÅÊ£¤·¤Æ¤¤¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£\fI-o\fR¥ª¥×¥·¥ç¥ó¤òÍѤ¤¤¿
+ºÝ¤Ï¤³¤Î¸Â¤ê¤Ç¤Ï¤Ê¤¤¡£
+¤Þ¤¿¡¢ÈóÉéÃͤǤʤ¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+0¤«¤é99Ëø¤ÎÃͤÏÂçÄñ¥·¥¹¥Æ¥àÍѤΥ¢¥«¥¦¥ó¥È¤Î¤¿¤á¤ËͽÌó¤µ¤ì¤Æ¤¤¤ë¡£
+¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤Î¡¢¤½¤Î¥æ¡¼¥¶½êÍ­¤ÎÁ´¤Æ¤Î¥Õ¥¡¥¤¥ë¤Î¥æ¡¼¥¶ID¤Ï¡¢
+¼«Æ°Åª¤Ë¿·¤·¤¤ÃͤËÊѹ¹¤µ¤ì¤ë¡£
+¥Û¡¼¥à¥Ç¥£¥ì¥¯¥È¥ê°Ê²¼¤Ë¤Ê¤¤¥Õ¥¡¥¤¥ë¤Ï¼êºî¶È¤ÇÊѹ¹¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ·Ù¹ð
+\fBusermod\fR¤Ï¸½ºß¥í¥°¥¤¥ó¤·¤Æ¤¤¤ë¥æ¡¼¥¶¤Î̾Á°¤òÊѹ¹¤¹¤ë»ö¤Ï½ÐÍè¤Ê¤¤¡£
+¤³¤Î¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Æ¥æ¡¼¥¶¤ÎIDÈÖ¹æ¤òÊѹ¹¤¹¤ëºÝ¤Ï¡¢
+»ØÄꤷ¤¿¥æ¡¼¥¶¤Î¥×¥í¥»¥¹¤¬°ì¤Ä¤â¼Â¹Ô¤µ¤ì¤Æ¤¤¤Ê¤¤»ö¤ò³Îǧ¤·¤Æ¤«¤é
+¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+crontab¥Õ¥¡¥¤¥ë¤Î½êÍ­¼Ô¤Ï¼êºî¶È¤ÇÊѹ¹¤·¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+¤Þ¤¿¡¢at¥¸¥ç¥Ö¤Î½êÍ­¼Ô¤â¼êºî¶È¤ÇÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ë¡£
+NIS¤Ë´Ø¤¹¤ëºî¶È¤ÏNIS¥µ¡¼¥Ð¾å¤Ç¹Ô¤Ê¤ï¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
+.SH ¥Õ¥¡¥¤¥ë
+/etc/passwd \- ¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¤Î¾ðÊó
+.br
+/etc/shadow \- °ÂÁ´¤Ê¥æ¡¼¥¶¥¢¥«¥¦¥ó¥È¾ðÊó
+.br
+/etc/group \- ¥°¥ë¡¼¥×¾ðÊó
+.SH ´ØÏ¢¹àÌÜ
+\fBchfn(1), chsh(1), groupadd(1M), groupdel(1M), groupmod(1M),
+passwd(1), useradd(1M), userdel(1M)
+.SH ËÝÌõ¼Ô
+¸Å¹âÏÂÄ÷ <furutaka@Flux.tokai.jaeri.go.jp>
+
index b9697fed8b5f57d174fb7cd1f2721b25d81e081c..727e604985055dbfd9f75091259e9f90c2a17bf0 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: lastlog.8,v 1.10 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1992, Phillip Street and Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .\"    @(#)lastlog.8   3.3     08:24:58        29 Sep 1993 (National Guard Release)
-.\"    $Id: lastlog.8,v 1.7 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH LASTLOG 8
 .SH NAME
 lastlog \- examine lastlog file
 .SH SYNOPSIS
-.B lastlog
-.RB [ -u
-.IR login-name ]
-.RB [ -t
-.IR days ]
+.TP 8
+\fBlastlog\fR [<\fB-u\fR|\fB--user\fR> \fIlogin-name\fR]
+[<\fB-t\fR|\fB--time\fR> \fIdays\fR] [<\fB-h\fR|\fB--help\fR>]
 .SH DESCRIPTION
-\fBlastlog\fR formats and prints the contents of the last login log,
-\fI/var/log/lastlog\fR.  The \fBlogin-name\fR, \fBport\fR, and \fBlast login 
-time\fR will be printed.
-The default (no flags) causes lastlog entries to be printed, sorted
-by the numerical UID.
-Entering \fB-u \fIlogin-name\fR flag will
-cause the lastlog record for \fIlogin-name\fR only to be printed.
-Entering \fB-t \fIdays\fR will cause only the
-lastlogins more recent than \fIdays\fR to be printed.
+.PP
+\fBlastlog\fR formats and prints the contents of the last login log
+\fI/var/log/lastlog\fR file . The \fBlogin-name\fR, \fBport\fR, and \fBlast
+login time\fR will be printed. The default (no flags) causes lastlog entries
+to be printed, sorted by the numerical UID.
+.TP
+\fB-u\fR, \fB--user\fR \fIlogin-name\fR will cause the lastlog record for
+\fIlogin-name\fR only to be printed
+.TP
+\fB-t\fR, \fB--time\fR \fIdays\fR will cause only the lastlogins more recent
+\than fIdays\fR to be printed
+.TP
+\fB-h\fR, \fB--help\fR print a one-line help message and exit.
+.BR
+.TP
 The \fB-t\fR flag overrides the use of \fB-u\fR.
 .PP
-If the user has never logged in the message \fB"**Never logged in**"\fR will 
+If the user has never logged in the message \fB"**Never logged in**"\fR will
 be displayed instead of the port and time.
 .SH FILES
 /var/log/lastlog \- lastlog logging file
@@ -59,5 +61,5 @@ no output to the screen (i.e. if mmdf=800 and last uid=170, program will
 appear to hang as it processes uid 171-799).
 .SH AUTHORS
 Julianne Frances Haugh (jockgrrl@ix.netcom.com)
-.br
+.BR
 Phillip Street
index 4031219ccefaf865b3b007550cde1ed86dcb761e..fe6afb86da0b7a05c5fd45c908e2ea69b5125341 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: limits.5,v 1.5 2001/01/25 10:43:50 kloczek Exp $
 .TH LIMITS 5
 .SH NAME
 limits \- Resource limits definition
index 0a2facf8d9b41e50cf8d5f16c4263da7eaf518e0..12e77504248a1ae19ebfdeacaf1ad50b399582a0 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: login.1,v 1.9 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: login.1,v 1.8 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH LOGIN 1
 .SH NAME
 login \- Begin session on the system
index 01f06beb434573ec0e2e67a3f195980bb66a6caa..684a54df1e1795e82ff90cc8d3dd0f053c5f98e3 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: login.access.5,v 1.3 2001/01/25 10:43:50 kloczek Exp $
 .\" this is comment
 .TH LOGIN.ACCESS 5
 .\" .Dt SKEY.ACCESS 5
index 3d50c4118a6e68cba19828eba4f63baff93b0ef8..bb4368ed25af1928c449f881cb3b4cfbe35a2e74 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: login.defs.5,v 1.10 2001/06/23 08:50:25 marekm Exp $
 .\" Copyright 1991 - 1993, Julianne Frances Haugh and Chip Rosenthal
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: login.defs.5,v 1.8 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH LOGIN 5
 .SH NAME
 /etc/login.defs \- Login configuration
@@ -532,7 +530,7 @@ to some large value.
 .\"
 .IP "UMASK (number)"
 The permission mask is initialized to this value.  If not specified,
-the permission mask will be initialized to zero.
+the permission mask will be initialized to 077.
 .\"
 .IP "USERDEL_CMD (string)"
 XXX needs to be documented.
index c96a04dfc8f49af89129b997a379c87d87321095..a6f9e777918cce8615ed1ec8db1a07506f5f3e73 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: logoutd.8,v 1.7 2001/01/25 10:43:50 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: logoutd.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH LOGOUTD 8
 .SH NAME
 logoutd \- Enforce login time restrictions
index 5cd193cdbae9fbd99515e8f03089e156b65e6c9c..2cf9a02511191a75821bde456efdf5aa8884b2ab 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: mkpasswd.8,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: mkpasswd.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH MKPASSWD 1
 .SH NAME
 mkpasswd \- Update passwd and group database files
index df0d28078c0fedf5c51601426322a1c511ccf7e4..4d60ac7a6f088a8759a3d22e9f52d67f7e2f2289 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: newgrp.1,v 1.9 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: newgrp.1,v 1.7 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH NEWGRP 1
 .SH NAME
 newgrp \- Change group ID
 .br
 sg \- Execute command as different group ID
 .SH SYNOPSIS
-.BR newgrp " [" - ]
-[\fIgroup\fR]
+\fBnewgrp\fR [\fB-\fR] [\fIgroup\fR]
 .br
-.BR sg " [" - ]
-[\fIgroup\fR [[\fB-c\fR] \fIcommand\fR]]
+\fBnewgrp\fR [\fB-\fR]  [\fIgroup\fR [[\fB-c\fR] \fIcommand\fR]]
 .SH DESCRIPTION
-.B newgrp
-is used to change the current group ID during a login session.
+\fBnewgrp\fR is used to change the current group ID during a login session.
 If the optional \fB\-\fR flag is given, the user's environment
 will be reinitialized as though the user had logged in, otherwise
 the current environment, including current working directory,
 remains unchanged.
 .PP
-.B newgrp
-changes the current real group ID to the named group, or to
-the default group listed in \fI/etc/passwd\fR if no group name
-is given.
-The user will be prompted for a password if they do not have a
-password and the group does, or if the user is not listed as a
-member and the group has a password.
-The user will be denied access if the group password is empty
-and the user is not listed as a member.
+\fBnewgrp\fR changes the current real group ID to the named group, or to the
+default group listed in \fI/etc/passwd\fR if no group name is given. The
+user will be prompted for a password if they do not have a password and the
+group does, or if the user is not listed as a member and the group has a
+password. The user will be denied access if the group password is empty and
+the user is not listed as a member.
 .PP
-The
-.B sg
-command works similiar to \fBnewgrp\fR but does not replace the
-user's shell, so upon exit from a \fBsg\fR command, you are
-returned to your previous group ID.
-.B sg
-also accepts a command.
-The command will be executed with the Bourne shell and must be
-enclosed in quotes.
+The \fBsg\fR command works similiar to \fBnewgrp\fR but does not replace the
+user's shell, so upon exit from a \fBsg\fR command, you are returned to your
+previous group ID. \fBsg\fR also accepts a command. The command will be
+executed with the Bourne shell and must be enclosed in quotes.
 .SH CAVEATS
 This version of \fBnewgrp\fR has many compilation options,
 only some of which may be in use at any particular site.
index 76e97c192ab9836c44552a096eea72c5128b040b..57773a95fff62395ac99e6875db2f6077ae78970 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: newusers.8,v 1.8 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: newusers.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH NEWUSERS 8
 .SH NAME
 \fBnewusers\fR - update and create new users in batch
@@ -57,11 +55,8 @@ being created or updated.
 This command is intended to be used in a large system environment where
 many accounts are updated at a single time.
 .SH CAVEATS
-.\" The \fImkpasswd\fR command must be executed afterwards to update the
-.\" DBM password files.
 The input file must be protected since it contains unencrypted passwords.
 .SH SEE ALSO
-.\" mkpasswd(8), passwd(1), useradd(1)
 .BR passwd (1),
 .BR useradd (8)
 .SH AUTHOR
index 35b05893238461c74844369074d4d5dda4ac8e60..321da581b66ec7eed0d6187768f17737b82af208 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: passwd.1,v 1.9 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: passwd.1,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH PASSWD 1
 .SH NAME
 passwd \- change user password
@@ -36,9 +34,9 @@ passwd \- change user password
 \fBpasswd\fR [\fB-g\fR] [\fB-r\fR|\fBR\fR] \fIgroup\fR
 .br
 \fBpasswd\fR [\fB-x\fR \fImax\fR] [\fB-n\fR \fImin\fR]
-[\fB-w\fR \fIwarn\fR] [\fB-i\fR \fIinact\fR] \fIname\fR
+[\fB-w\fR \fIwarn\fR] [\fB-i\fR \fIinact\fR] \fIlogin\fR
 .br
-\fBpasswd\fR {\fB-l\fR|\fB-u\fR|\fB-d\fR|\fB-S\fR} \fIname\fR
+\fBpasswd\fR {\fB-l\fR|\fB-u\fR|\fB-d\fR|\fB-S\fR|\fB-e\fR} \fIlogin\fR
 .SH DESCRIPTION
 \fBpasswd\fR changes passwords for user and group accounts.
 A normal user may only change the password for their own account,
@@ -121,6 +119,13 @@ value which matches no possible encrypted value.
 The \fB-u\fR option re-enables an account by changing the password
 back to its previous value.
 .PP
+If you wish to immediately expire an accounts password, you can use the
+\fB-e\fR option. This in affect can force a user to change their password at
+their next login. You can also use the \fB-d\fR option to delete a users
+password (make it empty). Use caution with this option since it can make an
+account not require a password at all to login, leaving your system open to
+intruders.
+.PP
 The account status may be given with the \fB-S\fR option.
 The status information consists of 6 parts.
 The first part indicates if the user account is locked (L), has no
@@ -136,6 +141,11 @@ the NBS DES algorithm and is very secure.
 The size of the key space depends upon the randomness of the
 password which is selected.
 .PP
+The \fB-s\fR option makes passwd call chsh to change the users shell. The
+\fB-f\fR option makes passwd call chfn to change the users gecos
+information. These two options are only meant for compatiblity, since the
+other programs can be called directly.
+.PP
 Compromises in password security normally result from careless
 password selection or handling.
 For this reason, you should select a password which does not
@@ -182,8 +192,6 @@ is enabled and they are not logged into the NIS server.
 .br
 /etc/shadow \- encrypted user passwords
 .SH SEE ALSO
-.BR passwd (3),
-.\" .BR shadow (3),
 .BR group (5),
 .BR passwd (5)
 .SH AUTHOR
index 8ea1d89867ac2cd83aebd316c3c57408d5ac949f..edbc2c15ecb69ccaf4ac3e849d1524b7f24c23fa 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: passwd.5,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: passwd.5,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH PASSWD 5
 .SH NAME
 passwd \- The password file
index 3c6e62b4b354865ca954b6998f14b083a69cc2ef..5090e9ad903016d8c333c836f74724bcc639b85f 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
@@ -10,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
 
 SHELL = @SHELL@
 
@@ -30,13 +32,9 @@ libdir = @libdir@
 infodir = @infodir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ../..
 
 ACLOCAL = @ACLOCAL@
@@ -48,9 +46,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -59,85 +56,141 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
 mandir = @mandir@/pl
 
-man_MANS =     chage.1         chfn.1  chsh.1  gpasswd.1       login.1         newgrp.1        passwd.1        su.1    shadow.3        d_passwd.5      faillog.5       limits.5        login.access.5  login.defs.5    passwd.5        porttime.5      shadow.5        suauth.5        adduser.8         chpasswd.8    faillog.8       groupadd.8      groupdel.8      groupmod.8      grpconv.8       grpunconv.8     grpck.8         lastlog.8       logoutd.8       mkpasswd.8      newusers.8      pwck.8  pwconv.8        pwunconv.8      shadowconfig.8  useradd.8       userdel.8       usermod.8       vipw.8
-
-
-EXTRA_DIST = $(man_MANS)       dialups.5 groups.1 id.1 pw_auth.3 pwauth.8 sulogin.8         dpasswd.8
+man_MANS = \
+       chage.1 \
+       chfn.1 \
+       chsh.1 \
+       gpasswd.1 \
+       login.1 \
+       newgrp.1 \
+       passwd.1 \
+       su.1 \
+       shadow.3 \
+       d_passwd.5 \
+       faillog.5 \
+       limits.5 \
+       login.access.5 \
+       login.defs.5 \
+       passwd.5 \
+       porttime.5 \
+       shadow.5 \
+       suauth.5 \
+       adduser.8 \
+        chpasswd.8 \
+       faillog.8 \
+       groupadd.8 \
+       groupdel.8 \
+       groupmod.8 \
+       grpconv.8 \
+       grpunconv.8 \
+       grpck.8 \
+       lastlog.8 \
+       logoutd.8 \
+       mkpasswd.8 \
+       newusers.8 \
+       pwck.8 \
+       pwconv.8 \
+       pwunconv.8 \
+       shadowconfig.8 \
+       useradd.8 \
+       userdel.8 \
+       usermod.8 \
+       vipw.8
+
+
+EXTRA_DIST = $(man_MANS) \
+       dialups.5 groups.1 id.1 pw_auth.3 pwauth.8 sulogin.8 \
+        dpasswd.8
 
+subdir = man/pl
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../../config.h
-CONFIG_CLEAN_FILES = 
-man1dir = $(mandir)/man1
-man3dir = $(mandir)/man3
-man5dir = $(mandir)/man5
-man8dir = $(mandir)/man8
-MANS = $(man_MANS)
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
 
 NROFF = nroff
-DIST_COMMON =  Makefile.am Makefile.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+MANS = $(man_MANS)
+DIST_COMMON = Makefile.am Makefile.in
+all: all-am
 
-TAR = gtar
-GZIP_ENV = --best
-all: all-redirect
 .SUFFIXES:
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps man/pl/Makefile
 
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  man/pl/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
 
-install-man1:
+man1dir = $(mandir)/man1
+install-man1: $(man1_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man1dir)
-       @list='$(man1_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @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; \
@@ -147,14 +200,16 @@ install-man1:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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
-
 uninstall-man1:
-       @list='$(man1_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(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; \
@@ -162,15 +217,19 @@ uninstall-man1:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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
 
-install-man3:
+man3dir = $(mandir)/man3
+install-man3: $(man3_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man3dir)
-       @list='$(man3_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.3*) list="$$list $$i" ;; \
          esac; \
@@ -180,14 +239,16 @@ install-man3:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man3dir)/$$inst"; \
          $(INSTALL_DATA) $$file $(DESTDIR)$(man3dir)/$$inst; \
        done
-
 uninstall-man3:
-       @list='$(man3_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(NORMAL_UNINSTALL)
+       @list='$(man3_MANS) $(dist_man3_MANS) $(nodist_man3_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.3*) list="$$list $$i" ;; \
          esac; \
@@ -195,15 +256,19 @@ uninstall-man3:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man3dir)/$$inst"; \
          rm -f $(DESTDIR)$(man3dir)/$$inst; \
        done
 
-install-man5:
+man5dir = $(mandir)/man5
+install-man5: $(man5_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man5dir)
-       @list='$(man5_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.5*) list="$$list $$i" ;; \
          esac; \
@@ -213,14 +278,16 @@ install-man5:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man5dir)/$$inst"; \
          $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst; \
        done
-
 uninstall-man5:
-       @list='$(man5_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(NORMAL_UNINSTALL)
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.5*) list="$$list $$i" ;; \
          esac; \
@@ -228,15 +295,19 @@ uninstall-man5:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man5dir)/$$inst"; \
          rm -f $(DESTDIR)$(man5dir)/$$inst; \
        done
 
-install-man8:
+man8dir = $(mandir)/man8
+install-man8: $(man8_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(man8dir)
-       @list='$(man8_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.8*) list="$$list $$i" ;; \
          esac; \
@@ -246,14 +317,16 @@ install-man8:
          else file=$$i; fi; \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man8dir)/$$inst"; \
          $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \
        done
-
 uninstall-man8:
-       @list='$(man8_MANS)'; \
-       l2='$(man_MANS)'; for i in $$l2; do \
+       @$(NORMAL_UNINSTALL)
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
          case "$$i" in \
            *.8*) list="$$list $$i" ;; \
          esac; \
@@ -261,102 +334,116 @@ uninstall-man8:
        for i in $$list; do \
          ext=`echo $$i | sed -e 's/^.*\\.//'`; \
          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)$(man8dir)/$$inst"; \
          rm -f $(DESTDIR)$(man8dir)/$$inst; \
        done
-install-man: $(MANS)
-       @$(NORMAL_INSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) install-man1 install-man3 install-man5 \
-        install-man8
-uninstall-man:
-       @$(NORMAL_UNINSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) uninstall-man1 uninstall-man3 uninstall-man5 \
-        uninstall-man8
 tags: TAGS
 TAGS:
 
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-subdir = man/pl
+top_distdir = ../..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am:
-install-exec: install-exec-am
+all-am: Makefile $(MANS)
 
-install-data-am: install-man
-install-data: install-data-am
+installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(man1dir) $(DESTDIR)$(man3dir) $(DESTDIR)$(man5dir) $(DESTDIR)$(man8dir)
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am: uninstall-man
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile $(MANS)
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
-       $(mkinstalldirs)  $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man3 \
-               $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-generic clean-libtool mostlyclean-am
 
-clean-am:  clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-generic distclean-libtool
 
-distclean-am:  distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man: install-man1 install-man3 install-man5 install-man8
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: install-man1 uninstall-man1 install-man3 uninstall-man3 \
-install-man5 uninstall-man5 install-man8 uninstall-man8 install-man \
-uninstall-man tags distdir info-am info dvi-am dvi check check-am \
-installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-man
+
+uninstall-man: uninstall-man1 uninstall-man3 uninstall-man5 \
+       uninstall-man8
 
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-man1 install-man3 \
+       install-man5 install-man8 install-strip installcheck \
+       installcheck-am installdirs maintainer-clean \
+       maintainer-clean-generic mostlyclean mostlyclean-generic \
+       mostlyclean-libtool uninstall uninstall-am uninstall-info-am \
+       uninstall-man uninstall-man1 uninstall-man3 uninstall-man5 \
+       uninstall-man8
 
 # 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.
index 293ed33f3e7d9476e00a5105e1fcf6cd93dadad3..aa3237b45ab51bccca0d3414e15559d2c814ea50 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: chage.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-16}
 .\" Copyright 1990 - 1994 Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH CHAGE 1
 .SH NAZWA
 chage \- zmieñ informacjê o terminie wa¿no¶ci has³a u¿ytkownika
 .SH SK£ADNIA
 .TP 6
-.B chage
-.RB [ -m
-.IR mindni ]
+\fBchage\fR [\fB-m\fR \fImindni\fR]
 .RB [ -M
 .IR maxdni ]
 .RB [ -d
index ad46d3ea5106b0951d1279a10354d77dec208b5a..35f7abf27da4cfd907f666ab47ff3a831a1c12b3 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: chfn.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-25}
 .\" Copyright 1990 - 1994 Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH CHFN 1
 .SH NAZWA
 chfn \- zmieñ nazwê u¿ytkownika i informacjê o nim
 .SH SK£ADNIA
 .TP 5
-.B chfn
-.RB [ -f
-.IR pe³na_nazwa ]
-.RB [ -r
-.IR nr_pokoju ]
-.br
-.RB [ -w
-.IR tel_s³u¿b ]
-.RB [ -h
-.IR tel_dom ]
-.RB [ -o
-.IR inne ]
-.RI [ u¿ytkownik ]
+\fBchfn\fR [\fB-f\fR \fIpe³na_nazwa\fR] [\fB-r\fR \fInr_pokoju\fR]
+[\fB-w\fR \fItel_s³u¿b\fI] [\fB-h\fR \fItel_dom\fR]
+[\fB-o\fR \fIinne\fR] [\fIu¿ytkownik\fR]
 .SH OPIS
 \fBchfn\fR zmienia pe³n± nazwê (imiê i nazwisko), telefon s³u¿bowy i domowy
 dla danego konta u¿ytkownika. Informacja ta jest zwykle drukowana przez
index f6c398d7759d74bc2d0e0c47dd13388d0f941af2..a7f43eb0a59331216c57e7ca557dafc216d3c2aa 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: chpasswd.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-16}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH CHPASSWD 8
 .SH NAZWA
 chpasswd - wsadowa aktualizacja pliku hase³
 .SH SK£ADNIA
-.B chpasswd
-.RB [ -e ]
+\fBchpasswd\fR [\fI-e\fR]
 .SH OPIS
 \fBchpasswd\fR odczytuje ze standardowego wej¶cia plik zawieraj±cy pary:
 nazwa u¿ytkownika i has³o. Odczytan± informacje wykorzystuje do aktualizacji
index 4d13ad645ea8ac7bb19a66bf226e38fe6b03c8c2..f7f9e5863522e6b0162e3b38bb8dc387447d2a4f 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: chsh.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-25}
 .\" Copyright 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH CHSH 1
 .SH NAZWA
 chsh \- zmieñ pow³okê zg³oszeniow±
 .SH SK£ADNIA
 .TP 5
-.B chsh
-.RB [ -s
-.IR pow³oka ]
-.RI [ u¿ytkownik ]
+\fBchsh\fR [\fB-s\fR \fIpow³oka\fR] [\fIu¿ytkownik\fR]
 .SH OPIS
 \fBchsh\fR zmienia pow³okê zg³oszeniow± u¿ytkownika.
 Okre¶la nazwê pocz±tkowego polecenia zg³oszeniowego u¿ytkownika.
index 0b3989b255d929a51d19acca9118d463e835b41c..842b88f610fa88881fcc0fc84b55092825b32a0a 100644 (file)
@@ -1,6 +1,5 @@
-.\"
+.\" $Id: d_passwd.5,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-22}
-.\"
 .TH D_PASSWD 5
 .SH NAZWA
 d_passwd - plik hase³ telefonicznych
index 3edb8a2c3319d75712660ece0025157b9b3d9168..7b36df4b9689b1e877bb762caf527441037025d8 100644 (file)
@@ -1,6 +1,5 @@
-.\"
+.\" $Id: dialups.5,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-22}
-.\"
 .TH DIALUPS
 .SH NAZWA
 dialups - plik terminalowych linii telefonicznych
index 9802a497aa651f9615f729796ee12bc79576b4de..ce6b485cdda076b09851954b81ec806fef231da5 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: dpasswd.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-17}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH DPASSWD 8
 .SH NAZWA
 \fBdpasswd\fR - zmieñ has³o telefoniczne
 .SH SK£ADNIA
-.B dpasswd
-.RB [ - ( a | d )]
-.I pow³oka
+\fBdpasswd\fR [(\fB-a\fR|\fB-d\fR)] \fIpow³oka\fR
 .SH OPIS
 \fBdpasswd\fR dodaje, usuwa i aktualizuje has³a telefoniczne (dialup
 passwords) dla pow³ok logowania u¿ytkowników.
index 4dfa489fb652d1cc9dc950df804c5804c9659ecf..483b72b553aeb76f05d44f0969051f8c1a423b29 100644 (file)
@@ -1,4 +1,6 @@
+.\"$Id: faillog.5,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
+.\" Translation (c) 1998 "Gwidon S. Naskrent" <naskrent@hoth.amu.edu.pl>
 .\" All rights reserved.
 .\"
 .\" Redistribution and use in source and binary forms, with or without
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\" Translation (c) 1998 "Gwidon S. Naskrent" <naskrent@hoth.amu.edu.pl>
-.\"    $Id: faillog.5,v 1.2 2000/10/16 21:34:42 kloczek Exp $
-.\"
 .TH faillog 5
 .SH NAZWA
 faillog \- plik rejestruj±cy nieudane zalogowania
 .SH OPIS
-.I faillog
-prowadzi licznik nieudanych zalogowañ i limity dla ka¿dego konta.
-Plik ten sk³ada siê z rekordów o sta³ej d³ugo¶ci, indeksowanych
-liczbowym UID. Ka¿dy rekord zawiera licznik nieudanych zalogowañ
-od ostatniego pomy¶lnego logowania, maksymaln± liczbê pomy³ek
-przed zablokowaniem konta, konsolê na której nast±pi³o ostatnie
-nieudane logowanie, oraz datê tego¿.
+\fIfaillog\fR prowadzi licznik nieudanych zalogowañ i limity dla ka¿dego
+konta. Plik ten sk³ada siê z rekordów o sta³ej d³ugo¶ci, indeksowanych
+liczbowym UID. Ka¿dy rekord zawiera licznik nieudanych zalogowañ od
+ostatniego pomy¶lnego logowania, maksymaln± liczbê pomy³ek przed
+zablokowaniem konta, konsolê na której nast±pi³o ostatnie nieudane
+logowanie, oraz datê tego¿.
 .PP
 Struktura tego pliku to
 .DS
index e5b606aff2cc267e681db1cb80e70d31e157034a..c046d41293982650c9fd494537e9fa3789b7ceff 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: faillog.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-18}
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH FAILLOG 8
 .SH NAZWA
 faillog \- sprawd¼ faillog i ustaw limity b³êdnych logowañ
 .SH SK£ADNIA
 .TP 8
-.B faillog
-.RB [ -u
-.IR nazwa ]
-.RB [ -a ]
-.RB [ -t
-.IR dni ]
-.RB [ -m
-.IR max ]
-.RB [ -pr ] 
+\fBfaillog\fR [\fB-u\fR \fInazwa\fR] [\fB-a\fR] [\fB-t\fR \fIdni\fR]
+[\fB-m \fImax\fR] [\fB-pr\fR] 
 .SH OPIS
 \fBfaillog\fR formatuje zawarto¶æ rejestru nieudanych prób rozpoczêcia sesji,
 \fI/var/log/faillog\fR, oraz obs³uguje ograniczenia i liczniki b³êdnych prób.
index 17f5e4baf901d48af387d5439180a90cb5b9f7ff..445bb361b6ac5777617f78494e6775c3b691fc8c 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: gpasswd.1,v 1.3 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-16}
 .\" Copyright 1996, Rafal Maszkowski, rzm@pdi.net
 .\" All rights reserved. You can redistribute this man page and/or
 gpasswd \- administracja plikiem /etc/group
 .br
 .SH SK£ADNIA
-.B gpasswd \fIgrupa\fR
+\fBgpasswd\fR \fIgrupa\fR
 .br
-.B gpasswd -a
-.I u¿ytkownik grupa
+\fBgpasswd\fR -a\fR \fIu¿ytkownik grupa\fR
 .br
-.B gpasswd -d
-.I u¿ytkownik grupa
+\fBgpasswd -d\fR \fIu¿ytkownik grupa\fR
 .br
-.B gpasswd -R
-.I grupa
+\fBgpasswd -R\fR \fIgrupa\fR
 .br
-.B gpasswd -r
-.I grupa
+\fBgpasswd -r\fR \fIgrupa\fR
 .br
-.B gpasswd
-.RB [ -A
-.IR u¿ytkownik ,...]
-.RB [ -M
-.IR u¿ytkownik ,...]
-.I grupa
+\fBgpasswd\fR [\fB-A\fR \fIu¿ytkownik ,...\fR] [\fB-M\fR
+\fIu¿ytkownik ,...\fR] \fIgrupa\fR
 .SH OPIS
-.B gpasswd
-s³u¿y do administrowania plikiem \fI/etc/group\fR (oraz \fI/etc/gshadow\fR
-je¶li zosta³a wykonana kompilacja ze zdefiniowanym SHADOWGRP). Ka¿da z grup
-mo¿e posiadaæ administratorów, cz³onków i has³o. Administrator systemu mo¿e
-pos³u¿yæ siê opcj± \fB-A\fR do zdefiniowania administratora(ów) grupy oraz
-opcj± \fB-M\fR do zdefiniowania jej cz³onków. Posiada on wszystkie prawa
-administratorów i cz³onków grup.
+\fBgpasswd\fR s³u¿y do administrowania plikiem \fI/etc/group\fR (oraz
+\fI/etc/gshadow\fR je¶li zosta³a wykonana kompilacja ze zdefiniowanym
+SHADOWGRP). Ka¿da z grup mo¿e posiadaæ administratorów, cz³onków i has³o.
+Administrator systemu mo¿e pos³u¿yæ siê opcj± \fB-A\fR do zdefiniowania
+administratora(ów) grupy oraz opcj± \fB-M\fR do zdefiniowania jej cz³onków.
+Posiada on wszystkie prawa administratorów i cz³onków grup.
 .PP
 Administrator grupy mo¿e dodawaæ i usuwaæ u¿ytkowników przy pomocy,
 odpowiednio, opcji \fB-a\fR i \fB-d\fR. Administratorzy mog± te¿ u¿ywaæ opcji
index 6ffa01015186e664329299780563777b2493dab9..b7040de570b95610766183a0531726052f91cd08 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: groupadd.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/0.1/VIII-1999}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groupadd.8,v 1.2 2000/10/16 21:34:42 kloczek Exp $
-.\"
 .TH GROUPADD 8
 .SH NAZWA
 groupadd - twórz now± grupê
 .SH SK£ADNIA
-.B groupadd
-.RB [ -g
-.I gid
-.RB [ -o ]]
-.I grupa
+\fBgroupadd\fR [\fB-g\fR \fIgid\fR [\fB-o\fR]] \fIgrupa\fR
 .SH OPIS
 Polecenie \fBgroupadd\fR tworzy nowe konto grupy pos³uguj±c siê
 warto¶ciami podanymi w wierszu poleceñ i domy¶lnymi warto¶ciami z systemu.
index 733b364c5cad82ea63291abf7270383d5b738c20..8fcb35d4e87cc55b06eb0c97ebdbfe50b766145c 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: groupdel.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/0.1/VIII-1999}
 .\" Copyright 1991 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groupdel.8,v 1.2 2000/10/16 21:34:42 kloczek Exp $
-.\"
 .TH GROUPDEL 8
 .SH NAZWA
 groupdel - usuñ grupê
 .SH SK£ADNIA
-.B groupdel
-.I grupa
+\fBgroupdel\fR \fIgrupa\fR
 .SH OPIS
 Polecenie \fBgroupdel\fR zmienia systemowe pliki kont, usuwaj±c
 wszystkie zapisy odnosz±ce siê do \fIgrupy\fR.
index 4bdd0d2f36853858deaa3f2ec8cf02179480dc37..8c3a90243bc3f88baf68343d1f11777a53806531 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: groupmod.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/0.1/VIII-1999}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: groupmod.8,v 1.2 2000/10/16 21:34:42 kloczek Exp $
-.\"
 .TH GROUPMOD 8
 .SH NAZWA
 groupmod - zmieñ dane grupy
 .SH SK£ADNIA
-.B groupmod
-.RB [ -g
-.I gid
-.RB [ -o ]]
-.RB [ -n
-.IR nazwa_grupy ]
-.I grupa
+\fBgroupmod\fR [\fB-g\fR \fIgid\fR [\fB-o\fR]] [\fB-n\fR \fInazwa_grupy\fR]
+\fIgrupa\fR
 .SH OPIS
 Polecenie \fBgroupmod\fR modyfikuje systemowe pliki kont tak, by
 odzwierciedliæ w nich zmiany grup podane w wierszu poleceñ. Obs³uguje ono
index a097eb2375c8cfef8bda6c9f5f2abc32c8fe46c5..9dca0c8022f9709fb377a963466dc51025644c54 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: groups.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PRM/WK/1999-09-25}
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH GROUPS 1
 .SH NAZWA
 groups \- wy¶wietl nazwy bie¿±cych grup
 .SH SK£ADNIA
-.B groups
-.RI [ u¿ytkownik ]
+\fBgroups\fR [\fBu¿ytkownik\fR]
 .SH OPIS
-.B groups
-wy¶wietla nazwy lub warto¶ci bie¿±cych identyfikatorów grup.
-Je¿eli warto¶æ nie posiada odpowiedniego wpisu w \fI/etc/group\fR, to zostanie
-wy¶wietlona jako numeryczny identyfikator grupy.
-Opcjonalny parametr \fIu¿ytkownik\fR powoduje wy¶wietlenie grup dla danego
+\fBgroups\fR wy¶wietla nazwy lub warto¶ci bie¿±cych identyfikatorów grup.
+Je¿eli warto¶æ nie posiada odpowiedniego wpisu w \fI/etc/group\fR, to
+zostanie wy¶wietlona jako numeryczny identyfikator grupy. Opcjonalny
+parametr \fIu¿ytkownik\fR powoduje wy¶wietlenie grup dla danego
 \fIu¿ytkownika\fR.
 .SH UWAGA
 Systemy nie obs³uguj±ce równoczesnych grup (tj.takie, w których u¿ytkownik mo¿e
index bc1431ca23338e52208c148ff6da30926990aa0c..624f4e7de9689493997efc5e84674021bd0397d0 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: grpck.8,v 1.5 2001/08/14 21:11:19 malekith Exp $
 .\" {PTM/WK/1999-09-17}
 .\" Copyright 1992 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH GRPCK 1
 .SH NAZWA
 grpck \- weryfikacja spójno¶ci plików grup
 .SH SK£ADNIA
-.B grpck
-.RB [ -r ]
-.RI [ group
-.IR shadow ]
+\fBgrpck\fR [\fB-r\fR] [\fIgroup shadow\fR]
 .SH OPIS
 \fBgrpck\fR weryfikuje integralno¶æ informacji autentykacji systemowej.
 Sprawdzane s± wszystkie pozycje w plikach \fI/etc/group\fR
@@ -74,6 +71,9 @@ Dodatkowo, u
 podanie flagi \fB-r\fR.
 Powoduje to, ¿e na wszystkie pytania dotycz±ce zmian zostanie, bez ingerencji
 u¿ytkownika, u¿yta odpowied¼ \fBnie\fR.
+\fBgrpck\fR mo¿e byæ równie¿ u¿yty do sortowania pozycji w plikach \fI/etc/group\fR 
+oraz \fI/etc/gshadow\fR wed³ug GID. By w³±czyæ tryb sortowania nale¿y przekazaæ
+opcjê \fB-s\fR. Nie s± wtedy przeprowadzane ¿adne kontrole, tylko sortowanie.
 .SH PLIKI
 .IR /etc/group " - informacja o kontach grup"
 .br
index 1609468e2b81c3af11c69613a0dc322012fd8c22..81e967e12907a8dd7cd13b471fe5e6845d8476eb 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: id.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-25}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH ID 1
 .SH NAZWA
 id - wy¶wietl nazwy bie¿±cych ID u¿ytkownika i grupy
 .SH SK£ADNIA
-.B id
-.RB [ -a ]
+\fBid\fR [\fB-a\fR]
 .SH OPIS
 .B id
 wy¶wietla bie¿±ce nazwy (lub warto¶ci) rzeczywistych i efektywnych
index ea4703ff2e19c4b49b6650daa66db8f0a33b30bd..e42b35b2a0626233083248d1915c98c54adc06b1 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: lastlog.8,v 1.5 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-18}
 .\" Copyright 1992, Phillip Street and Julianne Frances Haugh
 .\" All rights reserved.
 .\" SUCH DAMAGE.
 .\"
 .\"    @(#)lastlog.8   3.3     08:24:58        29 Sep 1993 (National Guard Release)
-.\"
 .TH LASTLOG 8
 .SH NAZWA
 lastlog \- sprawd¼ plik ostatnich logowañ (lastlog)
 .SH SK£ADNIA
-.B lastlog
-.RB [ -u
-.IR uid ]
-.RB [ -t
-.IR dni
+.TP 8
+\fBlastlog\fR [<\fB-u\fR|\fB--user\fR> \fIlogin-u¿ytkownika\fR]
+[<\fB-t\fR|\fB--time\fR> \fIdni\fR] [<\fB-h\fR|\fB--help\fR>]
 .SH OPIS
-\fBlastlog\fR formatuje i wy¶wietla zawarto¶æ dziennika ostatnich logowañ,
-\fI/var/log/lastlog\fR.  Wy¶wietlone zostan± \fBnazwa u¿ytkownika\fR,
-\fBport\fR i \fBczas ostatniego logowania\fR.
-Domy¶lnie (bez flag) pozycje pliku wy¶wietlane s± w kolejno¶ci identyfikatorów
-u¿ytkowników (UID).
-Wprowadzenie opcji \fB-u \fInazwa_u¿ytkownika\fR spowoduje wy¶wietlenie
-pozycji opisuj±cej ostatnie rozpoczêcie sesji tylko dla tego u¿ytkownika.
-U¿ycie \fB-t \fIdni\fR powoduje, ¿e bêd± wy¶wietlone ostatnie logowania
-u¿ytkowników nowsze ni¿ sprzed zadanej liczby \fIdni\fR.
+\fBlastlog\fR formatuje i wy¶wietla zawarto¶æ dziennika ostatnich logowañ
+zapisanych w pliku \fI/var/log/lastlog\fR. Wy¶wietlone zostan± \fBnazwa
+u¿ytkownika\fR, \fBport\fR i \fBczas ostatniego logowania\fR. Domy¶lnie (bez
+flag) pozycje pliku wy¶wietlane s± w kolejno¶ci identyfikatorów u¿ytkowników
+(UID).
+.TP
+\fB-u\fR, \fB--user\fR \fIlogin-u¿ytkownika\fR spowoduje wy¶wietlenie tylko
+pozycji opisuj±cej ostatnie rozpoczêcie sesji tylko dla u¿ytkownika
+\fIlogin-u¿ytkownika\fR.
+.TP
+\fB-t\fR, \fB--time\fR \fIdni\fR spowoduje, ¿e bêd± wy¶wietlone ostatnie
+logowania u¿ytkowników nowsze ni¿ sprzed zadanej liczby \fIdni\fR.
+.TP
+\fB-h\fR, \fB--help\fR wietl krótk± informacjê o tym jak u¿ywaæ
+programu i zakoñcz pracê.
+.TP
 Opcja \fB-t\fR przes³ania u¿ycie opcji \fB-u\fR.
 .PP
 Je¿eli u¿ytkownik nigdy siê nie logowa³ to zamiast portu i czasu logowania
 zostanie wy¶wietlony komunikat \fB"**Never logged in**"\fR (nigdy siê nie
 logowa³).
 .SH PLIKI
-.IR /var/log/lastlog " - dziennik ostatnich logowañ"
+\fI/var/log/lastlog\fR " - dziennik ostatnich logowañ"
 .SH PRZESTROGI
 Du¿e luki w numeracji UID powoduj±, ¿e program bêdzie pracowa³ d³u¿ej, nie
 wy¶wietlaj±c wyników (np. je¶li mmdf=800, za¶ ostatni uid=170, to program
index 9ffa0f5963df95660afba0e02e3ea5f854be07ca..03ab6db3038401f9dd6dd23a4365a7543be480e7 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: limits.5,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-18}
 .TH LIMITS 5
 .SH NAZWA
index 9c3659aaf3d823801fb3602c6fed8fcc698d79c8..956397d3a94bd4040ca675609a046f1871fedc0a 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: login.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-25}
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH LOGIN 1
 .SH NAZWA
 login \- rozpocznij sesjê pracy w systemie
 .SH SK£ADNIA
-.B login
-.RI [ u¿ytkownik " [" zmienne_¶rodowiska ]]
+\fBlogin\fR [\fIu¿ytkownik\fR [\fIzmienne_¶rodowiska\fR]]
 .\" XXX - udokumentowaæ opcje -f -h -p -r
 .SH OPIS
 .B login
index cfcad56c4ac1db7b9da90679af8e823895da05b5..9d08104f9076b94d21fb8837de3d30d287666d76 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: login.access.5,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-17}
 .TH LOGIN.ACCESS 5
 .\" .Dt SKEY.ACCESS 5
index 738cd8d3a200b531b8f5b7d118693e848f823e32..3e2f0d346db6b66eadfdf3e76af7f364adb2054e 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: login.defs.5,v 1.4 2001/06/23 08:50:26 marekm Exp $
 .\" {PTM/WK/1999-09-18}
 .\" Copyright 1991 - 1993, Julianne Frances Haugh and Chip Rosenthal
 .\" All rights reserved.
@@ -25,7 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH LOGIN 5
 .SH NAZWA
 /etc/login.defs \- konfiguracja logowania
@@ -516,7 +516,7 @@ na pewn
 .\"
 .IP "UMASK (liczba)"
 T± warto¶ci± inicjowana jest maska praw dostêpu. Nie podana, ustawia mask±
-praw na zero.
+praw na 077.
 .\"
 .IP "USERDEL_CMD (napis)"
 XXX powinno zostaæ udokumentowane.
index 677d399b67cf560e9b124bef40dc6b96e124b95c..50f8d3ae50f002ad0e940a6ac2f2cf3e9a08b70a 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: logoutd.8,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-17}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,7 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH LOGOUTD 8
 .SH NAZWA
 logoutd \- wymuszenie ograniczeñ czasu logowania
index 8b2498ceb2b1ae8489d0ed031d9e53456ed37915..b808a2c1d8d0afcfe65c56ba1feb7b63e5ae2f9d 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: mkpasswd.8,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-16}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: mkpasswd.8,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH MKPASSWD 1
 .SH NAZWA
 mkpasswd \- aktualizuj pliki baz passwd i group
index cbc634a54f0c0cb749a74f7638ae8055bc2f2dee..19e92474669ebfbdafc1af0cbb9317fb794b06a4 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: newgrp.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-15}
 .\" Copyright 1991, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: newgrp.1,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH NEWGRP 1
 .SH NAZWA
 newgrp \- zmieñ identyfikator grupy
 .br
 sg \- wykonaj polecenie przy innym ID grupy
 .SH SK£ADNIA
-.BR newgrp " [" - ]
-.RI [ grupa ]
+\fBnewgrp\fR [\fB- \fR] [\fIgrupa\fR]
 .br
-.BR sg " [" - ]
-.RI [ grupa
-.RB [ -c
-.IR polecenie ]]
+\fBsg\fR [\fB-\fR] [\fIgrupa\fR [\fB-c\fR \fIpolecenie\fR]]
 .SH OPIS
 .B newgrp
 s³u¿y do zmiany bie¿±cego identyfikatora grupy (GID) podczas sesji logowania.
@@ -49,24 +43,18 @@ ponownie zainicjowane, tak jak w
 u¿yto flagi \fB\-\fR, to bie¿±ce ¶rodowisko, ³±cznie z bie¿±cym katalogiem
 roboczym, pozostaje bez zmian.
 .PP
-.B newgrp
-zmienia bie¿±cy faktyczny identyfikator grupy na identyfikator danej grupy
-lub, je¶li nie podano nazwy grupy, na identyfikator grupy domy¶lnej, podanej
-w \fI/etc/passwd\fR.
-Je¿eli grupa posiada has³o, za¶ u¿ytkownik nie ma has³a b±d¼ nie jest jej
-cz³onkiem, to zostanie poproszony o podanie has³a.
-Je¿eli has³o grupy jest puste za¶ u¿ytkownik nie jest jej cz³onkiem, to
-efektem bêdzie odmowa dostêpu.
+\fBnewgrp\fR zmienia bie¿±cy faktyczny identyfikator grupy na identyfikator
+danej grupy lub, je¶li nie podano nazwy grupy, na identyfikator grupy
+domy¶lnej, podanej w \fI/etc/passwd\fR. Je¿eli grupa posiada has³o, za¶
+u¿ytkownik nie ma has³a b±d¼ nie jest jej cz³onkiem, to zostanie poproszony
+o podanie has³a. Je¿eli has³o grupy jest puste za¶ u¿ytkownik nie jest jej
+cz³onkiem, to efektem bêdzie odmowa dostêpu.
 .PP
-Polecenie
-.B sg
-dzia³a podobnie do \fBnewgrp\fR, lecz nie zastêpuje pow³oki u¿ytkownika,
-wiêc po zakoñczeniu \fBsg\fR powracasz do swego poprzedniego identyfikatora
-grupy.
-.B sg
-przyjmuje tak¿e pojedyncze polecenie. Podane polecenie zostanie wykonane
-w pow³oce Bourne'a i musi byæ umieszczone w cudzys³owach.
-.\" enclosed in quotes.
+Polecenie fBsg\fR dzia³a podobnie do \fBnewgrp\fR, lecz nie zastêpuje
+pow³oki u¿ytkownika, wiêc po zakoñczeniu \fBsg\fR powracasz do swego
+poprzedniego identyfikatora grupy. \fBsg\fR przyjmuje tak¿e pojedyncze
+polecenie. Podane polecenie zostanie wykonane w pow³oce Bourne'a i musi byæ
+umieszczone w cudzys³owach.
 .SH PRZESTROGI
 Niniejsza wersja \fBnewgrp\fR posiada wiele opcji kompilacji,
 z których tylko czê¶æ mo¿e byæ u¿yteczna w konkretnej instalacji.
index 7db0bac2b57ac3b973eef1530b3bc711e44dbb81..aab6bfcd601fd298f8ebdcc044755db47ed44de6 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: newusers.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-15}
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: newusers.8,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH NEWUSERS 8
 .SH NAZWA
 newusers - wsadowa aktualizacja i tworzenie nowych u¿ytkowników
 .SH SK£ADNIA
-.B newusers
-.RI [ nowi_u¿ytkownicy ]
+\fBnewusers\fR [\fInowi_u¿ytkownicy\fR]
 .SH OPIS
 \fBnewusers\fR odczytuje plik zawieraj±cy pary: nazwa u¿ytkownika i podane
 jawnym tekstem has³o. Odczytan± informacjê wykorzystuje do aktualizacji grupy
index 4a08d797cfddb9817f8efc1cdef0a58cd628617c..caa1f3c3019168ec5a98106c478ee9f282d06860 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: passwd.1,v 1.5 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-20}
 .\" Copyright 1989 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH PASSWD 1
 .SH NAZWA
 passwd \- zmieñ has³o u¿ytkownika
 .SH SK£ADNIA
-.B passwd
-.RB [ -f | -s ]
-.RI [ nazwa ]
+\fBpasswd\fR [\fB-f\fR|\fB-s\fR]
 .br
-.B passwd
-.RB [ -g ]
-.RB [ -r | R ]
-.I grupa
+\fBpasswd\fR [\fB-g\fR] [\fB-r\fR|\fBR\fR] \fIgrupa\fR
 .br
-.B passwd
-.RB [ -x
-.IR max ]
-.RB [ -n
-.IR min ]
-.RB [ -w
-.IR ostrze¿ ]
-.RB [ -i
-.IR nieakt ]
-.I nazwa
+\fBpasswd\fR [\fB-x\fR \fImax\fR] [\fB-n\fR \fImin\fR]
+[\fB-w\fR \fIostrze¿\fR] [\fB-i\fR \fInieakt\fR] \fIlogin\fR
 .br
-.B passwd
-.RB { -l | -u | -d | -S }
-.I nazwa
+\fBpasswd\fR {\fB-l\fR|\fB-u\fR|\fB-d\fR|\fB-S\fR|\fB-e\fR} \fIlogin\fR
 .SH OPIS
 \fBpasswd\fR zmienia has³a kont u¿ytkowników i grup.
 Zwyk³y u¿ytkownik mo¿e zmieniæ wy³±cznie has³o w³asnego konta, superu¿ytkownik
@@ -123,6 +108,14 @@ Opcja \fB-l\fR wy
 ¿adnemu mo¿liwemu zakodowanemu has³u.
 Opcja \fB-u\fR ponownie udostêpnia konto przywracaj±c uprzedni± warto¶æ has³a.
 .PP
+Jeêli chcesz ustawic has³o kota jako przerminowane mo¿esz u¿yæ opcji
+\fB-e\f. Spowoduje to qymuszenie zmiany has³± przy nastêpnym logowaniu.
+Mo¿esz tak¿e u¿yæ opcji \fB-d\R w celu wykasowania has³a (ustawieniu na
+puste). Niemniej nale¿y uwa¿aæ z u¿ywaniem tej opcji poniewa¿ przy nastêpnym
+logowaniu u¿ykownik nie jest pytany o has³o i mo¿e siê od razu zalogowaæ.
+Pozostawianie kont z wykasowanym has³em mo¿e umo¿liwiæ przejêcie konta przez
+intruza.
+.PP
 Stan konta mo¿na uzyskaæ przy pomocy opcji \fB-S\fR.
 Informacja o stanie sk³ada siê z 6 czê¶ci.
 Pierwsza wskazuje, czy konto u¿ytkownika jest zablokowane (L) (locked),
@@ -132,18 +125,16 @@ nast
 nieaktywno¶ci has³a.
 .SS Podpowiedzi dotycz±ce hase³ u¿ytkownika
 Bezpieczeñstwo has³a zale¿y od si³y algorytmu koduj±cego oraz rozmiaru
-klucza. 
-Metoda kodowania u¿ywana w Systemie \fB\s-2UNIX\s+2\fR oparta jest o algorytm
-NBS DES i jest bardzo bezpieczna.
-Rozmiar klucza zale¿y od losowo¶ci wybranego has³a.
+klucza. Metoda kodowania u¿ywana w Systemie \fB\s-2UNIX\s+2\fR oparta jest
+o algorytm NBS DES i jest bardzo bezpieczna. Rozmiar klucza zale¿y od
+losowo¶ci wybranego has³a.
 .PP
 Naruszenia bezpieczeñstwa hase³ wynikaj± zwykle z beztroski przy wyborze lub
-przechowywaniu has³a.
-Z tego powodu powiniene¶ wybraæ has³o nie wystêpuj±ce w s³owniku. Has³o nie
-powinno te¿ byæ poprawn± nazw±, imieniem, nazwiskiem, numerem prawa jazdy,
-dat± urodzenia czy elementem adresu.
-Wszystkie z powy¿szych mog± byæ u¿yte do odgadniêcia has³a i naruszenia
-bezpieczeñstwa systemu.
+przechowywaniu has³a. Z tego powodu powiniene¶ wybraæ has³o nie wystêpuj±ce
+w s³owniku. Has³o nie powinno te¿ byæ poprawn± nazw±, imieniem, nazwiskiem,
+numerem prawa jazdy, dat± urodzenia czy elementem adresu. Wszystkie z
+powy¿szych mog± byæ u¿yte do odgadniêcia has³a i naruszenia bezpieczeñstwa
+systemu.
 .PP
 Has³o musi byæ ³atwe do zapamiêtania, tak by nie byæ zmuszonym do jego
 zapisywania na kartce. Mo¿na to osi±gn±æ sklejaj±c ze sob± dwa krótkie s³owa,
@@ -188,8 +179,6 @@ nie s
 .br
 .IR /etc/shadow " - zakodowane has³a u¿ytkowników"
 .SH ZOBACZ TAK¯E
-.BR passwd (3),
-.BR shadow (3),
 .BR group (5),
 .BR passwd (5)
 .SH AUTOR
index e4bcad8ea5c021465f5dec20ebc9a611d36349cb..e93ee683d1d84d62609791ff3c32d5f682f509e6 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: passwd.5,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" Copyright (c) 1993 Michael Haardt (u31b3hs@pool.informatik.rwth-aachen.de), Fri Apr  2 11:32:09 MET DST 1993
 .\"
 .\" This is free documentation; you can redistribute it and/or
@@ -23,9 +24,7 @@
 .\" Modified Sun Jul 25 10:46:28 1993 by Rik Faith (faith@cs.unc.edu)
 .\" Modified Sun Aug 21 18:12:27 1994 by Rik Faith (faith@cs.unc.edu)
 .\" Modified Sun Jun 18 01:53:57 1995 by Andries Brouwer (aeb@cwi.nl)
-.\"
 .\" Polish translation nov.1996 piotr.pogorzelski@ippt.gov.pl
-.\"
 .TH PASSWD 5 "24 Czerwiec 1993" "Linux" "Podrêcznik programisty linuxowego"
 .SH NAZWA
 passwd \- plik passwd definiuj±cy u¿ytkowników systemu
index d3a80c173778b51062a57bda1088dfb53b9bbfb9..7b6c085f87fc84a74a3567a6beefdc2e5901c2ff 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: porttime.5,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-17}
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,7 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH PORTTIME 5
 .SH NAZWA
 porttime \- plik czasów dostêpu do portów
index 257ec49d5c2937d8e97d07e9216a8c3f7248c911..fd09cacbdf702360d82ca668f767f5b6852acd9a 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: pw_auth.3,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-15}
 .\" Copyright 1992 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: pw_auth.3,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH PWAUTH 3
 .SH NAZWA
 pwauth \- procedury uwierzytelniania hase³ zdefiniowane przez administratora
index e8cc847e2471d6ac16f4fe14a9f04b192f8d6e9c..ac2c1383fe9c62369fe7e7527fc53976ec7b7097 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: pwauth.8,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-15}
 .\" Copyright 1992, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: pwauth.8,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH PWAUTH 8
 .SH NAZWA
 pwauth \- definiowane przez administratora uwierzytelnianie hase³
index e3ebfe8a34350404ace6ee93ac0ba8af40d6197f..bda75abadd1d70c02de0876640fce6de5bbc39c1 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: pwck.8,v 1.4 2001/08/14 21:11:19 malekith Exp $
 .\" {PTM/WK/1999-09-14}
 .\" Copyright 1992, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: pwck.8,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH PWCK 1
 .SH NAZWA
 pwck - weryfikacja spójno¶ci plików hase³
@@ -79,6 +77,9 @@ Dodatkowo, u
 podanie flagi \fB-r\fR.
 Powoduje to, ¿e na wszystkie pytania dotycz±ce zmian zostanie, bez ingerencji
 u¿ytkownika, u¿yta odpowied¼ \fBnie\fR.
+\fBpwck\fR mo¿e byæ równie¿ u¿yty do sortowania pozycji w plikach \fI/etc/passwd\fR 
+oraz \fI/etc/shadow\fR wed³ug UID. By w³±czyæ tryb sortowania nale¿y przekazaæ
+opcjê \fB-s\fR. Nie s± wtedy przeprowadzane ¿adne kontrole, tylko sortowanie.
 .SH PLIKI
 .IR /etc/passwd " - informacja o kontach u¿ytkowników"
 .br
index 57712b7073237f2a0d2fd7a0eccb966b67b9e27d..c8977e262c849439238477238044e52e449985e7 100644 (file)
@@ -1,5 +1,5 @@
+.\" $Id: pwconv.8,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-14}
-.\" $Id: pwconv.8,v 1.1 2000/09/05 17:27:30 marekm Exp $
 .TH PWCONV 8 "26 wrze¶nia 1997"
 .SH NAZWA
 pwconv, pwunconv, grpconv, grpunconv - konwersja dot. chronionych plików hase³ i grup
index 985f7acaf13ffbcc31d5eb6b166dc69804f3b11c..3d447a9573de37760f421368ffef456c394109e9 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: shadow.3,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-16}
 .\" Copyright 1989 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: shadow.3,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH SHADOW 3
 .SH NAZWA
 shadow \- procedury zakodowanego pliku hase³
index 742700422924c36f4752ab9a1dfe563da239a989..47b0bd6c209751a9eae3a548cdf139dcdad8c7ef 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: shadow.5,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" 1999 PTM Przemek Borys
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: shadow.5,v 1.1 2000/09/05 17:27:30 marekm Exp $
-.\"
 .TH SHADOW 5
 .SH NAZWA
 shadow \- zakodowany plik z has³ami
@@ -85,8 +83,7 @@ chage(1),
 login(1),
 passwd(1),
 su(1),
-sulogin(1M),
-shadow(3),
+sulogin(1),
 passwd(5),
 pwconv(8),
 pwunconv(8)
index 3505c02a42f9f4a5904971d773d2572e6ace758e..e3556e84cb20c0d8f4b0002e72486301bc989540 100644 (file)
@@ -1,5 +1,5 @@
+.\" $Id: shadowconfig.8,v 1.3 2001/08/23 23:10:51 kloczek Exp $
 .\" {PTM/WK/1999-09-14}
-.\" $Id: shadowconfig.8,v 1.1 2000/09/05 17:27:30 marekm Exp $
 .TH SHADOWCONFIG 8 "19 kwietnia 1997" "Debian GNU/Linux"
 .SH NAZWA
 shadowconfig - prze³±cza ochronê hase³ i grup przez pliki shadow
@@ -22,6 +22,6 @@ W
 gdy jest wy³±czona jest nieszkodliwe.
 
 Przeczytaj
-.IR /usr/doc/passwd/README.debian.gz ,
+.IR /usr/share/doc/passwd/README.debian.gz ,
 gdzie znajdziesz krótkie wprowadzenie do ochrony hase³ z u¿yciem dodatkowych
 plików hase³ przes³anianych (shadow passwords) i zwi±zanych tematów.
index dbc43d50c1f4e464d1184da0976ce0598ec4d5d9..856c843a2a5863a9db8e64423676ab45b4fb1729 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: su.1,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/1999-09-25}
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
 .TH SU 1
 .SH NAZWA
 su \- zmieñ ID u¿ytkownika lub stañ siê superu¿ytkownikiem
 .SH SK£ADNIA
-.BR su " [" - ]
-.RI [ nazwa_u¿ytkownika " [" argumenty ]]
+\fBsu\fR [\fB-\fR] [\fInazwa_u¿ytkownika\fR [\fIargumenty\fR]]
 .SH OPIS
 .B su
 s³u¿y do stawania siê innym u¿ytkownikiem w trakcie w³asnej sesji pracy.
@@ -46,10 +45,6 @@ Po nazwie u
 dostarczone pow³oce zg³oszeniowej u¿ytkownika. W szczególno¶ci, argument
 \fB-c\fR spowoduje, ¿e nastêpny argument zostanie potraktowany jak polecenie
 przez wiêkszo¶æ interpretatorów poleceñ.
-.\" Polecenie zostanie wykonane przez pow³okê podan± w
-.\" \fB$SHELL\fR, albo je¶li jej nie zdefiniowano, przez podan± w
-.\" \fI/etc/passwd\fR.
-.\" XXX - powy¿sze nie by³o ca³kiem poprawne.  --marekm
 Polecenie zostanie wykonane przez pow³okê wymienion± w \fI/etc/passwd\fR dla
 docelowego u¿ytkownika.
 .PP
index c3a54ac72b0904964b55652984e1ea4b2d68d336..a8ebe60945265b89e6f09aca1ff4fa3f88e850b0 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: suauth.5,v 1.2 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-14}
 .TH SUAUTH 5 "14 lutego 1996"
 .UC 5
index 2746f107450990cfa4cac5d25f48eab8f11e9680..13b0351f016e4e26aa4ff2ac7e270f45b5a63c86 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: sulogin.8,v 1.3 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/1999-09-14}
 .\" Copyright 1989 - 1992, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: sulogin.8,v 1.2 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH SULOGIN 8
 .SH NAZWA
 sulogin - login w trybie jednou¿ytkownikowym
index c6451d513330b11914bc4657a4de57da1b2a3a4e..8b84aa7f61bc8e2fc242aac15d35bfa033ac2571 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: useradd.8,v 1.5 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/0.1/VIII-1999}
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: useradd.8,v 1.3 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH USERADD 8
 .SH NAZWA
 useradd - twórz nowego u¿ytkownika lub zmieñ domy¶ln± informacjê o nowym
 .SH SK£ADNIA
 .TP 8
-.B useradd
-.\" .RB [ -A
-.\" .RI { metoda | \fBDEFAULT\fR "},... ]"
-.RB [ -c
-.IR komentarz ]
-.RB [ -d
-.IR katalog_domowy ]
+\fBuseradd\fR [\fB-c\fR \fIkomentarz\fR] [\fB-d\fR \fIkatalog_domowy\fR]
+[\fB-e\fR \fIdata_wa¿no¶ci\fR] [\fB-f\fR \fIdni_nieaktywno¶ci\fR]
 .br
-.RB [ -e
-.IR data_wa¿no¶ci ]
-.RB [ -f
-.IR dni_nieaktywno¶ci ]
+[\fB-g\fR \fIgrupa_pocz±tkowa\fR] [\fB-G\fR \fIgrupa [,...]\fR]
 .br
-.RB [ -g
-.IR grupa_pocz±tkowa ]
-.RB [ -G
-.IR grupa [,...]]
-.br
-.RB [ -m " [" -k
-.IR katalog_wzorców ]]
-.RB [ -s
-.IR pow³oka ]
+[\fB-m\fR [\fB-k\fR \fIkatalog_wzorców\fR]] [\fB-s\fR \fIpow³oka\fR]
 .br
-.RB [ -u
-.IR uid " ["
-.BR -o ]]
-.I login
+[\fB-u\fR \fIuid\fR [\fB-o\fR]] \fIlogin\fR
 .TP 8
-.B useradd
-\fB-D\fR
-[\fB-g\fI domy¶lna_grupa\fR]
-[\fB-b\fI katalog_bazowy\fR]
+\fBuseradd\fR \fB-D\fR [\fB-g\fI domy¶lna_grupa\fR] [\fB-b\fI katalog_bazowy\fR]
 .br
 [\fB-f\fI domy¶lne_dni_nieaktywno¶ci\fR]
+.br
 [\fB-e\fI domy¶lna_data_wa¿no¶ci\fR]
 .br
 [\fB-s\fI domy¶lna_pow³oka\fR]
@@ -213,7 +190,7 @@ si
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\"    $Id: useradd.8,v 1.3 2000/10/16 21:34:43 kloczek Exp $
+.\"    $Id: useradd.8,v 1.5 2001/01/27 02:55:54 kloczek Exp $
 .\"
 .TH USERADD 8
 .SH NAZWA
index 8ede47cd37cfb132c65d7ae6dc66adf09cebb6b9..5a10b1040f19faacefa947a5838ad0e8a141537c 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: userdel.8,v 1.5 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM/WK/0.1/VIII-1999}
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: userdel.8,v 1.3 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH USERDEL 8
 .SH NAZWA
 userdel \- usuñ konto u¿ytkownika i powi±zane pliki
 .SH SK£ADNIA
-.B userdel
-.RB [ -r ]
-.I login
+\fBuserdel\fR [\fB-r\fR] \fIlogin\fR
 .SH OPIS
 Polecenie \fBuserdel\fR zmienia systemowe pliki kont, usuwaj±c wszystkie
 zapisy odnosz±ce siê do \fIlogin\fR.
-Podany u¿ytkownik musi istnieæ.
+Podany u¿ytkownik musi istnieæ. Polecenie \fBuserdel\fR posiada
+nastêpuj±ce opcje:
 .TP
 .B -r
 Zostan± usuniête zarówno pliki w katalogu domowym u¿ytkownika jak
@@ -101,7 +98,7 @@ si
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\"    $Id: userdel.8,v 1.3 2000/10/16 21:34:43 kloczek Exp $
+.\"    $Id: userdel.8,v 1.5 2001/01/27 02:55:54 kloczek Exp $
 .\"
 .TH USERDEL 8
 .SH NAZWA
index 5bcb655e1ce5de2a141ad8a233424b7c8a9ff39d..7cb32d963ad0112d2c9dfb719739230160c7f3bc 100644 (file)
@@ -1,3 +1,4 @@
+.\" $Id: usermod.8,v 1.4 2001/01/25 10:43:54 kloczek Exp $
 .\" {PTM/WK/0.1/VIII-1999}
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
@@ -25,9 +26,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: usermod.8,v 1.3 2000/10/16 21:34:43 kloczek Exp $
-.\"
 .TH USERMOD 8
 .SH NAZWA
 usermod \- zmiana danych konta u¿ytkownika
@@ -171,7 +169,7 @@ si
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\"    $Id: usermod.8,v 1.3 2000/10/16 21:34:43 kloczek Exp $
+.\"    $Id: usermod.8,v 1.4 2001/01/25 10:43:54 kloczek Exp $
 .\"
 .TH USERMOD 8
 .SH NAZWA
index 95a4037a533c6ac52d8ae7e0cbec8f367ffedf3e..689efa34e8c62648c45958e1d26b2f2837b9b8db 100644 (file)
@@ -1,12 +1,12 @@
+.\" $Id: vipw.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .\" {PTM\WK\1999-09-14}
-.\" $Id: vipw.8,v 1.2 2000/10/04 19:45:57 kloczek Exp $
 .TH VIPW 8 "26 wrze¶nia 1997"
 .SH NAZWA
 vipw, vigr - edycja plików hase³, grup i ich wersji dodatkowych (shadow)
 .SH SK£ADNIA
-.BR vipw " [-s]"
+\fBvipw\fR [\fB-s\fR]
 .br
-.BR vigr " [-s]"
+\fBvigr\fR [\fB-s\fR]
 .SH OPIS
 .BR vipw " i " vigr
 umo¿liwiaj± modyfikacjê plików odpowiednio
@@ -31,7 +31,7 @@ a na ko
 .BR group (5),
 .BR shadow (5)
 .\" {PTM\WK\1999-09-14}
-.\" $Id: vipw.8,v 1.2 2000/10/04 19:45:57 kloczek Exp $
+.\" $Id: vipw.8,v 1.4 2001/01/27 02:55:54 kloczek Exp $
 .TH VIPW 8 "26 wrze¶nia 1997"
 .SH NAZWA
 vipw, vigr - edycja plików hase³, grup i ich wersji dodatkowych (shadow)
index 69671fa3c249ce63db3cebaaa57f0442107902d8..12f43974645c2b3bd7718e292ad43af44189fef6 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: porttime.5,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: porttime.5,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH PORTTIME 5
 .SH NAME
 porttime \- port access time file
diff --git a/man/pt_BR/Makefile.am b/man/pt_BR/Makefile.am
new file mode 100644 (file)
index 0000000..5bc8515
--- /dev/null
@@ -0,0 +1,11 @@
+
+mandir = @mandir@/pt_BR
+
+man_MANS = \
+       gpasswd.1 \
+       groupadd.8 \
+       groupdel.8 \
+       groupmod.8 \
+       shadow.5
+
+EXTRA_DIST = $(man_MANS)
diff --git a/man/pt_BR/Makefile.in b/man/pt_BR/Makefile.in
new file mode 100644 (file)
index 0000000..d0ad33d
--- /dev/null
@@ -0,0 +1,372 @@
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
+
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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@
+
+SHELL = @SHELL@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+prefix = @prefix@
+exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
+libexecdir = @libexecdir@
+datadir = @datadir@
+sysconfdir = @sysconfdir@
+sharedstatedir = @sharedstatedir@
+localstatedir = @localstatedir@
+libdir = @libdir@
+infodir = @infodir@
+includedir = @includedir@
+oldincludedir = /usr/include
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+
+ACLOCAL = @ACLOCAL@
+AUTOCONF = @AUTOCONF@
+AUTOMAKE = @AUTOMAKE@
+AUTOHEADER = @AUTOHEADER@
+
+INSTALL = @INSTALL@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = @program_transform_name@
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+host_alias = @host_alias@
+host_triplet = @host@
+AMTAR = @AMTAR@
+AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CPP = @CPP@
+DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
+GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLBISON = @INTLBISON@
+INTLLIBS = @INTLLIBS@
+INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
+LIBCRACK = @LIBCRACK@
+LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
+LIBMD = @LIBMD@
+LIBPAM = @LIBPAM@
+LIBSKEY = @LIBSKEY@
+LIBTCFS = @LIBTCFS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+POFILES = @POFILES@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+STRIP = @STRIP@
+U = @U@
+USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+YACC = @YACC@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
+
+mandir = @mandir@/pt_BR
+
+man_MANS = \
+       gpasswd.1 \
+       groupadd.8 \
+       groupdel.8 \
+       groupmod.8 \
+       shadow.5
+
+
+EXTRA_DIST = $(man_MANS)
+subdir = man/pt_BR
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+DIST_SOURCES =
+
+NROFF = nroff
+MANS = $(man_MANS)
+DIST_COMMON = Makefile.am Makefile.in
+all: all-am
+
+.SUFFIXES:
+
+mostlyclean-libtool:
+       -rm -f *.lo
+
+clean-libtool:
+       -rm -rf .libs _libs
+
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  man/pt_BR/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
+uninstall-info-am:
+
+man1dir = $(mandir)/man1
+install-man1: $(man1_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(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; \
+       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/^.*\\.//'`; \
+         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
+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/^.*\\.//'`; \
+         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
+
+man5dir = $(mandir)/man5
+install-man5: $(man5_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(man5dir)
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.5*) list="$$list $$i" ;; \
+         esac; \
+       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/^.*\\.//'`; \
+         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)$(man5dir)/$$inst"; \
+         $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst; \
+       done
+uninstall-man5:
+       @$(NORMAL_UNINSTALL)
+       @list='$(man5_MANS) $(dist_man5_MANS) $(nodist_man5_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.5*) list="$$list $$i" ;; \
+         esac; \
+       done; \
+       for i in $$list; do \
+         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+         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)$(man5dir)/$$inst"; \
+         rm -f $(DESTDIR)$(man5dir)/$$inst; \
+       done
+
+man8dir = $(mandir)/man8
+install-man8: $(man8_MANS) $(man_MANS)
+       @$(NORMAL_INSTALL)
+       $(mkinstalldirs) $(DESTDIR)$(man8dir)
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.8*) list="$$list $$i" ;; \
+         esac; \
+       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/^.*\\.//'`; \
+         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)$(man8dir)/$$inst"; \
+         $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \
+       done
+uninstall-man8:
+       @$(NORMAL_UNINSTALL)
+       @list='$(man8_MANS) $(dist_man8_MANS) $(nodist_man8_MANS)'; \
+       l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+       for i in $$l2; do \
+         case "$$i" in \
+           *.8*) list="$$list $$i" ;; \
+         esac; \
+       done; \
+       for i in $$list; do \
+         ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+         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)$(man8dir)/$$inst"; \
+         rm -f $(DESTDIR)$(man8dir)/$$inst; \
+       done
+tags: TAGS
+TAGS:
+
+
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+
+top_distdir = ../..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
+
+distdir: $(DISTFILES)
+       @for file in $(DISTFILES); do \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
+         if test -d $$d/$$file; then \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
+         else \
+           test -f $(distdir)/$$file \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
+         fi; \
+       done
+check-am: all-am
+check: check-am
+all-am: Makefile $(MANS)
+
+installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(man1dir) $(DESTDIR)$(man5dir) $(DESTDIR)$(man8dir)
+
+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:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
+
+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 clean-libtool mostlyclean-am
+
+distclean: distclean-am
+
+distclean-am: clean-am distclean-generic distclean-libtool
+
+dvi: dvi-am
+
+dvi-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man: install-man1 install-man5 install-man8
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+uninstall-am: uninstall-info-am uninstall-man
+
+uninstall-man: uninstall-man1 uninstall-man5 uninstall-man8
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+       distclean distclean-generic distclean-libtool distdir dvi \
+       dvi-am info info-am install install-am install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-man1 install-man5 \
+       install-man8 install-strip installcheck installcheck-am \
+       installdirs maintainer-clean maintainer-clean-generic \
+       mostlyclean mostlyclean-generic mostlyclean-libtool uninstall \
+       uninstall-am uninstall-info-am uninstall-man uninstall-man1 \
+       uninstall-man5 uninstall-man8
+
+# 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/man/pt_BR/gpasswd.1 b/man/pt_BR/gpasswd.1
new file mode 100644 (file)
index 0000000..05bdf1b
--- /dev/null
@@ -0,0 +1,95 @@
+.\" Copyright 1996, Rafal Maszkowski, rzm@pdi.net
+.\"
+.\" É permitida a confecção e distribuição deste manual, devidamente
+.\" acompanhado dos avisos de direitos autorais e desta permissão
+.\" em todas as cópias.
+.\"
+.\" É permitida a cópia e distribuição de versões modificadas deste manual
+.\" sob as condições acima, e que todo o trabalho derivado seja distribuido
+.\"  sob  as mesmas condições deste manual.
+.\" 
+.\" Uma vez que o kernel do Linux e suas bibliotecas estão constantemente
+.\" mudando, esta página de manual poderá estar incorreta ou desatualizada.
+.\" O(s) autor(es) não assumem responsabilidade por erros ou omissões, 
+.\"  ou por danos resultantes do uso das informações aqui contidas. 
+.\"
+.\" Versões formatadas ou processadas deste manual, desacompanhadas dos
+.\" fontes, devem conter a autorização e os direitos autorais dos autores do
+.\" trabalho.
+.\"
+.\" Você deve receber uma cópia da Licença Pública GNU
+.\" junto com este manual; caso contrário, escreva para a Free Software
+.\" Foundation, Inc., 675 mass Ave, Cambridge, MA 02139 USA ou
+.\" em português na Conectiva Informática - http://www.conectiva.com.br
+.\"
+.\"    $Id: gpasswd.1,v 1.1 2001/01/31 07:06:23 kloczek Exp $
+.\"
+.TH GPASSWD 1
+.SH NOME
+gpasswd \- administra o arquivo /etc/group
+.br
+.SH SINOSPE
+.B gpasswd \fIgrupo\fR
+.br
+.B gpasswd
+.B -a
+\fIusuário\fR \fIgrupo\fR
+.br
+.B gpasswd
+.B -d
+\fIusuário\fR \fIgrupo\fR
+.br
+.B gpasswd
+.B -R
+\fIgrupo\fR
+.br
+.B gpasswd
+.B -r
+\fIgrupo\fR
+.br
+.B gpasswd
+.RB [ -A
+\fIusuário\fR,...]
+.RB [ -M
+\fIusuário\fR,...]
+\fIgrupo\fR
+.br
+.SH DESCRIÇÃO
+O
+.B gpasswd
+é utilizado para administrar o arquivo /etc/group (e o arquivo /etc/gshadow,
+caso compilado com SHADOWGRP).
+Todos os grupos podem ter administradores, membros e uma senha. O administrador
+do sistema pode usar  a opção \fB-A\fR para definir o administrador do grupo e  \fB-M\fR para definir os membros e todos os seus direitos assim como os do
+administrador.
+.PP
+Administradores de grupos podem adicionar e excluir usuários utilizando as
+opções \fB-a\fR e \fB-d\fR respectivamente. Administradores podem usar a opção
+\fB-r\fR  para remover a senha de um grupo. Quando não há senhas definidas
+para um grupo, somente os membros do grupo podem usar o comando
+.BR newgrp (1) 
+para adicionar novos usuários ao grupo . A opção  \fB-R\fR 
+desabilita o acesso ao grupo através do comando 
+.BR newgrp (1)
+.
+.PP
+O
+.B gpasswd
+executado pelo administrador do grupo seguido pelo nome 
+solicitará a senha do grupo. Caso o comando 
+.BR newgrp (1)
+esteja habilitado para outros usuários do grupo sem o uso de senha, não
+membros podem também executar o comando, informando porém a senha do grupo.
+.SH ARQUIVOS
+/etc/group \- informações do grupo
+.br
+/etc/gshadow \- informações do grupo em arquivo shadow
+.SH VEJA TAMBÉM
+.BR newgrp (1),
+.BR groupadd (8),
+.BR groupdel (8),
+.BR groupmod (8),
+.BR grpck (8)
+.SH TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
+Sandro Nunes Henrique <sandro@conectiva.com.br> (tradução)
+Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br> (revisão)
diff --git a/man/pt_BR/groupadd.8 b/man/pt_BR/groupadd.8
new file mode 100644 (file)
index 0000000..89f6449
--- /dev/null
@@ -0,0 +1,70 @@
+.\" Copyright 1991, Julianne Frances Haugh
+.\" Todos os direitos reservados.
+.\"
+.\" É permitida a confecção e distribuição deste manual, devidamente
+.\" acompanhado dos avisos de direitos autorais e desta permissão
+.\" em todas as cópias.
+.\"
+.\" É permitida a cópia e distribuição de versões modificadas deste manual
+.\" sob as condições acima, e que todo o trabalho derivado seja distribuído
+.\" sob  as mesmas condições deste manual.
+.\" 
+.\" Uma vez que o kernel do Linux e suas bibliotecas estão constantemente
+.\" mudando, esta página de manual poderá estar incorreta ou desatualizada.
+.\" O(s) autor(es) não assumem responsabilidade por erros ou omissões, 
+.\" ou por danos resultantes do uso das informações aqui contidas. 
+.\"
+.\" Versões formatadas ou processadas deste manual, desacompanhadas dos
+.\" fontes, devem conter a autorização e os direitos autorais dos autores do
+.\" trabalho.
+.\"
+.\" Você deve receber uma cópia da Licença Pública GNU
+.\" junto com este manual; caso contrário, escreva para a Free Software
+.\" Foundation, Inc., 675 mass Ave, Cambridge, MA 02139 USA ou
+.\" em português na Conectiva Informática Ltda. - http://www.conectiva.com.br
+.\"
+.\"
+.\"
+.\"    $Id: groupadd.8,v 1.1 2001/01/31 07:06:23 kloczek Exp $
+.\"
+.TH GROUPADD 8
+.SH NOME
+groupadd \- Criar um novo grupo
+.SH SINOPSE
+.B groupadd
+[\fB-g\fI gid \fR[\fB-o\fR]] [\fB-r\fR] [\fB-f\fR]
+.I grupo
+.SH DESCRIÇÃO
+O comando \fBgroupadd\fR cria um novo grupo usando valores especificados na linha de comando e os valores padrões do sistema. O novo grupo será criado nos arquivos do sistema, conforme o requerido. As opções que aplicam-se ao comando \fBgroupadd\fR são
+.IP "\fB-g \fIgid\fR"
+A identificação numérica do grupo é denominada ID. Este valor deve ser 
+único, a menos que a opção \fB-o\fR seja usada. O valor deve ser não negativo, e o padrão é o menor valor maior que 500 e o maior que qualquer outro grupo. Valores entre 0 e 499 são tipicamente reservados para \fIcontas do sistema\fR.
+.IP \fB-r\fR
+Este indicador instrui \fBgroupadd\fR a adicionar uma  \fIconta do sistema \fR.
+A primeira identificação de grupo \fI(gid)\fR menor que 499 será automaticamente selecionada a menos que a opção \fB-g\fR seja informada também.
+.br
+Esta é uma informação disponibilizada pela Red Hat Software.
+.IP \fB-f\fR
+Este é o indicador \fIforce\fR . Ele não irá parar o processamento do \fBgroupadd\fR e não finalizará o programa, caso um grupo que esteja sendo criado já exista no sistema. Neste caso, o grupo não será alterado(ou adicionado novamente).
+.br
+Esta opção também modifica o modo como a opção \fB-g\fR funciona. Ao solicitar um \fIgid\fR que não seja único e ao não informar a opção \fB-o\fR, a criação do grupo , a criação terá o comportamento padrão (adicionando um grupo como se as opções \fB-g\fR ou \fB-o\fR  \fBnão\fR fossem especificadas).
+.br
+.SH ARQUIVOS
+/etc/group \- informações sobre o grupo
+.br
+/etc/gshadow \- informações seguras sobre o grupo
+.br
+.SH VEJA TAMBÉM
+.BR chfn (1),
+.BR chsh (1),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR passwd (1),
+.BR groupdel (8),
+.BR groupmod (8)
+.SH AUTOR
+Julianne Frances Haugh (jfh@tab.com)
+.SH TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
+Sandro Nunes Henrique <sandro@conectiva.com.br> (tradução)
+Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br> (revisão)
diff --git a/man/pt_BR/groupdel.8 b/man/pt_BR/groupdel.8
new file mode 100644 (file)
index 0000000..08326e2
--- /dev/null
@@ -0,0 +1,59 @@
+.\" Copyright 1991 - 1993, Julianne Frances Haugh
+.\" All rights reserved.
+.\"
+.\" Todos os direitos reservados.
+.\"
+.\" É permitida a confecção e distribuição deste manual, devidamente
+.\" acompanhado dos avisos de direitos autorais e desta permissão
+.\" em todas as cópias.
+.\"
+.\" É permitida a cópia e distribuição de versões modificadas deste manual
+.\" sob as condições acima, e que todo o trabalho derivado seja distribuído
+.\" sob  as mesmas condições deste manual.
+.\" 
+.\" Uma vez que o kernel do Linux e suas bibliotecas estão constantemente
+.\" mudando, esta página de manual poderá estar incorreta ou desatualizada.
+.\" O(s) autor(es) não assumem responsabilidade por erros ou omissões, 
+.\" ou por danos resultantes do uso das informações aqui contidas. 
+.\"
+.\" Versões formatadas ou processadas deste manual, desacompanhadas dos
+.\" fontes, devem conter a autorização e os direitos autorais dos autores do
+.\" trabalho.
+.\"
+.\" Você deve receber uma cópia da Licença Pública GNU
+.\" junto com este manual; caso contrário, escreva para a Free Software
+.\" Foundation, Inc., 675 mass Ave, Cambridge, MA 02139 USA ou
+.\" em português na Conectiva Informática Ltda. - http://www.conectiva.com.br.\"
+.\"
+.\"    $Id: groupdel.8,v 1.1 2001/01/31 07:06:23 kloczek Exp $
+.\"
+.TH GROUPDEL 8
+.SH NOME
+groupdel \- Apaga um grupo
+.SH SINOPSE
+.B groupdel
+.I grupo
+.SH DESCRIÇÃO
+O comando \fBgroupdel\fR modifica os arquivos de contas do sistema, apagando todas as referências ao \fIgrupo\fR. O grupo a ser apagado deve existir.
+.PP
+Deve-se manualmente checar os sistemas de arquivos para garantir que nenhum dos arquivos permanece com o grupo ou com a sua identificação.
+.SH DICAS
+Não se deve remover o grupo primário de um grupo existente. Deve-se remover os usuários, antes de se remover o grupo.
+.SH ARQUIVOS
+/etc/group \- informações do grupo
+.br
+/etc/gshadow \- informações seguras do grupo
+.SH VEJA TAMBÉM
+.BR chfn (1),
+.BR chsh (1),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR passwd (1),
+.BR groupadd (8),
+.BR groupmod (8)
+.SH AUTOR
+Julianne Frances Haugh (jfh@tab.com)
+.SH TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
+Sandro Nunes Henrique <sandro@conectiva.com.br> (tradução)
+Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br> (revisão)
diff --git a/man/pt_BR/groupmod.8 b/man/pt_BR/groupmod.8
new file mode 100644 (file)
index 0000000..86fc535
--- /dev/null
@@ -0,0 +1,63 @@
+.\" Copyright 1991, Julianne Frances Haugh
+.\" Todos os direitos reservados.
+.\"
+.\"
+.\" É permitida a confecção e distribuição deste manual, devidamente
+.\" acompanhado dos avisos de direitos autorais e desta permissão
+.\" em todas as cópias.
+.\"
+.\" É permitida a cópia e distribuição de versões modificadas deste manual
+.\" sob as condições acima, e que todo o trabalho derivado seja distribuído
+.\" sob  as mesmas condições deste manual.
+.\" 
+.\" Uma vez que o kernel do Linux e suas bibliotecas estão constantemente
+.\" mudando, esta página de manual poderá estar incorreta ou desatualizada.
+.\" O(s) autor(es) não assumem responsabilidade por erros ou omissões, 
+.\" ou por danos resultantes do uso das informações aqui contidas. 
+.\"
+.\" Versões formatadas ou processadas deste manual, desacompanhadas dos
+.\" fontes, devem conter a autorização e os direitos autorais dos autores do
+.\" trabalho.
+.\"
+.\" Você deve receber uma cópia da Licença Pública GNU
+.\" junto com este manual; caso contrário, escreva para a Free Software
+.\" Foundation, Inc., 675 mass Ave, Cambridge, MA 02139 USA ou
+.\" em português na Conectiva Informática Ltda. - http://www.conectiva.com.br
+.\"
+.\"
+.\"
+.\"    $Id: groupmod.8,v 1.1 2001/01/31 07:06:23 kloczek Exp $
+.\"
+.TH GROUPMOD 8
+.SH NOME
+groupmod \- Modifica um grupo
+.SH SINOPSE
+.B groupmod
+[\fB-g\fI gid \fR[\fB-o\fR]]
+[\fB-n\fI nome_grupo \fR]
+.I grupo
+.SH DESCRIÇÃO
+O comando \fBgroupmod\fR modifica os arquivos de contas do sistema para as novas configurações informadas na linha de comando. As opções que aplicam-se ao comando \fIgroupmod\fR são:
+.IP "\fB-g \fIgid\fR"
+O valor numérico de identificação do grupo é denominada GID. Este valor deve ser único, a menos que a opção \fB-o\fR seja usada. O valor dever ser não negativo. Valores entre 0 e 99 são tipicamente reservados para grupos do sistema. Quaisquer arquivos com uma identificação antiga de grupo devem ter o ID mudado manualmente. 
+.IP "\fB-n \fInome_grupo\fR"
+O nome do grupo irá ser alterado de \fIgroup\fR para
+\fInome_grupo\fR.
+.SH ARQUIVOS
+/etc/group \- Informações do grupo
+.br
+/etc/gshadow \- informações seguras do grupo
+.SH VEJA TAMBÉM
+.BR chfn (1),
+.BR chsh (1),
+.BR useradd (8),
+.BR userdel (8),
+.BR usermod (8),
+.BR passwd (1),
+.BR groupadd (8),
+.BR groupdel (8)
+.SH AUTOR
+Julianne Frances Haugh (jfh@tab.com)
+.SH TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
+Sandro Nunes Henrique <sandro@conectiva.com.br> (tradução)
+Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br> (revisão)
diff --git a/man/pt_BR/shadow.5 b/man/pt_BR/shadow.5
new file mode 100644 (file)
index 0000000..0d0131f
--- /dev/null
@@ -0,0 +1,83 @@
+.\" Copyright 1989 - 1990, Julianne Frances Haugh
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\"    $Id: shadow.5,v 1.1 2001/01/31 07:06:23 kloczek Exp $
+.\"
+.TH SHADOW 5
+.SH NOME
+shadow \- arquivo de senhas criptografadas
+.SH DESCRIÇÃO
+.I shadow
+contém as informações de senhas criptografadas  das contas dos usuários e opcionalmente a informação de idade da senha.
+Contém:
+.IP "" .5i
+Nome de acesso.
+.IP "" .5i
+Senha criptografada.
+.IP "" .5i
+Dias decorridos entre 1 de janeiro de 1970 e a última alteração da senha.
+.IP "" .5i
+Número de dias até que a senha deva ser alterada.
+.IP "" .5i
+Número de dias após o qual a senha deve ser alterada.
+.IP "" .5i
+Número de dias antes da expiração da senha no qual o usuário será avisado.
+.IP "" .5i
+Número de dias após a expiração da senha que a conta deve ser desabilitada.
+.IP "" .5i
+Dias decorridos entre 1 de janeiro de 1970 e a data em que a conta foi desabilitada.
+.IP "" .5i
+Campo reservado.
+.PP
+O campo senha deve ser preenchido. A senha criptografada consiste de 13 a 24 caracteres entre os 64 caracteres alfabéticos - de a até z e de A até Z, além de 0 a 9, \. e /. Verifique em \fBcrypt\fR(3) por maiores detalhes de como esta cadeia de caracteres é interpretada.
+.PP
+A data da última mudança da senha é dada pelo número de dias desde 1 de janeiro de 1970. A senha não pode ser alterada novamente até que um determinado número de dias tenha se passado, e deve ser alterada após um número máximo de dias. Se o número mínimo de dias for maior que o número máximo, a senha não pode ser alterada pelo usuário.
+.PP
+uma conta é considerada inativa e desabilitada se a senha não foi alterada dentro de um determinado número de dias após a expiração das senhas. Uma conta poderá ser desabilitada ainda no dia especificado, independentemente de qualquer informação de expiração da senha.
+.PP
+Esta informação sobrepõe-se a qualquer senha ou idade de senha presente no arquivo.
+.PP
+Este arquivo não poderá ser acessado por usuários comuns, caso deseje manter a segurança das senhas.
+.SH ARQUIVOS
+/etc/passwd \- informações das contas de usuários
+.br
+/etc/shadow \- senhas de usuários criptografadas
+.SH VEJA TAMBÉM
+.BR chage (1),
+.BR login (1),
+.BR passwd (1),
+.BR su (1),
+.BR sulogin (8),
+.BR shadow (3),
+.BR passwd (5),
+.BR pwconv (8),
+.BR pwunconv (8)
+.SH AUTOR
+Julianne Frances Haugh (jfh@tab.com)
+.SH TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
+Sandro Nunes Henrique <sandro@conectiva.com.br> (tradução)
+Rodrigo Stulzer Lopes <rodrigo@conectiva.com.br> (revisão)
index abb2a73a844b50cea649746569a11afbaaca5a21..beaffd814cc72c63f4b7d773fef2f2ac2a42f25d 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: pw_auth.3,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1992 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: pw_auth.3,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH PWAUTH 3
 .SH NAME
 pwauth \- administrator defined password authentication routines
index 7981ae4e2261eb9dd735085843f82ce8c3887689..0fe4a542086419d907fa74f186aca3390d8a702b 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: pwauth.8,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1992, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: pwauth.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH PWAUTH 8
 .SH NAME
 pwauth \- administrator defined password authentication
index af1d86181213ba422df81aeac2ab96e4d5d1373b..4b723eed7ce45089a942318019e310e7a9749ca3 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: pwck.8,v 1.8 2001/08/14 21:11:18 malekith Exp $
 .\" Copyright 1992, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: pwck.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH PWCK 1
 .SH NAME
 pwck \- verify integrity of password files
 .SH SYNOPSIS
-\fBpwck\fR [\fB-r\fR] [\fIpasswd\fR \fIshadow\fR]
+\fBpwck\fR [\fB-sr\fR] [\fIpasswd\fR \fIshadow\fR]
 .SH DESCRIPTION
 \fBpwck\fR verifies the integrity of the system authentication information.
 All entries in the \fI/etc/passwd\fR and \fI/etc/shadow\fR are checked to
@@ -78,6 +76,9 @@ Additionally, the user may execute the command in read-only mode by
 specifying the \fB-r\fR flag.
 This causes all questions regarding changes to be answered \fBno\fR
 without user intervention.
+\fBpwck\fR can also sort entries in \fI/etc/passwd\fR and \fI/etc/shadow\fR
+by UID. To run it in sort mode pass it \fB-s\fR flag. No checks are
+performed then, it just sorts.
 .SH FILES
 /etc/passwd \- user account information
 .br
index f7bafba5a9a2fc64f7863b37be61c3ea42c9a0ab..95c365c8f935c35590d90667062fc058bf8d0de1 100644 (file)
@@ -1,4 +1,4 @@
-.\" $Id: pwconv.8,v 1.8 1998/06/25 22:10:43 marekm Exp $
+.\"$Id: pwconv.8,v 1.9 2001/01/25 10:43:51 kloczek Exp $
 .TH PWCONV 8 "26 Sep 1997"
 .SH NAME
 pwconv, pwunconv, grpconv, grpunconv \- convert to and from shadow passwords and groups.
index 5d4dee4e74a5089b36a117e3b18cbb9f5d051f5e..454a8dde8fc0be744f3a75685535a9cdb4082d26 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: shadow.3,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1989 - 1993, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: shadow.3,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH SHADOW 3
 .SH NAME
 shadow \- encrypted password file routines
index 1bbd22877e1b5fe9ece4ea4a36ce54240e58738c..8d7e0702fce0db129dcf8981bb41837f75c98851 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: shadow.5,v 1.8 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: shadow.5,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH SHADOW 5
 .SH NAME
 shadow \- encrypted password file
@@ -91,7 +89,6 @@ security is to be maintained.
 .BR passwd (1),
 .BR su (1),
 .BR sulogin (8),
-.BR shadow (3),
 .BR passwd (5),
 .BR pwconv (8),
 .BR pwunconv (8)
index ac6af945141462feaab6f00b27d2197a3ed59517..75ba7b08cea1cd090f1650f6cd21a392207618a1 100644 (file)
@@ -1,4 +1,4 @@
-.\" $Id: shadowconfig.8,v 1.2 1997/12/14 20:07:22 marekm Exp $
+.\"$Id: shadowconfig.8,v 1.4 2001/08/23 23:10:48 kloczek Exp $
 .TH SHADOWCONFIG 8 "19 Apr 1997" "Debian GNU/Linux"
 .SH NAME
 shadowconfig \- toggle shadow passwords on and off
@@ -20,5 +20,5 @@ Turning shadow passwords on when they are already on, or off when they
 are already off, is harmless.
 
 Read
-.I /usr/doc/passwd/README.debian.gz
+.I /usr/share/doc/passwd/README.debian.gz
 for a brief introduction to shadow passwords and related features.
index 7050c83f0cebeaa319564a246cc2a22d69e00617..095670ac665881ac9653e5e4adace381a175adb8 100644 (file)
--- a/man/su.1
+++ b/man/su.1
@@ -1,3 +1,4 @@
+.\"$Id: su.1,v 1.9 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1989 - 1990, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: su.1,v 1.7 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH SU 1
 .SH NAME
 su \- Change user ID or become super-user
 .SH SYNOPSIS
-.BR su " [" - ]
-.RI [ username " [" args ]]
+\fBsu\fR [\fB-\fR] [\fIusername\fR [\fIargs\fR]]
 .SH DESCRIPTION
-.B su
-is used to become another user during a login session.
-Invoked without a username, \fBsu\fR defaults to becoming
-the super user.
-The optional argument \fB\-\fR may be used to provide an
-environment similiar to what the user would expect had
-the user logged in directly.
+\fBsu\fR is used to become another user during a login session. Invoked
+without a username, \fBsu\fR defaults to becoming the super user. The
+optional argument \fB\-\fR may be used to provide an environment similiar to
+what the user would expect had the user logged in directly.
 .PP
-Additional arguments may be provided after the username,
-in which case they are supplied to the user\'s login shell.
-In particular, an argument of \fB-c\fR will cause the
-next argument to be treated as a command by most command
-interpreters.
-.\" The command will be executed under the shell specified by
-.\" \fB$SHELL\fR, or if undefined, by the one specified in
-.\" \fI/etc/passwd\fR.
-.\" XXX - the above was not quite correct.  --marekm
-The command will be executed by the shell specified in
+Additional arguments may be provided after the username, in which case they
+are supplied to the user\'s login shell. In particular, an argument of
+\fB-c\fR will cause the next argument to be treated as a command by most
+command interpreters. The command will be executed by the shell specified in
 \fI/etc/passwd\fR for the target user.
 .PP
-The user will be prompted for a password, if appropriate.
-Invalid passwords will produce an error message.
-All attempts, both valid and invalid, are logged to detect
-abuses of the system.
+The user will be prompted for a password, if appropriate. Invalid passwords
+will produce an error message. All attempts, both valid and invalid, are
+logged to detect abuses of the system.
 .PP
-The current environment is passed to the new shell.  The value of
-\fB$PATH\fR is reset to \fB/bin:/usr/bin\fR for normal users, or
-\fB/sbin:/bin:/usr/sbin:/usr/bin\fR for the super user.  This may be
-changed with the \fBENV_PATH\fR and \fBENV_SUPATH\fR definitions in
+The current environment is passed to the new shell.  The value of fB$PATH\fR
+\is reset to \fB/bin:/usr/bin\fR for normal users, or
+\fB/sbin:/bin:/usr/sbin:/usr/bin\fR for the super user.  This may be changed
+with the \fBENV_PATH\fR and \fBENV_SUPATH\fR definitions in
 \fI/etc/login.defs\fR.
 .PP
 A subsystem login is indicated by the presense of a "*" as the first
index a3aa1581e4b0a9998a887e6114f3552842d3f921..5f69d505878dc9e34ee3eda1c2253c560b3c1d0f 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: suauth.5,v 1.3 2001/01/25 10:43:51 kloczek Exp $
 .TH SUAUTH 5 "Feb 14, 1996"
 .UC 5
 .SH NAME
index f3ecc9df524faea0607b46aca9bac9a77a16b90a..76f07ea2435a23eafdd9df115a328d4294ded8af 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: sulogin.8,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1989 - 1992, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: sulogin.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH SULOGIN 8
 .SH NAME
 sulogin \- Single-user login
index 6f617b13361e6fada590e0449d9a2392457a42bd..2100b3568345d8c7d1090480dd0c749e414b795c 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: useradd.8,v 1.10 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: useradd.8,v 1.8 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH USERADD 8
 .SH NAME
 useradd \- Create a new user or update default new user information
 .SH SYNOPSIS
 .TP 8
-.B useradd
-.\" .RB [ -A
-.\" .RI { method | \fBDEFAULT\fR "},... ]"
-.RB [ -c
-.IR comment ]
-.RB [ -d
-.IR home_dir ]
+\fBuseradd\fR [\fB-c\fR \fIcomment\fR] [\fB-d\fR \fIhome_dir\fR]
 .br
-.RB [ -e
-.IR expire_date ]
-.RB [ -f
-.IR inactive_time ]
+[\fB-e\fR \fIexpire_date\fR] [\fB-f\fR \fIinactive_time\fR]
 .br
-.RB [ -g
-.IR initial_group ]
-.RB [ -G
-.IR group [,...]]
+[\fB-g\fR \fIinitial_group\fR] [\fB-G\fR \fIgroup\fR[,...]]
 .br
-.RB [ -m " [" -k
-.IR skeleton_dir ]]
-.RB [ -p
-.IR passwd ]
+[\fB-m\fR [\fB-k\fR \fIskeleton_dir\fR]] [\fB-p\fR \fIpasswd\fR]
 .br
-.RB [ -s
-.IR shell ]
-.RB [ -u
-.IR uid " ["
-.BR -o ]]
-.I login
+[\fB-s\fR \fIshell\fR] [\fB-u\fR \fIuid\fR [\fB-o\fR]] \fIlogin\fR
 .TP 8
-.B useradd
-\fB-D\fR
-[\fB-g\fI default_group\fR]
-[\fB-b\fI default_home\fR]
+\fBuseradd\fR \fB-D\fR [\fB-g\fI default_group\fR] [\fB-b\fI default_home\fR]
 .br
-[\fB-f\fI default_inactive\fR]
-[\fB-e\fI default_expire_date\fR]
+[\fB-f\fI default_inactive\fR] [\fB-e\fI default_expire_date\fR]
 .br
 [\fB-s\fI default_shell\fR]
 .SH DESCRIPTION
@@ -79,15 +53,7 @@ command line and the default values from the system.
 The new user account will be entered into the system files as needed,
 the home directory will be created, and initial files copied, depending
 on the command line options.
-The options which apply to the \fBuseradd\fR command are
-.\" .IP "\fB-A {\fImethod\fR|\fBDEFAULT\fR},..."
-.\" The value of the user's authentication method.
-.\" The authentication method is the name of a program which is responsible
-.\" for validating the user's identity.
-.\" The string \fBDEFAULT\fR may be used to change the user's authentication
-.\" method to the standard system password method.
-.\" This is a comma-separated list of program names.
-.\" It may include \fBDEFAULT\fR exactly once.
+The options which apply to the \fBuseradd\fR command are:
 .IP "\fB-c \fIcomment\fR"
 The new user's password file comment field.
 .IP "\fB-d \fIhome_dir\fR"
index a211e03a3c96ed23c0b30a4f33f447b392acd7e5..522c817706ffc606e4fc48769ae9d94c42a25bd3 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: userdel.8,v 1.7 2001/01/25 10:43:51 kloczek Exp $
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
@@ -24,9 +25,6 @@
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: userdel.8,v 1.6 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH USERDEL 8
 .SH NAME
 userdel \- Delete a user account and related files
@@ -38,6 +36,7 @@ userdel \- Delete a user account and related files
 The \fBuserdel\fR command modifies the system account files, deleting
 all entries that refer to \fIlogin\fR.
 The named user must exist.
+The options which apply to the \fBuserdel\fR command are:
 .IP \fB-r\fR
 Files in the user's home directory will be removed along with the
 home directory itself and the user's mail spool.
index a2c9f31412cb67b1f9b1f60dc5d66e51edbbe2db..e706ee811febba7426c53a6b52ffd414e28c611f 100644 (file)
@@ -1,3 +1,4 @@
+.\"$Id: usermod.8,v 1.11 2001/01/27 02:55:52 kloczek Exp $
 .\" Copyright 1991 - 1994, Julianne Frances Haugh
 .\" All rights reserved.
 .\"
 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
-.\"
-.\"    $Id: usermod.8,v 1.9 2000/10/16 21:34:40 kloczek Exp $
-.\"
 .TH USERMOD 8
 .SH NAME
 usermod \- Modify a user account
 .SH SYNOPSIS
 .TP 8
-.B usermod
-.\" .RB [ -A
-.\" .RI { method | \fBDEFAULT\fR "},... ]"
-.RB [ -c
-.IR comment ]
-.RB [ -d
-.IR home_dir " ["
-.BR -m ]]
+\fBusermod\fR [\fB-c\fR \fIcomment\fR] [\fB-d\fR \fIhome_dir\fR [\fB-m\fR]]
 .br
-.RB [ -e
-.IR expire_date ]
-.RB [ -f
-.IR inactive_time ]
+[\fB-e\fR \fIexpire_date\fR] [\fB-f\fR \fIinactive_time\fR]
 .br
-.RB [ -g
-.IR initial_group ]
-.RB [ -G
-.IR group [,...]]
+[\fB-g\fR \fIinitial_group\fR] [\fB-G\fR \fIgroup\fR [,...]]
 .br
-.RB [ -l
-.IR login_name ]
-.RB [ -p
-.IR passwd ]
+[\fB-l\fR \fIlogin_name\fR] [\fB-p\fR \fIpasswd\fR]
 .br
-.RB [ -s
-.IR shell ]
-.RB [ -u
-.IR uid " ["
-.BR -o ]]
-.RB [ -L | -U ]
-.I login
+[\fB-s\fR \fIshell\fR] [\fB-u\fR \fIuid\fR [\fB-o\fR]] [\fB-L\fR|\fB-U\fR]
+\fIlogin\fR
 .SH DESCRIPTION
 The \fBusermod\fR command modifies the system account files to reflect
 the changes that are specified on the command line.
-The options which apply to the \fBusermod\fR command are
-.\" .IP "\fB-A \fImethod\fR|\fBDEFAULT\fR"
-.\" The new value of the user's authentication method.
-.\" The authentication method is the name of a program which is responsible
-.\" for validating the user's identity.
-.\" The string \fBDEFAULT\fR may be used to change the user's authentication
-.\" method to the standard system password method.
+The options which apply to the \fBusermod\fR command are:
 .IP "\fB-c \fIcomment\fR"
 The new value of the user's password file comment field.
 It is normally modified using the \fBchfn\fR(1) utility.
index c8d3b3d4097398f651dbc18a3ac93e9557ce9fdd..6d891cd1c7b0ac4aac5705dafb429bc40c5d5811 100644 (file)
@@ -1,11 +1,11 @@
-.\" $Id: vipw.8,v 1.2 1997/12/14 20:07:22 marekm Exp $
+.\"$Id: vipw.8,v 1.4 2001/01/27 02:55:52 kloczek Exp $
 .TH VIPW 8 "26 Sep 1997"
 .SH NAME
 vipw, vigr \- edit the password, group, shadow-password, or shadow-group file.
 .SH SYNOPSIS
-.BR vipw " [-s]"
+\fBvipw\fR [\fB-s\fR]
 .br
-.BR vigr " [-s]"
+\fBvigr\fR [\fB-s\fR]
 .SH DESCRIPTION
 .BR vipw " and " vigr
 will edit the files
diff --git a/missing b/missing
index 7789652e877fbc83c770377691249820eebea1f2..0a7fb5a2acec32d1ef949e5e7e7fb11460c5e021 100755 (executable)
--- a/missing
+++ b/missing
@@ -1,7 +1,7 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
-# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
-# Franc,ois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Copyright 1996, 1997, 1999, 2000 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
 # it under the terms of the GNU General Public License as published by
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
 # 02111-1307, USA.
 
+# 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.
+
 if test $# -eq 0; then
   echo 1>&2 "Try \`$0 --help' for more information"
   exit 1
 fi
 
+run=:
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+  configure_ac=configure.ac
+else
+  configure_ac=configure.in
+fi
+
+case "$1" in
+--run)
+  # Try to run requested program, and just exit if it succeeds.
+  run=
+  shift
+  "$@" && exit 0
+  ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
 case "$1" in
 
   -h|--h|--he|--hel|--help)
@@ -35,6 +61,7 @@ error status if there is no known handling for PROGRAM.
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
+  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
   aclocal      touch file \`aclocal.m4'
@@ -43,13 +70,15 @@ Supported PROGRAM values:
   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]"
     ;;
 
   -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
-    echo "missing - GNU libit 0.0"
+    echo "missing 0.3 - GNU automake"
     ;;
 
   -*)
@@ -61,7 +90,7 @@ Supported PROGRAM values:
   aclocal)
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
-         you modified \`acinclude.m4' or \`configure.in'.  You might want
+         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
          to install the \`Automake' and \`Perl' packages.  Grab them from
          any GNU archive site."
     touch aclocal.m4
@@ -70,7 +99,7 @@ WARNING: \`$1' is missing on your system.  You should only need it if
   autoconf)
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
-         you modified \`configure.in'.  You might want to install the
+         you modified \`${configure_ac}'.  You might want to install the
          \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
          archive site."
     touch configure
@@ -79,10 +108,10 @@ WARNING: \`$1' is missing on your system.  You should only need it if
   autoheader)
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
-         you modified \`acconfig.h' or \`configure.in'.  You might want
+         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
          to install the \`Autoconf' and \`GNU m4' packages.  Grab them
          from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' configure.in`
+    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
     test -z "$files" && files="config.h"
     touch_files=
     for f in $files; do
@@ -98,7 +127,7 @@ WARNING: \`$1' is missing on your system.  You should only need it if
   automake)
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
+         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
          You might want to install the \`Automake' and \`Perl' packages.
          Grab them from any GNU archive site."
     find . -type f -name Makefile.am -print |
@@ -159,7 +188,32 @@ WARNING: \`$1' is missing on your system.  You should only need it if
     fi
     ;;
 
+  help2man)
+    echo 1>&2 "\
+WARNING: \`$1' is missing on your system.  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
+       touch $file
+    else
+       test -z "$file" || exec >$file
+       echo ".ab help2man is required to generate this page"
+       exit 1
+    fi
+    ;;
+
   makeinfo)
+    if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
+       # We have makeinfo, but it failed.
+       exit 1
+    fi
+
     echo 1>&2 "\
 WARNING: \`$1' is missing on your system.  You should only need it if
          you modified a \`.texi' or \`.texinfo' file, or any other file
@@ -175,6 +229,45 @@ WARNING: \`$1' is missing on your system.  You should only need it if
     touch $file
     ;;
 
+  tar)
+    shift
+    if test -n "$run"; then
+      echo 1>&2 "ERROR: \`tar' requires --run"
+      exit 1
+    fi
+
+    # 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 ${1+"$@"} && exit 0
+    fi
+    if (gtar --version > /dev/null 2>&1); then
+       gtar ${1+"$@"} && exit 0
+    fi
+    firstarg="$1"
+    if shift; then
+       case "$firstarg" in
+       *o*)
+           firstarg=`echo "$firstarg" | sed s/o//`
+           tar "$firstarg" ${1+"$@"} && exit 0
+           ;;
+       esac
+       case "$firstarg" in
+       *h*)
+           firstarg=`echo "$firstarg" | sed s/h//`
+           tar "$firstarg" ${1+"$@"} && 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 you do not seem to have it handy on your
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..bb644d717dc7b8fe62d6106e9d2ea08c2ae68527 100644 (file)
@@ -0,0 +1,24 @@
+2001-10-06  gettextize  <bug-gnu-utils@gnu.org>
+
+       * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+2001-10-06  gettextize  <bug-gnu-utils@gnu.org>
+
+       * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+2001-09-10  gettextize  <bug-gnu-utils@gnu.org>
+
+       * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+2001-09-08  gettextize  <bug-gnu-utils@gnu.org>
+
+       * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+2001-09-08  gettextize  <bug-gnu-utils@gnu.org>
+
+       * Makefile.in.in: Upgrade to gettext-0.10.38.
+
+2001-09-07  gettextize  <bug-gnu-utils@gnu.org>
+
+       * Makefile.in.in: Upgrade to gettext-0.10.38.
+
index 40a481f22b28b0c5d50c2fc1ef85e7e4ccd7893f..32b7376550aeceffdff220b7d58d7928ab2498e8 100644 (file)
@@ -1,5 +1,5 @@
 # Makefile for program source directory in GNU NLS utilities package.
-# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
+# Copyright (C) 1995-1997, 2000, 2001 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
 #
 # This file file be copied and used freely without restrictions.  It can
 # be used in projects which are not available under the GNU Public License
@@ -9,6 +9,10 @@
 PACKAGE = @PACKAGE@
 VERSION = @VERSION@
 
+# These two variables depend on the location of this directory.
+subdir = po
+top_builddir = ..
+
 SHELL = /bin/sh
 @SET_MAKE@
 
@@ -18,22 +22,20 @@ VPATH = @srcdir@
 
 prefix = @prefix@
 exec_prefix = @exec_prefix@
-datadir = $(prefix)/@DATADIRNAME@
+datadir = @datadir@
 localedir = $(datadir)/locale
-gnulocaledir = $(prefix)/share/locale
-gettextsrcdir = $(prefix)/share/gettext/po
-subdir = po
+gettextsrcdir = $(datadir)/gettext/po
 
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
-MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
 
 CC = @CC@
-GENCAT = @GENCAT@
-GMSGFMT = PATH=../src:$$PATH @GMSGFMT@
+GMSGFMT = @GMSGFMT@
 MSGFMT = @MSGFMT@
-XGETTEXT = PATH=../src:$$PATH @XGETTEXT@
-MSGMERGE = PATH=../src:$$PATH msgmerge
+XGETTEXT = @XGETTEXT@
+MSGMERGE = msgmerge
 
 DEFS = @DEFS@
 CFLAGS = @CFLAGS@
@@ -43,20 +45,17 @@ INCLUDES = -I.. -I$(top_srcdir)/intl
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
-SOURCES = cat-id-tbl.c
 POFILES = @POFILES@
 GMOFILES = @GMOFILES@
 DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
-stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
+$(POFILES) $(GMOFILES)
 
 POTFILES = \
 
 CATALOGS = @CATALOGS@
-CATOBJEXT = @CATOBJEXT@
-INSTOBJEXT = @INSTOBJEXT@
 
 .SUFFIXES:
-.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
+.SUFFIXES: .c .o .po .pox .gmo .mo
 
 .c.o:
        $(COMPILE) $<
@@ -70,19 +69,19 @@ INSTOBJEXT = @INSTOBJEXT@
 
 .po.gmo:
        file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
-         && rm -f $$file && $(GMSGFMT) -o $$file $<
-
-.po.cat:
-       sed -f ../intl/po2msg.sed < $< > $*.msg \
-         && rm -f $@ && $(GENCAT) $@ $*.msg
+         && rm -f $$file && $(GMSGFMT) --statistics -o $$file $<
 
 
 all: all-@USE_NLS@
 
-all-yes: cat-id-tbl.c $(CATALOGS)
+all-yes: $(CATALOGS)
 all-no:
 
-$(srcdir)/$(PACKAGE).pot: $(POTFILES)
+# Note: Target 'all' must not depend on target '$(srcdir)/$(PACKAGE).pot',
+# otherwise packages like GCC can not be built if only parts of the source
+# have been downloaded.
+
+$(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in
        $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
          --add-comments --keyword=_ --keyword=N_ \
          --files-from=$(srcdir)/POTFILES.in \
@@ -90,78 +89,35 @@ $(srcdir)/$(PACKAGE).pot: $(POTFILES)
           || ( rm -f $(srcdir)/$(PACKAGE).pot \
                && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
 
-$(srcdir)/cat-id-tbl.c: stamp-cat-id; @:
-$(srcdir)/stamp-cat-id: $(PACKAGE).pot
-       rm -f cat-id-tbl.tmp
-       sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \
-               | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp
-       if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \
-         rm cat-id-tbl.tmp; \
-       else \
-         echo cat-id-tbl.c changed; \
-         rm -f $(srcdir)/cat-id-tbl.c; \
-         mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \
-       fi
-       cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id
-
 
 install: install-exec install-data
 install-exec:
 install-data: install-data-@USE_NLS@
-install-data-no: all
-install-data-yes: all
-       if test -r "$(MKINSTALLDIRS)"; then \
-         $(MKINSTALLDIRS) $(DESTDIR)$(datadir); \
+       if test "$(PACKAGE)" = "gettext"; then \
+         $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
+         $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
+                         $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
        else \
-         $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir); \
+         ; \
        fi
+install-data-no: all
+install-data-yes: all
+       $(mkinstalldirs) $(DESTDIR)$(datadir)
        @catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         case "$$cat" in \
-           *.gmo) destdir=$(gnulocaledir);; \
-           *)     destdir=$(localedir);; \
-         esac; \
-         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
-         dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \
-         if test -r "$(MKINSTALLDIRS)"; then \
-           $(MKINSTALLDIRS) $$dir; \
-         else \
-           $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \
-         fi; \
+         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
+         dir=$(localedir)/$$lang/LC_MESSAGES; \
+         $(mkinstalldirs) $(DESTDIR)$$dir; \
          if test -r $$cat; then \
-           $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
-           echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \
+           $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
+           echo "installing $$cat as $(DESTDIR)$$dir/$(PACKAGE).mo"; \
          else \
-           $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
+           $(INSTALL_DATA) $(srcdir)/$$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
            echo "installing $(srcdir)/$$cat as" \
-                "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \
-         fi; \
-         if test -r $$cat.m; then \
-           $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
-           echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
-         else \
-           if test -r $(srcdir)/$$cat.m ; then \
-             $(INSTALL_DATA) $(srcdir)/$$cat.m \
-               $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
-             echo "installing $(srcdir)/$$cat as" \
-                  "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
-           else \
-             true; \
-           fi; \
+                "$(DESTDIR)$$dir/$(PACKAGE).mo"; \
          fi; \
        done
-       if test "$(PACKAGE)" = "gettext"; then \
-         if test -r "$(MKINSTALLDIRS)"; then \
-           $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \
-         else \
-           $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \
-         fi; \
-         $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
-                         $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
-       else \
-         : ; \
-       fi
 
 # Define this as empty until I found a useful application.
 installcheck:
@@ -170,76 +126,68 @@ uninstall:
        catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
-         rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
-         rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
-         rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
-         rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
+         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
+         rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \
        done
-       rm -f $(gettextsrcdir)/po-Makefile.in.in
+       if test "$(PACKAGE)" = "gettext"; then \
+         rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
+       else \
+         : ; \
+       fi
 
 check: all
 
-cat-id-tbl.o: ../intl/libgettext.h
-
 dvi info tags TAGS ID:
 
 mostlyclean:
-       rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp
+       rm -f core core.* *.pox $(PACKAGE).po *.new.po
        rm -fr *.o
 
 clean: mostlyclean
 
 distclean: clean
-       rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
+       rm -f Makefile Makefile.in POTFILES *.mo
 
 maintainer-clean: distclean
        @echo "This command is intended for maintainers to use;"
        @echo "it deletes files that may require special tools to rebuild."
        rm -f $(GMOFILES)
 
-distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
-dist distdir: update-po $(DISTFILES)
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+dist distdir:
+       $(MAKE) update-po
+       @$(MAKE) dist2
+# This is a separate target because 'update-po' must be executed before.
+dist2: $(DISTFILES)
        dists="$(DISTFILES)"; \
        for file in $$dists; do \
-         ln $(srcdir)/$$file $(distdir) 2> /dev/null \
-           || cp -p $(srcdir)/$$file $(distdir); \
+         if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
+         cp -p $$dir/$$file $(distdir); \
        done
 
 update-po: Makefile
        $(MAKE) $(PACKAGE).pot
-       PATH=`pwd`/../src:$$PATH; \
+       if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; fi; \
        cd $(srcdir); \
-       catalogs='$(CATALOGS)'; \
+       catalogs='$(GMOFILES)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
-         mv $$lang.po $$lang.old.po; \
+         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
          echo "$$lang:"; \
-         if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
-           rm -f $$lang.old.po; \
+         if $(MSGMERGE) $$lang.po $(PACKAGE).pot -o $$lang.new.po; then \
+           mv -f $$lang.new.po $$lang.po; \
          else \
            echo "msgmerge for $$cat failed!"; \
-           rm -f $$lang.po; \
-           mv $$lang.old.po $$lang.po; \
+           rm -f $$lang.new.po; \
          fi; \
        done
+       $(MAKE) update-gmo
 
-POTFILES: POTFILES.in
-       ( if test 'x$(srcdir)' != 'x.'; then \
-           posrcprefix='$(top_srcdir)/'; \
-         else \
-           posrcprefix="../"; \
-         fi; \
-         rm -f $@-t $@ \
-           && (sed -e '/^#/d' -e '/^[  ]*$$/d' \
-                   -e "s@.*@   $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
-               | sed -e '$$s/\\$$//') > $@-t \
-           && chmod a-w $@-t \
-           && mv $@-t $@ )
-
-Makefile: Makefile.in.in ../config.status POTFILES
-       cd .. \
+update-gmo: Makefile $(GMOFILES)
+       @:
+
+Makefile: Makefile.in.in $(top_builddir)/config.status POTFILES.in
+       cd $(top_builddir) \
          && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
               $(SHELL) ./config.status
 
index b04db50510963d187e7615bbac5216233b4be81e..5a6b8c32ff26d6e28f53a9b9318b7b057fb808f8 100644 (file)
@@ -98,6 +98,7 @@ src/faillog.c
 src/gpasswd.c
 src/groupadd.c
 src/groupdel.c
+src/groupmems.c
 src/groupmod.c
 src/groups.c
 src/grpck.c
diff --git a/po/cat-id-tbl.c b/po/cat-id-tbl.c
deleted file mode 100644 (file)
index 8be2090..0000000
+++ /dev/null
@@ -1,508 +0,0 @@
-/* Automatically generated by po2tbl.sed from shadow.pot.  */
-
-#if HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libgettext.h"
-
-const struct _msg_ent _msg_tbl[] = {
-  {"", 1},
-  {"Warning: unknown group %s\n", 2},
-  {"Warning: too many groups\n", 3},
-  {"Your password has expired.", 4},
-  {"Your password is inactive.", 5},
-  {"Your login has expired.", 6},
-  {"  Contact the system administrator.\n", 7},
-  {"  Choose a new password.\n", 8},
-  {"Your password will expire in %ld days.\n", 9},
-  {"Your password will expire tomorrow.\n", 10},
-  {"Your password will expire today.\n", 11},
-  {"Unable to change tty %s", 12},
-  {"Environment overflow\n", 13},
-  {"You may not change $%s\n", 14},
-  {"%d %s since last login.  Last was %s on %s.\n", 15},
-  {"failures", 16},
-  {"failure", 17},
-  {"Too many logins.\n", 18},
-  {"Password does not decrypt secret key for %s.\n", 19},
-  {"Could not set %s's secret key: is the keyserv daemon running?\n", 20},
-  {"You have new mail.", 21},
-  {"No mail.", 22},
-  {"You have mail.", 23},
-  {"Bad password: %s.  ", 24},
-  {"passwd: pam_start() failed, error %d\n", 25},
-  {"passwd: %s\n", 26},
-  {"Unable to cd to \"%s\"\n", 27},
-  {"No directory, logging in with HOME=/", 28},
-  {"Executing shell %s\n", 29},
-  {"Cannot execute %s", 30},
-  {"Access to su to that account DENIED.\n", 31},
-  {"Password authentication bypassed.\n", 32},
-  {"Please enter your OWN password as authentication.\n", 33},
-  {"Invalid root directory \"%s\"\n", 34},
-  {"Can't change root directory to \"%s\"\n", 35},
-  {"malloc(%d) failed\n", 36},
-  {"Dialup Password: ", 37},
-  {"Could not allocate space for config info.\n", 38},
-  {"configuration error - unknown item '%s' (notify administrator)\n", 39},
-  {"error - lookup '%s' failed\n", 40},
-  {"%s not found\n", 41},
-  {"Password: ", 42},
-  {"%s's Password: ", 43},
-  {"(Echo on) ", 44},
-  {"Unknown error %d", 45},
-  {"\
-Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n\
-  [ -I inactive ] [ -E expire ] [ -d last_day ] user\n", 46},
-  {"Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n", 47},
-  {"\
-Enter the new value, or press return for the default\n\
-\n", 48},
-  {"Minimum Password Age", 49},
-  {"Maximum Password Age", 50},
-  {"Last Password Change (YYYY-MM-DD)", 51},
-  {"Password Expiration Warning", 52},
-  {"Password Inactive", 53},
-  {"Account Expiration Date (YYYY-MM-DD)", 54},
-  {"Minimum:\t%ld\n", 55},
-  {"Maximum:\t%ld\n", 56},
-  {"Warning:\t%ld\n", 57},
-  {"Inactive:\t%ld\n", 58},
-  {"Last Change:\t\t", 59},
-  {"Never\n", 60},
-  {"Password Expires:\t", 61},
-  {"Password Inactive:\t", 62},
-  {"Account Expires:\t", 63},
-  {"%s: PAM authentication failed\n", 64},
-  {"%s: do not include \"l\" with other flags\n", 65},
-  {"%s: permission denied\n", 66},
-  {"%s: can't lock password file\n", 67},
-  {"%s: can't open password file\n", 68},
-  {"%s: unknown user: %s\n", 69},
-  {"%s: can't lock shadow password file\n", 70},
-  {"%s: can't open shadow password file\n", 71},
-  {"Changing the aging information for %s\n", 72},
-  {"%s: error changing fields\n", 73},
-  {"%s: can't update password file\n", 74},
-  {"%s: can't update shadow password file\n", 75},
-  {"Error updating the DBM password entry.\n", 76},
-  {"%s: can't rewrite shadow password file\n", 77},
-  {"%s: can't rewrite password file\n", 78},
-  {"%s: PAM chauthtok failed\n", 79},
-  {"%s: no aging information present\n", 80},
-  {"\
-Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ]\n\
-\t[ -h home_ph ] [ -o other ] [ user ]\n", 81},
-  {"\
-Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ] [ -h home_ph ]\n", 82},
-  {"Enter the new value, or press return for the default\n", 83},
-  {"Full Name", 84},
-  {"\tFull Name: %s\n", 85},
-  {"Room Number", 86},
-  {"\tRoom Number: %s\n", 87},
-  {"Work Phone", 88},
-  {"\tWork Phone: %s\n", 89},
-  {"Home Phone", 90},
-  {"\tHome Phone: %s\n", 91},
-  {"Other", 92},
-  {"%s: Permission denied.\n", 93},
-  {"%s: Unknown user %s\n", 94},
-  {"%s: Cannot determine your user name.\n", 95},
-  {"%s: cannot change user `%s' on NIS client.\n", 96},
-  {"%s: `%s' is the NIS master for this client.\n", 97},
-  {"Changing the user information for %s\n", 98},
-  {"%s: invalid name: \"%s\"\n", 99},
-  {"%s: invalid room number: \"%s\"\n", 100},
-  {"%s: invalid work phone: \"%s\"\n", 101},
-  {"%s: invalid home phone: \"%s\"\n", 102},
-  {"%s: \"%s\" contains illegal characters\n", 103},
-  {"%s: fields too long\n", 104},
-  {"Cannot change ID to root.\n", 105},
-  {"Cannot lock the password file; try again later.\n", 106},
-  {"Cannot open the password file.\n", 107},
-  {"%s: %s not found in /etc/passwd\n", 108},
-  {"Error updating the password entry.\n", 109},
-  {"Cannot commit password file changes.\n", 110},
-  {"Cannot unlock the password file.\n", 111},
-  {"usage: %s [-e]\n", 112},
-  {"%s: can't lock shadow file\n", 113},
-  {"%s: can't open shadow file\n", 114},
-  {"%s: line %d: line too long\n", 115},
-  {"%s: line %d: missing new password\n", 116},
-  {"%s: line %d: unknown user %s\n", 117},
-  {"%s: line %d: cannot update password entry\n", 118},
-  {"%s: error detected, changes ignored\n", 119},
-  {"%s: error updating shadow file\n", 120},
-  {"%s: error updating password file\n", 121},
-  {"Usage: %s [ -s shell ] [ name ]\n", 122},
-  {"Login Shell", 123},
-  {"You may not change the shell for %s.\n", 124},
-  {"Changing the login shell for %s\n", 125},
-  {"%s: Invalid entry: %s\n", 126},
-  {"%s is an invalid shell.\n", 127},
-  {"Usage: %s [ -(a|d) ] shell\n", 128},
-  {"Shell password: ", 129},
-  {"re-enter Shell password: ", 130},
-  {"%s: Passwords do not match, try again.\n", 131},
-  {"%s: can't create %s", 132},
-  {"%s: can't open %s", 133},
-  {"%s: Shell %s not found.\n", 134},
-  {"Usage: expiry { -f | -c }\n", 135},
-  {"%s: WARNING!  Must be set-UID root!\n", 136},
-  {"%s: unknown user\n", 137},
-  {"usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n", 138},
-  {"Unknown User: %s\n", 139},
-  {"Username   Failures  Maximum  Latest\n", 140},
-  {"  %s on %s", 141},
-  {" [%lds left]", 142},
-  {" [%lds lock]", 143},
-  {"usage: %s [-r|-R] group\n", 144},
-  {"       %s [-a user] group\n", 145},
-  {"       %s [-d user] group\n", 146},
-  {"       %s [-A user,...] [-M user,...] group\n", 147},
-  {"       %s [-M user,...] group\n", 148},
-  {"%s: unknown user %s\n", 149},
-  {"Permission denied.\n", 150},
-  {"%s: shadow group passwords required for -A\n", 151},
-  {"Who are you?\n", 152},
-  {"unknown group: %s\n", 153},
-  {"Adding user %s to group %s\n", 154},
-  {"Removing user %s from group %s\n", 155},
-  {"%s: unknown member %s\n", 156},
-  {"%s: Not a tty\n", 157},
-  {"Changing the password for group %s\n", 158},
-  {"New Password: ", 159},
-  {"Re-enter new password: ", 160},
-  {"They don't match; try again", 161},
-  {"%s: Try again later\n", 162},
-  {"%s: can't get lock\n", 163},
-  {"%s: can't get shadow lock\n", 164},
-  {"%s: can't open file\n", 165},
-  {"%s: can't update entry\n", 166},
-  {"%s: can't update shadow entry\n", 167},
-  {"%s: can't re-write file\n", 168},
-  {"%s: can't re-write shadow file\n", 169},
-  {"%s: can't unlock file\n", 170},
-  {"%s: can't update DBM files\n", 171},
-  {"%s: can't update DBM shadow files\n", 172},
-  {"usage: groupadd [-g gid [-o]] group\n", 173},
-  {"%s: error adding new group entry\n", 174},
-  {"%s: cannot add new dbm group entry\n", 175},
-  {"%s: name %s is not unique\n", 176},
-  {"%s: gid %ld is not unique\n", 177},
-  {"%s: can't get unique gid\n", 178},
-  {"%s: %s is a not a valid group name\n", 179},
-  {"%s: invalid group %s\n", 180},
-  {"%s: -O requires NAME=VALUE\n", 181},
-  {"%s: cannot rewrite group file\n", 182},
-  {"%s: cannot rewrite shadow group file\n", 183},
-  {"%s: unable to lock group file\n", 184},
-  {"%s: unable to open group file\n", 185},
-  {"%s: unable to lock shadow group file\n", 186},
-  {"%s: unable to open shadow group file\n", 187},
-  {"%s: group %s exists\n", 188},
-  {"usage: groupdel group\n", 189},
-  {"%s: error removing group entry\n", 190},
-  {"%s: error removing group dbm entry\n", 191},
-  {"%s: error removing shadow group entry\n", 192},
-  {"%s: error removing shadow group dbm entry\n", 193},
-  {"%s: cannot remove user's primary group.\n", 194},
-  {"%s: group %s does not exist\n", 195},
-  {"%s: group %s is a NIS group\n", 196},
-  {"%s: %s is the NIS master\n", 197},
-  {"usage: groupmod [-g gid [-o]] [-n name] group\n", 198},
-  {"%s: %s not found in /etc/group\n", 199},
-  {"%s: cannot add new dbm shadow group entry\n", 200},
-  {"%s: %ld is not a unique gid\n", 201},
-  {"%s: %s is not a unique name\n", 202},
-  {"unknown user %s\n", 203},
-  {"Usage: %s [ -r ] [ group [ gshadow ] ]\n", 204},
-  {"Usage: %s [ -r ] [ group ]\n", 205},
-  {"No", 206},
-  {"%s: cannot lock file %s\n", 207},
-  {"%s: cannot open file %s\n", 208},
-  {"invalid group file entry\n", 209},
-  {"delete line `%s'? ", 210},
-  {"duplicate group entry\n", 211},
-  {"invalid group name `%s'\n", 212},
-  {"group %s: bad GID (%d)\n", 213},
-  {"group %s: no user %s\n", 214},
-  {"delete member `%s'? ", 215},
-  {"invalid shadow group file entry\n", 216},
-  {"duplicate shadow group entry\n", 217},
-  {"no matching group file entry\n", 218},
-  {"shadow group %s: no administrative user %s\n", 219},
-  {"delete administrative member `%s'? ", 220},
-  {"shadow group %s: no user %s\n", 221},
-  {"%s: cannot update file %s\n", 222},
-  {"%s: the files have been updated; run mkpasswd\n", 223},
-  {"%s: no changes\n", 224},
-  {"%s: the files have been updated\n", 225},
-  {"%s: can't lock group file\n", 226},
-  {"%s: can't open group file\n", 227},
-  {"%s: can't lock shadow group file\n", 228},
-  {"%s: can't open shadow group file\n", 229},
-  {"%s: can't remove shadow group %s\n", 230},
-  {"%s: can't update shadow entry for %s\n", 231},
-  {"%s: can't update entry for group %s\n", 232},
-  {"%s: can't update shadow group file\n", 233},
-  {"%s: can't update group file\n", 234},
-  {"%s: not configured for shadow group support.\n", 235},
-  {"%s: can't delete shadow group file\n", 236},
-  {"usage: id [ -a ]\n", 237},
-  {"usage: id\n", 238},
-  {"uid=%d(%s)", 239},
-  {"uid=%d", 240},
-  {" gid=%d(%s)", 241},
-  {" gid=%d", 242},
-  {" euid=%d(%s)", 243},
-  {" euid=%d", 244},
-  {" egid=%d(%s)", 245},
-  {" egid=%d", 246},
-  {" groups=", 247},
-  {"Username         Port     From             Latest\n", 248},
-  {"Username                Port     Latest\n", 249},
-  {"**Never logged in**", 250},
-  {"usage: %s [-p] [name]\n", 251},
-  {"       %s [-p] [-h host] [-f name]\n", 252},
-  {"       %s [-p] -r host\n", 253},
-  {"Invalid login time\n", 254},
-  {"\
-\n\
-System closed for routine maintenance\n", 255},
-  {"\
-\n\
-[Disconnect bypassed -- root login allowed.]\n", 256},
-  {"\
-\n\
-Login timed out after %d seconds.\n", 257},
-  {" on `%.100s' from `%.200s'", 258},
-  {" on `%.100s'", 259},
-  {"\
-\n\
-%s login: ", 260},
-  {"login: ", 261},
-  {"Login incorrect", 262},
-  {"Warning: login re-enabled after temporary lockout.\n", 263},
-  {"Last login: %s on %s", 264},
-  {"Last login: %.19s on %s", 265},
-  {" from %.*s", 266},
-  {"Starting rad_login\n", 267},
-  {"%s: no DBM database on system - no action performed\n", 268},
-  {"%s: cannot overwrite file %s\n", 269},
-  {"%s: cannot open DBM files for %s\n", 270},
-  {"%s: the beginning with ", 271},
-  {"%s: error parsing line \"%s\"\n", 272},
-  {"adding record for name ", 273},
-  {"%s: error adding record for ", 274},
-  {"added %d entries, longest was %d\n", 275},
-  {"Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n", 276},
-  {"Usage: %s [ -vf ] [ -p|g|sp ] file\n", 277},
-  {"Usage: %s [ -vf ] [ -p|g ] file\n", 278},
-  {"usage: newgrp [ - ] [ group ]\n", 279},
-  {"usage: sg group [[-c] command ]\n", 280},
-  {"unknown uid: %d\n", 281},
-  {"unknown gid: %ld\n", 282},
-  {"unknown gid: %d\n", 283},
-  {"Sorry.\n", 284},
-  {"too many groups\n", 285},
-  {"Usage: %s [ input ]\n", 286},
-  {"%s: can't lock /etc/passwd.\n", 287},
-  {"%s: can't lock files, try again later\n", 288},
-  {"%s: can't open files\n", 289},
-  {"%s: line %d: invalid line\n", 290},
-  {"%s: line %d: can't create GID\n", 291},
-  {"%s: line %d: can't create UID\n", 292},
-  {"%s: line %d: cannot find user %s\n", 293},
-  {"%s: line %d: can't update password\n", 294},
-  {"%s: line %d: mkdir failed\n", 295},
-  {"%s: line %d: chown failed\n", 296},
-  {"%s: line %d: can't update entry\n", 297},
-  {"%s: error updating files\n", 298},
-  {"usage: %s [ -f | -s ] [ name ]\n", 299},
-  {"       %s [ -x max ] [ -n min ] [ -w warn ] [ -i inact ] name\n", 300},
-  {"       %s { -l | -u | -d | -S | -e } name\n", 301},
-  {"User %s has a TCFS key, his old password is required.\n", 302},
-  {"You can use -t option to force the change.\n", 303},
-  {"Old password: ", 304},
-  {"Incorrect password for `%s'\n", 305},
-  {"Warning: user %s has a TCFS key.\n", 306},
-  {"\
-Enter the new password (minimum of %d, maximum of %d characters)\n\
-Please use a combination of upper and lower case letters and numbers.\n", 307},
-  {"New password: ", 308},
-  {"Try again.\n", 309},
-  {"\
-\n\
-Warning: weak password (enter it again to use it anyway).\n", 310},
-  {"They don't match; try again.\n", 311},
-  {"The password for %s cannot be changed.\n", 312},
-  {"Sorry, the password for %s cannot be changed yet.\n", 313},
-  {"%s: out of memory\n", 314},
-  {"Cannot lock the TCFS key database; try again later\n", 315},
-  {"Cannot open the TCFS key database.\n", 316},
-  {"Error updating the TCFS key database.\n", 317},
-  {"Cannot commit TCFS changes.\n", 318},
-  {"%s: Cannot execute %s", 319},
-  {"%s: repository %s not supported\n", 320},
-  {"%s: Permission denied\n", 321},
-  {"You may not change the password for %s.\n", 322},
-  {"Changing password for %s\n", 323},
-  {"The password for %s is unchanged.\n", 324},
-  {"Password changed.\n", 325},
-  {"Usage: %s [ -qr ] [ passwd [ shadow ] ]\n", 326},
-  {"Usage: %s [ -qr ] [ passwd ]\n", 327},
-  {"invalid password file entry\n", 328},
-  {"duplicate password entry\n", 329},
-  {"invalid user name `%s'\n", 330},
-  {"user %s: bad UID (%d)\n", 331},
-  {"user %s: no group %d\n", 332},
-  {"user %s: directory %s does not exist\n", 333},
-  {"user %s: program %s does not exist\n", 334},
-  {"invalid shadow password file entry\n", 335},
-  {"duplicate shadow password entry\n", 336},
-  {"no matching password file entry\n", 337},
-  {"user %s: last password change in the future\n", 338},
-  {"%s: can't lock passwd file\n", 339},
-  {"%s: can't open passwd file\n", 340},
-  {"%s: can't remove shadow entry for %s\n", 341},
-  {"%s: can't update passwd entry for %s\n", 342},
-  {"%s: can't update shadow file\n", 343},
-  {"%s: can't update passwd file\n", 344},
-  {"%s: Shadow passwords are not configured.\n", 345},
-  {"%s: can't update entry for user %s\n", 346},
-  {"%s: can't delete shadow password file\n", 347},
-  {"Sorry.", 348},
-  {"%s: must be run from a terminal\n", 349},
-  {"%s: pam_start: error %d\n", 350},
-  {"Unknown id: %s\n", 351},
-  {"You are not authorized to su %s\n", 352},
-  {"(Enter your own password.)", 353},
-  {"%s: permission denied (shell).\n", 354},
-  {"\
-%s: %s\n\
-(Ignored)\n", 355},
-  {"No shell\n", 356},
-  {"No password file\n", 357},
-  {"No password entry for 'root'\n", 358},
-  {"\
-\n\
-Type control-d to proceed with normal startup,\n\
-(or give root password for system maintenance):", 359},
-  {"Entering System Maintenance Mode\n", 360},
-  {"%s: rebuild the group database\n", 361},
-  {"%s: rebuild the shadow group database\n", 362},
-  {"%s: invalid numeric argument `%s'\n", 363},
-  {"%s: unknown gid %s\n", 364},
-  {"%s: unknown group %s\n", 365},
-  {"group=%s,%ld  basedir=%s  skel=%s\n", 366},
-  {"shell=%s  ", 367},
-  {"inactive=%ld  expire=%s", 368},
-  {"GROUP=%ld\n", 369},
-  {"HOME=%s\n", 370},
-  {"INACTIVE=%ld\n", 371},
-  {"EXPIRE=%s\n", 372},
-  {"SHELL=%s\n", 373},
-  {"SKEL=%s\n", 374},
-  {"%s: cannot create new defaults file\n", 375},
-  {"%s: rename: %s", 376},
-  {"%s: group `%s' is a NIS group.\n", 377},
-  {"%s: too many groups specified (max %d).\n", 378},
-  {"usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n", 379},
-  {"\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n", 380},
-  {"[-f inactive] [-e expire ] ", 381},
-  {"[-A program] ", 382},
-  {"[-p passwd] name\n", 383},
-  {"       %s\t-D [-g group] [-b base] [-s shell]\n", 384},
-  {"\t\t[-f inactive] [-e expire ]\n", 385},
-  {"%s: error locking group file\n", 386},
-  {"%s: error opening group file\n", 387},
-  {"%s: error locking shadow group file\n", 388},
-  {"%s: error opening shadow group file\n", 389},
-  {"%s: uid %d is not unique\n", 390},
-  {"%s: can't get unique uid\n", 391},
-  {"%s: invalid field `%s'\n", 392},
-  {"%s: invalid base directory `%s'\n", 393},
-  {"%s: invalid comment `%s'\n", 394},
-  {"%s: invalid home directory `%s'\n", 395},
-  {"%s: invalid date `%s'\n", 396},
-  {"%s: shadow passwords required for -e\n", 397},
-  {"%s: shadow passwords required for -f\n", 398},
-  {"%s: invalid shell `%s'\n", 399},
-  {"%s: invalid user name `%s'\n", 400},
-  {"%s: cannot rewrite password file\n", 401},
-  {"%s: cannot rewrite shadow password file\n", 402},
-  {"%s: unable to lock password file\n", 403},
-  {"%s: unable to open password file\n", 404},
-  {"%s: cannot lock shadow password file\n", 405},
-  {"%s: cannot open shadow password file\n", 406},
-  {"%s: error adding authentication method\n", 407},
-  {"%s: error adding new password entry\n", 408},
-  {"%s: error updating password dbm entry\n", 409},
-  {"%s: error adding new shadow password entry\n", 410},
-  {"%s: error updating shadow passwd dbm entry\n", 411},
-  {"%s: cannot create directory %s\n", 412},
-  {"%s: user %s exists\n", 413},
-  {"\
-%s: group %s exists - if you want to add this user to that group, use -g.\n", 414},
-  {"%s: warning: CREATE_HOME not supported, please use -m instead.\n", 415},
-  {"usage: %s [-r] name\n", 416},
-  {"%s: error updating group entry\n", 417},
-  {"%s: cannot update dbm group entry\n", 418},
-  {"%s: cannot remove dbm group entry\n", 419},
-  {"%s: cannot rewrite TCFS key file\n", 420},
-  {"%s: cannot lock TCFS key file\n", 421},
-  {"%s: cannot open TCFS key file\n", 422},
-  {"%s: cannot open group file\n", 423},
-  {"%s: cannot open shadow group file\n", 424},
-  {"%s: error deleting authentication\n", 425},
-  {"%s: error deleting password entry\n", 426},
-  {"%s: error deleting shadow password entry\n", 427},
-  {"%s: error deleting TCFS entry\n", 428},
-  {"%s: error deleting password dbm entry\n", 429},
-  {"%s: error deleting shadow passwd dbm entry\n", 430},
-  {"%s: user %s is currently logged in\n", 431},
-  {"%s: warning: %s not owned by %s, not removing\n", 432},
-  {"%s: warning: can't remove ", 433},
-  {"%s: user %s does not exist\n", 434},
-  {"%s: user %s is a NIS user\n", 435},
-  {"%s: %s not owned by %s, not removing\n", 436},
-  {"%s: not removing directory %s (would remove home of user %s)\n", 437},
-  {"%s: error removing directory %s\n", 438},
-  {"\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n", 439},
-  {"[-A {DEFAULT|program},... ] ", 440},
-  {"[-p passwd] [-L|-U] name\n", 441},
-  {"%s: out of memory in update_group\n", 442},
-  {"%s: out of memory in update_gshadow\n", 443},
-  {"%s: no flags given\n", 444},
-  {"%s: shadow passwords required for -e and -f\n", 445},
-  {"%s: uid %ld is not unique\n", 446},
-  {"%s: error deleting authentication method\n", 447},
-  {"%s: error changing authentication method\n", 448},
-  {"%s: error changing password entry\n", 449},
-  {"%s: error removing password entry\n", 450},
-  {"%s: error adding password dbm entry\n", 451},
-  {"%s: error removing passwd dbm entry\n", 452},
-  {"%s: error removing shadow password entry\n", 453},
-  {"%s: error removing shadow passwd dbm entry\n", 454},
-  {"%s: directory %s exists\n", 455},
-  {"%s: can't create %s\n", 456},
-  {"%s: can't chown %s\n", 457},
-  {"%s: cannot rename directory %s to %s\n", 458},
-  {"%s: warning: %s not owned by %s\n", 459},
-  {"failed to change mailbox owner", 460},
-  {"failed to rename mailbox", 461},
-  {"\
-\n\
-%s: %s is unchanged\n", 462},
-  {"Couldn't lock file", 463},
-  {"Couldn't make backup", 464},
-  {"%s: can't restore %s: %s (your changes are in %s)\n", 465},
-  {"\
-Usage:\n\
-`vipw' edits /etc/passwd        `vipw -s' edits /etc/shadow\n\
-`vigr' edits /etc/group         `vigr -s' edits /etc/gshadow\n", 466},
-};
-
-int _msg_tbl_length = 466;
index a062f99d3a3b7ffac1ece80717ae3fabd51d1233..78f03d4ab09ce094f8040eec6e84c1ac7fd97106 100644 (file)
Binary files a/po/cs.gmo and b/po/cs.gmo differ
index 999c1f06448ad3675b34a043bf8a7437518092e6..2b9d83b4fd7f9751411d1cf6534cb47b71fc1c3b 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
@@ -4,7 +4,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: shadow-utils-20000902\n"
-"POT-Creation-Date: 2000-10-16 23:43+0200\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\n"
 "PO-Revision-Date: 2000-09-23 19:58+0200\n"
 "Last-Translator: Jiøí Pavlovský <pavlovsk@ff.cuni.cz>\n"
 "Language-Team: Czech <cs@li.org>\n"
@@ -54,7 +54,7 @@ msgstr "Platnost va
 msgid "Your password will expire today.\n"
 msgstr "Platnost va¹eho heslo vypr¹í dnes.\n"
 
-#: libmisc/chowntty.c:110
+#: libmisc/chowntty.c:113
 #, c-format
 msgid "Unable to change tty %s"
 msgstr "TTY %s nelze zmìnit."
@@ -338,9 +338,9 @@ msgstr "Vypnut
 msgid "Account Expires:\t"
 msgstr "Platnost hesla vypr¹í:\t"
 
-#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322
-#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738
-#: src/usermod.c:1684
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
 #, fuzzy, c-format
 msgid "%s: PAM authentication failed\n"
 msgstr "%s: chyba pøi vytváøení ovìøovací metody\n"
@@ -350,17 +350,17 @@ msgstr "%s: chyba p
 msgid "%s: do not include \"l\" with other flags\n"
 msgstr "%s: nepou¾ívejte \"l\" s ostatními pøíznaky\n"
 
-#: src/chage.c:548 src/chage.c:660 src/login.c:529
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
 #, c-format
 msgid "%s: permission denied\n"
 msgstr "%s: pøístup odmítnut\n"
 
-#: src/chage.c:560 src/chpasswd.c:170
+#: src/chage.c:560 src/chpasswd.c:157
 #, c-format
 msgid "%s: can't lock password file\n"
 msgstr "%s: soubor s hesly nelze zamknout\n"
 
-#: src/chage.c:566 src/chpasswd.c:174
+#: src/chage.c:566 src/chpasswd.c:161
 #, c-format
 msgid "%s: can't open password file\n"
 msgstr "%s: soubor s hesly nelze otevøít\n"
@@ -390,12 +390,12 @@ msgstr "M
 msgid "%s: error changing fields\n"
 msgstr "%s: chyba pøi zmìnì polo¾ek\n"
 
-#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
 #, c-format
 msgid "%s: can't update password file\n"
 msgstr "%s: soubor s hesly nelze aktualizovat\n"
 
-#: src/chage.c:740 src/pwunconv.c:178
+#: src/chage.c:740 src/pwunconv.c:169
 #, c-format
 msgid "%s: can't update shadow password file\n"
 msgstr "%s: soubor se stínovými hesly nelze aktualizovat\n"
@@ -415,9 +415,9 @@ msgstr "%s: soubor se st
 msgid "%s: can't rewrite password file\n"
 msgstr "%s: soubor s hesly nelze pøepsat\n"
 
-#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409
-#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903
-#: src/usermod.c:1762
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
 #, fuzzy, c-format
 msgid "%s: PAM chauthtok failed\n"
 msgstr "%s: nelze odemknout soubor\n"
@@ -433,8 +433,8 @@ msgid ""
 "Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ]\n"
 "\t[ -h home_ph ] [ -o other ] [ user ]\n"
 msgstr ""
-"Pou¾ití: %s [ -f jméno ] [ -r èíslo místnosti ] [ -w telefon do zamìstnání "
-"]\n"
+"Pou¾ití: %s [ -f jméno ] [ -r èíslo místnosti ] [ -w telefon do "
+"zamìstnání ]\n"
 "            [ -h telefon domù ] [ -o ostatní ] [ u¾ivatel ]\n"
 
 #: src/chfn.c:111
@@ -442,8 +442,8 @@ msgstr ""
 msgid ""
 "Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ] [ -h home_ph ]\n"
 msgstr ""
-"Pou¾ití: %s [ -f jméno ] [ -r èíslo místnosti ] [ -w telefon do zamìstnání "
-"]\n"
+"Pou¾ití: %s [ -f jméno ] [ -r èíslo místnosti ] [ -w telefon do "
+"zamìstnání ]\n"
 "            [ -h telefon domù ]\n"
 
 #: src/chfn.c:163 src/chsh.c:119
@@ -564,7 +564,7 @@ msgstr "Nelze zamknout soubor s hesly; zkuste to pozd
 msgid "Cannot open the password file.\n"
 msgstr "Soubor s hesly nelze otevøít.\n"
 
-#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
 #, c-format
 msgid "%s: %s not found in /etc/passwd\n"
 msgstr "%s: %s se v /etc/passwd nenalézá\n"
@@ -582,53 +582,53 @@ msgstr "Nelze prov
 msgid "Cannot unlock the password file.\n"
 msgstr "Soubor s hesly nelze odemknout.\n"
 
-#: src/chpasswd.c:82
+#: src/chpasswd.c:69
 #, c-format
 msgid "usage: %s [-e]\n"
 msgstr "Pou¾ití: %s [-e]\n"
 
-#: src/chpasswd.c:182 src/pwconv.c:104
+#: src/chpasswd.c:169 src/pwconv.c:104
 #, c-format
 msgid "%s: can't lock shadow file\n"
 msgstr "%s: soubor se stínovými hesly nelze zamknout\n"
 
-#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118
-#: src/pwunconv.c:123
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
 #, c-format
 msgid "%s: can't open shadow file\n"
 msgstr "%s: soubor se stínovými hesly nelze otevøít\n"
 
-#: src/chpasswd.c:209 src/newusers.c:465
+#: src/chpasswd.c:196 src/newusers.c:465
 #, c-format
 msgid "%s: line %d: line too long\n"
 msgstr "%s: øádek %d je pøíli¹ dlouhý\n"
 
-#: src/chpasswd.c:229
+#: src/chpasswd.c:216
 #, c-format
 msgid "%s: line %d: missing new password\n"
 msgstr "%s: øádek %d: chybí nové heslo\n"
 
-#: src/chpasswd.c:245
+#: src/chpasswd.c:232
 #, c-format
 msgid "%s: line %d: unknown user %s\n"
 msgstr "%s: øádek %d: u¾ivatel %s je neznámý\n"
 
-#: src/chpasswd.c:297
+#: src/chpasswd.c:284
 #, c-format
 msgid "%s: line %d: cannot update password entry\n"
 msgstr "%s: øádek %d: polo¾ku v souboru s hesly nelze aktualizovat\n"
 
-#: src/chpasswd.c:313 src/newusers.c:585
+#: src/chpasswd.c:300 src/newusers.c:585
 #, c-format
 msgid "%s: error detected, changes ignored\n"
 msgstr "%s: chyba, zmìny budou ignorovány\n"
 
-#: src/chpasswd.c:324
+#: src/chpasswd.c:311
 #, c-format
 msgid "%s: error updating shadow file\n"
 msgstr "%s: chyba pøi aktualizaci souboru se stínovými hesly\n"
 
-#: src/chpasswd.c:332
+#: src/chpasswd.c:319
 #, c-format
 msgid "%s: error updating password file\n"
 msgstr "%s: chyba pøi aktualizaci souboru s hesly\n"
@@ -714,7 +714,7 @@ msgstr "%s: nezn
 msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
 msgstr "Pou¾ití: %s [-a|-u u¾ivatel] [-m max] [-r] [-t dny] [-l zamkn sek]\n"
 
-#: src/faillog.c:134 src/lastlog.c:94
+#: src/faillog.c:134 src/lastlog.c:103
 #, c-format
 msgid "Unknown User: %s\n"
 msgstr "U¾ivatel %s je neznámý.\n"
@@ -890,18 +890,18 @@ msgid "usage: groupadd [-g gid [-o]] group\n"
 msgstr "Pou¾ití: groupadd [-g gid [-o]] skupina\n"
 
 #: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
-#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
 #, c-format
 msgid "%s: error adding new group entry\n"
 msgstr "%s: chyba pøi pøidávání polo¾ky souboru se skupinami\n"
 
-#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948
-#: src/usermod.c:557 src/usermod.c:693
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
 #, c-format
 msgid "%s: cannot add new dbm group entry\n"
 msgstr "%s: nelze pøidat polo¾ku do souboru s dbm databází skupin\n"
 
-#: src/groupadd.c:264 src/useradd.c:1002
+#: src/groupadd.c:264 src/useradd.c:1014
 #, c-format
 msgid "%s: name %s is not unique\n"
 msgstr "%s: jméno %s není jedineèné\n"
@@ -929,19 +929,19 @@ msgstr "%s: %s nen
 msgid "%s: invalid group %s\n"
 msgstr "%s: chybná skupina %s\n"
 
-#: src/groupadd.c:373 src/useradd.c:1278
+#: src/groupadd.c:373 src/useradd.c:1290
 #, c-format
 msgid "%s: -O requires NAME=VALUE\n"
 msgstr "%s: pøepínaè -O vy¾aduje argument typu JMÉNO=HODNOTA\n"
 
-#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387
-#: src/userdel.c:309 src/usermod.c:569
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
 #, c-format
 msgid "%s: cannot rewrite group file\n"
 msgstr "%s: soubor se skupinami nelze pøepsat\n"
 
-#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395
-#: src/userdel.c:315 src/usermod.c:706
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
 #, c-format
 msgid "%s: cannot rewrite shadow group file\n"
 msgstr "%s: soubor se stínovými skupinami nelze pøepsat\n"
@@ -1015,11 +1015,50 @@ msgstr "%s: skupina %s neexistuje\n"
 msgid "%s: group %s is a NIS group\n"
 msgstr "%s: skupina %s je NIS skupinou\n"
 
-#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
 #, c-format
 msgid "%s: %s is the NIS master\n"
 msgstr "%s: %s je hlavním NIS serverem\n"
 
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+#, fuzzy
+msgid "Unable to lock group file\n"
+msgstr "%s: soubor se skupinami nelze zamknout\n"
+
+#: src/groupmems.c:209
+#, fuzzy
+msgid "Unable to open group file\n"
+msgstr "%s: soubor se skupinami nelze otevøít\n"
+
+#: src/groupmems.c:229
+#, fuzzy
+msgid "Cannot close group file\n"
+msgstr "%s: soubor se skupinami nelze otevøít\n"
+
 #: src/groupmod.c:111
 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
 msgstr "Pou¾ití: groupmod [-g gid [-o]] [-n jméno] skupina\n"
@@ -1050,28 +1089,33 @@ msgid "unknown user %s\n"
 msgstr "u¾ivatel %s je neznámý\n"
 
 #: src/grpck.c:98
-#, c-format
-msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
 msgstr ""
-"Pou¾ití: %s [ -r ] [ soubor se skupinami [ soubor se stínovými skupinami ] "
-"]\n"
+"Pou¾ití: %s [ -r ] [ soubor se skupinami [ soubor se stínovými "
+"skupinami ] ]\n"
 
 #: src/grpck.c:100
-#, c-format
-msgid "Usage: %s [ -r ] [ group ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group ]\n"
 msgstr "Usage: %s [ -r ] [ soubor se skupinami ]\n"
 
 #: src/grpck.c:119 src/pwck.c:119
 msgid "No"
 msgstr "Ne"
 
-#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
 #, c-format
 msgid "%s: cannot lock file %s\n"
 msgstr "%s: soubor %s nelze zamknout\n"
 
-#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241
-#: src/pwck.c:250
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
 #, c-format
 msgid "%s: cannot open file %s\n"
 msgstr "%s: soubor %s nelze otevøít\n"
@@ -1080,13 +1124,13 @@ msgstr "%s: soubor %s nelze otev
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:298
+#: src/grpck.c:317
 msgid "invalid group file entry\n"
 msgstr "chybná polo¾ka v souboru se skupinami\n"
 
-#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517
-#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517
-#: src/pwck.c:541
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
 #, c-format
 msgid "delete line `%s'? "
 msgstr "smazat øádek `%s'?"
@@ -1095,26 +1139,26 @@ msgstr "smazat 
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:361
+#: src/grpck.c:380
 msgid "duplicate group entry\n"
 msgstr "tato polo¾ka se v souboru se skupinami vyskytuje vícekrát\n"
 
-#: src/grpck.c:378
+#: src/grpck.c:397
 #, c-format
 msgid "invalid group name `%s'\n"
 msgstr "jméno skupiny `%s' je chybné\n"
 
-#: src/grpck.c:388
+#: src/grpck.c:407
 #, c-format
 msgid "group %s: bad GID (%d)\n"
 msgstr "skupina %s: chybné GID (%d)\n"
 
-#: src/grpck.c:414
+#: src/grpck.c:433
 #, c-format
 msgid "group %s: no user %s\n"
 msgstr "skupina %s: u¾ivatel %s neexistuje\n"
 
-#: src/grpck.c:416 src/grpck.c:585
+#: src/grpck.c:435 src/grpck.c:604
 #, c-format
 msgid "delete member `%s'? "
 msgstr "smazat èlena `%s'? "
@@ -1123,7 +1167,7 @@ msgstr "smazat 
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:453
+#: src/grpck.c:472
 msgid "invalid shadow group file entry\n"
 msgstr "chybná polo¾ka v souboru se stínovými skupinami\n"
 
@@ -1131,45 +1175,45 @@ msgstr "chybn
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:516
+#: src/grpck.c:535
 msgid "duplicate shadow group entry\n"
 msgstr "duplikovaná polo¾ka v souboru se stínovými skupinami\n"
 
-#: src/grpck.c:533
+#: src/grpck.c:552
 msgid "no matching group file entry\n"
 msgstr "v souboru se skupinami neexistuje odpovídající polo¾ka\n"
 
-#: src/grpck.c:553
+#: src/grpck.c:572
 #, c-format
 msgid "shadow group %s: no administrative user %s\n"
 msgstr "stínová skupina %s: administrátor %s neexistuje\n"
 
-#: src/grpck.c:555
+#: src/grpck.c:574
 #, c-format
 msgid "delete administrative member `%s'? "
 msgstr "smazat administrátora `%s'? "
 
-#: src/grpck.c:583
+#: src/grpck.c:602
 #, c-format
 msgid "shadow group %s: no user %s\n"
 msgstr "stínová skupina %s: u¾ivatel %s neexistuje\n"
 
-#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
 #, c-format
 msgid "%s: cannot update file %s\n"
 msgstr "%s: soubor %s nelze aktualizovat\n"
 
-#: src/grpck.c:640 src/pwck.c:606
+#: src/grpck.c:660 src/pwck.c:626
 #, c-format
 msgid "%s: the files have been updated; run mkpasswd\n"
 msgstr "%s: soubory byly aktualizovány; spus»te mkpasswd\n"
 
-#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
 #, c-format
 msgid "%s: no changes\n"
 msgstr "%s: ¾ádné zmìny nebyly provedeny\n"
 
-#: src/grpck.c:644 src/pwck.c:610
+#: src/grpck.c:664 src/pwck.c:630
 #, c-format
 msgid "%s: the files have been updated\n"
 msgstr "%s: soubory byly aktualizovány\n"
@@ -1240,42 +1284,42 @@ msgstr "Pou
 msgid "usage: id\n"
 msgstr "Pou¾ití: id\n"
 
-#: src/id.c:118
+#: src/id.c:127
 #, c-format
 msgid "uid=%d(%s)"
 msgstr "uid=%d(%s)"
 
-#: src/id.c:120
+#: src/id.c:129
 #, c-format
 msgid "uid=%d"
 msgstr "uid=%d"
 
-#: src/id.c:124
+#: src/id.c:133
 #, c-format
 msgid " gid=%d(%s)"
 msgstr " gid=%d(%s)"
 
-#: src/id.c:126
+#: src/id.c:135
 #, c-format
 msgid " gid=%d"
 msgstr " gid=%d"
 
-#: src/id.c:136
+#: src/id.c:145
 #, c-format
 msgid " euid=%d(%s)"
 msgstr " euid=%d(%s)"
 
-#: src/id.c:138
+#: src/id.c:147
 #, c-format
 msgid " euid=%d"
 msgstr " euid=%d"
 
-#: src/id.c:143
+#: src/id.c:152
 #, c-format
 msgid " egid=%d(%s)"
 msgstr " egid=%d(%s)"
 
-#: src/id.c:145
+#: src/id.c:154
 #, c-format
 msgid " egid=%d"
 msgstr " egid=%d"
@@ -1288,42 +1332,47 @@ msgstr " egid=%d"
 #. * where "###" is a numerical value and "aaa" is the
 #. * corresponding name for each respective numerical value.
 #.
-#: src/id.c:166
+#: src/id.c:175
 msgid " groups="
 msgstr " skupiny="
 
-#: src/lastlog.c:167
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
 msgid "Username         Port     From             Latest\n"
 msgstr "U¾ivatel         Port     Z                Naposledy\n"
 
-#: src/lastlog.c:169
+#: src/lastlog.c:186
 msgid "Username                Port     Latest\n"
 msgstr "U¾ivatel                Port     Naposledy\n"
 
-#: src/lastlog.c:183
+#: src/lastlog.c:200
 msgid "**Never logged in**"
 msgstr "**Nikdy nebyl pøihlá¹en**"
 
-#: src/login.c:198
+#: src/login.c:201
 #, c-format
 msgid "usage: %s [-p] [name]\n"
 msgstr "Pou¾ití: %s [-p] jméno\n"
 
-#: src/login.c:201
+#: src/login.c:204
 #, c-format
 msgid "       %s [-p] [-h host] [-f name]\n"
 msgstr "       %s [-p] [-h poèítaè] [-f jméno]\n"
 
-#: src/login.c:203
+#: src/login.c:206
 #, c-format
 msgid "       %s [-p] -r host\n"
 msgstr "       %s [-p] -r poèítaè\n"
 
-#: src/login.c:286
+#: src/login.c:289
 msgid "Invalid login time\n"
 msgstr "Chybný èas pøihlá¹ení\n"
 
-#: src/login.c:341
+#: src/login.c:344
 msgid ""
 "\n"
 "System closed for routine maintenance\n"
@@ -1331,7 +1380,7 @@ msgstr ""
 "\n"
 "Systém byl uzavøen kvùli pravidelné údr¾bì.\n"
 
-#: src/login.c:351
+#: src/login.c:354
 msgid ""
 "\n"
 "[Disconnect bypassed -- root login allowed.]\n"
@@ -1339,7 +1388,7 @@ msgstr ""
 "\n"
 "[Odpojení pøeskoèeno -- u¾ivatel root smí být pøihlá¹en.]\n"
 
-#: src/login.c:390
+#: src/login.c:393
 #, c-format
 msgid ""
 "\n"
@@ -1348,17 +1397,17 @@ msgstr ""
 "\n"
 "Vypr¹el èasový limit (%d vteøin) pro pøihlá¹ení.\n"
 
-#: src/login.c:692
+#: src/login.c:695
 #, c-format
 msgid " on `%.100s' from `%.200s'"
 msgstr " na `%.100s' z `%.200s'"
 
-#: src/login.c:694
+#: src/login.c:697
 #, c-format
 msgid " on `%.100s'"
 msgstr " na `%.100s'"
 
-#: src/login.c:834
+#: src/login.c:837
 #, c-format
 msgid ""
 "\n"
@@ -1367,34 +1416,34 @@ msgstr ""
 "\n"
 "Pøihla¹ovací jméno na %s: "
 
-#: src/login.c:836
+#: src/login.c:839
 msgid "login: "
 msgstr "Pøihla¹ovací jméno: "
 
-#: src/login.c:1026 src/sulogin.c:231
+#: src/login.c:1029 src/sulogin.c:231
 msgid "Login incorrect"
 msgstr "Chybné pøihlá¹ení"
 
-#: src/login.c:1213
+#: src/login.c:1217
 msgid "Warning: login re-enabled after temporary lockout.\n"
 msgstr "Varování: po doèasném zákazu je pøihla¹ování opìt povoleno\n"
 
-#: src/login.c:1223
+#: src/login.c:1227
 #, c-format
 msgid "Last login: %s on %s"
 msgstr "Poslední pøihlá¹ení: %s na %s"
 
-#: src/login.c:1226
+#: src/login.c:1230
 #, c-format
 msgid "Last login: %.19s on %s"
 msgstr "Poslední pøihlá¹ení: %.19s na %s"
 
-#: src/login.c:1231
+#: src/login.c:1235
 #, c-format
 msgid " from %.*s"
 msgstr " z %.*s"
 
-#: src/login.c:1303
+#: src/login.c:1307
 msgid "Starting rad_login\n"
 msgstr "Spou¹tím rad_login\n"
 
@@ -1403,6 +1452,21 @@ msgstr "Spou
 msgid "%s: no DBM database on system - no action performed\n"
 msgstr "%s: systém neobsahuje ¾ádnou DBM databázi - není co dìlat\n"
 
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr "Pou¾ití: %s [ -vf ] [ -p|g|sp|sg ] soubor\n"
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr "Pou¾ití: %s [ -vf ] [ -p|g|sp ] soubor\n"
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr "Pou¾ití: %s [ -vf ] [ -p|g ] soubor\n"
+
 #: src/mkpasswd.c:245 src/mkpasswd.c:249
 #, c-format
 msgid "%s: cannot overwrite file %s\n"
@@ -1418,6 +1482,11 @@ msgstr "%s: soubory s DBM datab
 msgid "%s: the beginning with "
 msgstr "%s: zaèátek s "
 
+#: src/mkpasswd.c:296
+#, fuzzy
+msgid " is too long\n"
+msgstr "%s: polo¾ka je pøíli¹ dlouhá\n"
+
 #: src/mkpasswd.c:321
 #, c-format
 msgid "%s: error parsing line \"%s\"\n"
@@ -1427,6 +1496,11 @@ msgstr "%s: chyba p
 msgid "adding record for name "
 msgstr "pøidávám záznam pro jméno"
 
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
 #: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
 #, c-format
 msgid "%s: error adding record for "
@@ -1437,21 +1511,6 @@ msgstr "%s: chyba p
 msgid "added %d entries, longest was %d\n"
 msgstr "poèet pøidaných polo¾ek: %d; délka nejvìt¹í: %d\n"
 
-#: src/mkpasswd.c:382
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
-msgstr "Pou¾ití: %s [ -vf ] [ -p|g|sp|sg ] soubor\n"
-
-#: src/mkpasswd.c:384
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
-msgstr "Pou¾ití: %s [ -vf ] [ -p|g|sp ] soubor\n"
-
-#: src/mkpasswd.c:387
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
-msgstr "Pou¾ití: %s [ -vf ] [ -p|g ] soubor\n"
-
 #: src/newgrp.c:66
 msgid "usage: newgrp [ - ] [ group ]\n"
 msgstr "Pou¾ití: newgrp [ - ] [ skupina ]\n"
@@ -1681,20 +1740,20 @@ msgid "Password changed.\n"
 msgstr "Heslo bylo zmìnìno.\n"
 
 #: src/pwck.c:98
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
 msgstr "Pou¾ití: %s [ -qr ] [ soubor s hesly[ soubor se stínovými hesly ] ]\n"
 
 #: src/pwck.c:100
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
 msgstr "Pou¾ití: %s [ -qr ] [ soubor s hesly ]\n"
 
 #.
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:285
+#: src/pwck.c:304
 msgid "invalid password file entry\n"
 msgstr "chybná polo¾ka v souboru s hesly\n"
 
@@ -1702,16 +1761,16 @@ msgstr "chybn
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:347
+#: src/pwck.c:366
 msgid "duplicate password entry\n"
 msgstr "duplikovaná polo¾ka v souboru s hesly\n"
 
-#: src/pwck.c:363
+#: src/pwck.c:382
 #, c-format
 msgid "invalid user name `%s'\n"
 msgstr "chybné u¾ivatelské jméno `%s'\n"
 
-#: src/pwck.c:373
+#: src/pwck.c:392
 #, c-format
 msgid "user %s: bad UID (%d)\n"
 msgstr "u¾ivatel %s: chybné UID (%d)\n"
@@ -1719,7 +1778,7 @@ msgstr "u
 #.
 #. * No primary group, just give a warning
 #.
-#: src/pwck.c:388
+#: src/pwck.c:407
 #, c-format
 msgid "user %s: no group %d\n"
 msgstr "u¾ivatel %s: skupina %d neexistuje\n"
@@ -1727,7 +1786,7 @@ msgstr "u
 #.
 #. * Home directory doesn't exist, give a warning
 #.
-#: src/pwck.c:403
+#: src/pwck.c:422
 #, c-format
 msgid "user %s: directory %s does not exist\n"
 msgstr "u¾ivatel %s: adresáø %s neexistuje\n"
@@ -1735,7 +1794,7 @@ msgstr "u
 #.
 #. * Login shell doesn't exist, give a warning
 #.
-#: src/pwck.c:418
+#: src/pwck.c:437
 #, c-format
 msgid "user %s: program %s does not exist\n"
 msgstr "u¾ivatel %s: program %s neexistuje\n"
@@ -1744,7 +1803,7 @@ msgstr "u
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:454
+#: src/pwck.c:473
 msgid "invalid shadow password file entry\n"
 msgstr "chybná polo¾ka v souboru se stínovými hesly\n"
 
@@ -1752,7 +1811,7 @@ msgstr "chybn
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:516
+#: src/pwck.c:535
 msgid "duplicate shadow password entry\n"
 msgstr "duplikovaná polo¾ka v souboru se stínovými hesly\n"
 
@@ -1760,21 +1819,21 @@ msgstr "duplikovan
 #. * Tell the user this entry has no matching
 #. * /etc/passwd entry and ask them to delete it.
 #.
-#: src/pwck.c:540
+#: src/pwck.c:559
 msgid "no matching password file entry\n"
 msgstr "chybí polo¾ka v souboru s hesly\n"
 
-#: src/pwck.c:557
+#: src/pwck.c:576
 #, c-format
 msgid "user %s: last password change in the future\n"
 msgstr "u¾ivatel %s: poslední zmìna hesla v budoucnosti\n"
 
-#: src/pwconv.c:94 src/pwunconv.c:108
+#: src/pwconv.c:94 src/pwunconv.c:99
 #, c-format
 msgid "%s: can't lock passwd file\n"
 msgstr "%s: soubor s hesly nelze zamknout\n"
 
-#: src/pwconv.c:99 src/pwunconv.c:113
+#: src/pwconv.c:99 src/pwunconv.c:104
 #, c-format
 msgid "%s: can't open passwd file\n"
 msgstr "%s: soubor s hesly nelze otevøít\n"
@@ -1799,17 +1858,17 @@ msgstr "%s: soubor se st
 msgid "%s: can't update passwd file\n"
 msgstr "%s: soubor s hesly nelze aktualizovat\n"
 
-#: src/pwunconv.c:62
+#: src/pwunconv.c:53
 #, c-format
 msgid "%s: Shadow passwords are not configured.\n"
 msgstr "%s: stínová hesla nejsou nakonfigurována\n"
 
-#: src/pwunconv.c:171
+#: src/pwunconv.c:162
 #, c-format
 msgid "%s: can't update entry for user %s\n"
 msgstr "%s: polo¾ku pro u¾ivatele %s nelze aktualizovat\n"
 
-#: src/pwunconv.c:188
+#: src/pwunconv.c:179
 #, c-format
 msgid "%s: can't delete shadow password file\n"
 msgstr "%s: nemù¾ete smazat soubor se stínovými hesly\n"
@@ -1823,33 +1882,28 @@ msgstr "Lituji."
 msgid "%s: must be run from a terminal\n"
 msgstr "%s: musí být spu¹tìno z terminálu\n"
 
-#: src/su.c:311
+#: src/su.c:310
 #, c-format
 msgid "%s: pam_start: error %d\n"
 msgstr "%s: pam_start: chyba %d\n"
 
-#: src/su.c:337
+#: src/su.c:336
 #, c-format
 msgid "Unknown id: %s\n"
 msgstr "Id %s je neznámé.\n"
 
 #. access denied (-1) or unexpected value
-#: src/su.c:372 src/su.c:387
+#: src/su.c:371 src/su.c:386
 #, c-format
 msgid "You are not authorized to su %s\n"
 msgstr "Nejste oprávnìn pou¾ívat su %s\n"
 
 #. require own password
-#: src/su.c:383
+#: src/su.c:382
 msgid "(Enter your own password.)"
 msgstr "(Zadejte va¹e heslo.)"
 
-#: src/su.c:404
-#, c-format
-msgid "%s: permission denied (shell).\n"
-msgstr "%s: pøístup odmítnut (shell)\n"
-
-#: src/su.c:428
+#: src/su.c:413
 #, c-format
 msgid ""
 "%s: %s\n"
@@ -1858,7 +1912,7 @@ msgstr ""
 "%s: %s\n"
 "(Ignoruji)\n"
 
-#: src/su.c:628
+#: src/su.c:615
 msgid "No shell\n"
 msgstr "®ádný shell\n"
 
@@ -1894,275 +1948,280 @@ msgstr ""
 msgid "Entering System Maintenance Mode\n"
 msgstr "Vstupuji do re¾imu údr¾by systému\n"
 
-#: src/useradd.c:249
+#: src/useradd.c:251
 #, c-format
 msgid "%s: rebuild the group database\n"
 msgstr "%s: vytvoøte znovu databázi skupin\n"
 
-#: src/useradd.c:256
+#: src/useradd.c:258
 #, c-format
 msgid "%s: rebuild the shadow group database\n"
 msgstr "%s: vytvoøte znovu databázi stínových skupin\n"
 
-#: src/useradd.c:293 src/usermod.c:973
+#: src/useradd.c:295 src/usermod.c:974
 #, c-format
 msgid "%s: invalid numeric argument `%s'\n"
 msgstr "%s: chybný numerický argument `%s'\n"
 
-#: src/useradd.c:349
+#: src/useradd.c:351
 #, c-format
 msgid "%s: unknown gid %s\n"
 msgstr "%s: gid %s je neznámé\n"
 
-#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260
-#: src/usermod.c:1104
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
 #, c-format
 msgid "%s: unknown group %s\n"
 msgstr "%s: skupina %s je neznámá\n"
 
-#: src/useradd.c:424
+#: src/useradd.c:426
 #, c-format
 msgid "group=%s,%ld  basedir=%s  skel=%s\n"
 msgstr "skupina=%s,%ld základ. adr.=%s skel=%s\n"
 
-#: src/useradd.c:427
+#: src/useradd.c:429
 #, c-format
 msgid "shell=%s  "
 msgstr "shell=%s  "
 
-#: src/useradd.c:429
+#: src/useradd.c:431
 #, c-format
 msgid "inactive=%ld  expire=%s"
 msgstr "vypnutí=%ld   vypr¹ení=%s"
 
-#: src/useradd.c:433
+#: src/useradd.c:435
 #, c-format
 msgid "GROUP=%ld\n"
 msgstr "SKUPINA=%ld\n"
 
-#: src/useradd.c:434
+#: src/useradd.c:436
 #, c-format
 msgid "HOME=%s\n"
 msgstr "DOMÁCÍ ADRESÁØ=%s\n"
 
-#: src/useradd.c:436
+#: src/useradd.c:438
 #, c-format
 msgid "INACTIVE=%ld\n"
 msgstr "VYPNUTÍ=%ld\n"
 
-#: src/useradd.c:437
+#: src/useradd.c:439
 #, c-format
 msgid "EXPIRE=%s\n"
 msgstr "VYPR©ENÍ=%s\n"
 
-#: src/useradd.c:439
+#: src/useradd.c:441
 #, c-format
 msgid "SHELL=%s\n"
 msgstr "INTERPRET PØÍKAZÙ=%s\n"
 
-#: src/useradd.c:440
+#: src/useradd.c:442
 #, c-format
 msgid "SKEL=%s\n"
 msgstr "SKELETON=%s\n"
 
-#: src/useradd.c:476
+#: src/useradd.c:482
 #, c-format
 msgid "%s: cannot create new defaults file\n"
 msgstr "%s: nemohu vytvoøit nový soubor s implicitními hodnotami\n"
 
-#: src/useradd.c:570 src/useradd.c:581
+#: src/useradd.c:488
+#, fuzzy, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr "%s: nemohu vytvoøit nový soubor s implicitními hodnotami\n"
+
+#: src/useradd.c:582 src/useradd.c:593
 #, c-format
 msgid "%s: rename: %s"
 msgstr "%s: pøejmenovat: %s"
 
-#: src/useradd.c:668 src/usermod.c:280
+#: src/useradd.c:680 src/usermod.c:281
 #, c-format
 msgid "%s: group `%s' is a NIS group.\n"
 msgstr "%s: skupina `%s' je NIS skupinou\n"
 
-#: src/useradd.c:676 src/usermod.c:288
+#: src/useradd.c:688 src/usermod.c:289
 #, c-format
 msgid "%s: too many groups specified (max %d).\n"
 msgstr "%s: zadáno pøíli¹ mnoho skupin (max %d).\n"
 
-#: src/useradd.c:708 src/usermod.c:320
+#: src/useradd.c:720 src/usermod.c:321
 #, c-format
 msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
 msgstr "Pou¾ití: %s\t[-u uid [-o]] [-g skupina [-G skupina,...] \n"
 
-#: src/useradd.c:711
+#: src/useradd.c:723
 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
 msgstr "\t\t[-d domácí adr.] [-s shell] [-c komentáø] [-m [-k ¹ablona]]\n"
 
-#: src/useradd.c:714 src/usermod.c:326
+#: src/useradd.c:726 src/usermod.c:327
 msgid "[-f inactive] [-e expire ] "
 msgstr "[-f vypnutí] [-e vypr¹ení ] "
 
-#: src/useradd.c:717
+#: src/useradd.c:729
 msgid "[-A program] "
 msgstr "[-A program] "
 
-#: src/useradd.c:719
+#: src/useradd.c:731
 msgid "[-p passwd] name\n"
 msgstr "[-p heslo]  jméno\n"
 
-#: src/useradd.c:721
+#: src/useradd.c:733
 #, c-format
 msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
 msgstr "       %s\t-D [-g skupina [-b základní adr.] [-s shell]\n"
 
-#: src/useradd.c:724
+#: src/useradd.c:736
 msgid "\t\t[-f inactive] [-e expire ]\n"
 msgstr "\t\t[-f vypnutí] [-e vypr¹ení ]\n"
 
-#: src/useradd.c:821 src/usermod.c:478
+#: src/useradd.c:833 src/usermod.c:479
 #, c-format
 msgid "%s: error locking group file\n"
 msgstr "%s: chyba pøi zamykání souboru se skupinami\n"
 
-#: src/useradd.c:825 src/usermod.c:483
+#: src/useradd.c:837 src/usermod.c:484
 #, c-format
 msgid "%s: error opening group file\n"
 msgstr "%s: chyba pøi otevírání souboru se skupinami\n"
 
-#: src/useradd.c:830 src/usermod.c:590
+#: src/useradd.c:842 src/usermod.c:591
 #, c-format
 msgid "%s: error locking shadow group file\n"
 msgstr "%s: chyba pøi zamykání souboru se stínovými hesly\n"
 
-#: src/useradd.c:835 src/usermod.c:596
+#: src/useradd.c:847 src/usermod.c:597
 #, c-format
 msgid "%s: error opening shadow group file\n"
 msgstr "%s: chyba pøi otevírání souboru se stínovými hesly\n"
 
-#: src/useradd.c:1007
+#: src/useradd.c:1019
 #, c-format
 msgid "%s: uid %d is not unique\n"
 msgstr "%s: uid %d není jedineèné\n"
 
-#: src/useradd.c:1037
+#: src/useradd.c:1049
 #, c-format
 msgid "%s: can't get unique uid\n"
 msgstr "%s: nemohu získat jedineèné uid\n"
 
-#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063
-#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
 #, c-format
 msgid "%s: invalid field `%s'\n"
 msgstr "%s: chybná polo¾ka `%s'\n"
 
-#: src/useradd.c:1159
+#: src/useradd.c:1171
 #, c-format
 msgid "%s: invalid base directory `%s'\n"
 msgstr "%s: chybný základní adresáø `%s'\n"
 
-#: src/useradd.c:1169
+#: src/useradd.c:1181
 #, c-format
 msgid "%s: invalid comment `%s'\n"
 msgstr "%s: chybný komentáø `%s'\n"
 
-#: src/useradd.c:1179
+#: src/useradd.c:1191
 #, c-format
 msgid "%s: invalid home directory `%s'\n"
 msgstr "%s: chybný domácí adresáø `%s'\n"
 
-#: src/useradd.c:1197 src/usermod.c:1086
+#: src/useradd.c:1209 src/usermod.c:1087
 #, c-format
 msgid "%s: invalid date `%s'\n"
 msgstr "%s: chybné datum `%s'\n"
 
-#: src/useradd.c:1209
+#: src/useradd.c:1221
 #, c-format
 msgid "%s: shadow passwords required for -e\n"
 msgstr "%s: pøepínaè -e vy¾aduje stínová hesla\n"
 
-#: src/useradd.c:1224
+#: src/useradd.c:1236
 #, c-format
 msgid "%s: shadow passwords required for -f\n"
 msgstr "%s: pøepínaè -f vy¾aduje stínová hesla\n"
 
-#: src/useradd.c:1298
+#: src/useradd.c:1310
 #, c-format
 msgid "%s: invalid shell `%s'\n"
 msgstr "%s: chybný shell `%s'\n"
 
-#: src/useradd.c:1339
+#: src/useradd.c:1351
 #, c-format
 msgid "%s: invalid user name `%s'\n"
 msgstr "%s: chybné u¾ivatelské jméno `%s'\n"
 
-#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
 #, c-format
 msgid "%s: cannot rewrite password file\n"
 msgstr "%s: soubor s hesly nelze pøepsat\n"
 
-#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
 #, c-format
 msgid "%s: cannot rewrite shadow password file\n"
 msgstr "%s: soubor se stínovými hesly nelze pøepsat\n"
 
-#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
 #, c-format
 msgid "%s: unable to lock password file\n"
 msgstr "%s: soubor s hesly nelze zamknout\n"
 
-#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
 #, c-format
 msgid "%s: unable to open password file\n"
 msgstr "%s: soubor s hesly nelze otevøít\n"
 
-#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
 #, c-format
 msgid "%s: cannot lock shadow password file\n"
 msgstr "%s: soubor se stínovými hesly nelze zamknout\n"
 
-#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
 #, c-format
 msgid "%s: cannot open shadow password file\n"
 msgstr "%s: soubor se stínovými hesly nelze otevøít\n"
 
-#: src/useradd.c:1535 src/usermod.c:1372
+#: src/useradd.c:1547 src/usermod.c:1373
 #, c-format
 msgid "%s: error adding authentication method\n"
 msgstr "%s: chyba pøi vytváøení ovìøovací metody\n"
 
-#: src/useradd.c:1558
+#: src/useradd.c:1570
 #, c-format
 msgid "%s: error adding new password entry\n"
 msgstr "%s: chyba pøi vytváøení nové polo¾ky v souboru s hesly\n"
 
-#: src/useradd.c:1573
+#: src/useradd.c:1585
 #, c-format
 msgid "%s: error updating password dbm entry\n"
 msgstr "%s: chyba pøi aktualizaci polo¾ky dbm databáze hesel\n"
 
-#: src/useradd.c:1589 src/usermod.c:1431
+#: src/useradd.c:1601 src/usermod.c:1432
 #, c-format
 msgid "%s: error adding new shadow password entry\n"
 msgstr "%s: chyba pøi vytváøení nové polo¾ky v souboru se stínovými hesly\n"
 
-#: src/useradd.c:1605 src/usermod.c:1446
+#: src/useradd.c:1617 src/usermod.c:1447
 #, c-format
 msgid "%s: error updating shadow passwd dbm entry\n"
 msgstr "%s: chyba pøi aktualizaci polo¾ky dbm databáze stínových hesel\n"
 
-#: src/useradd.c:1637
+#: src/useradd.c:1649
 #, c-format
 msgid "%s: cannot create directory %s\n"
 msgstr "%s: adresáø %s nelze vytvoøit\n"
 
-#: src/useradd.c:1758 src/usermod.c:1209
+#: src/useradd.c:1772 src/usermod.c:1210
 #, c-format
 msgid "%s: user %s exists\n"
 msgstr "%s: u¾ivatel %s ji¾ existuje\n"
 
-#: src/useradd.c:1770
+#: src/useradd.c:1784
 #, c-format
 msgid ""
 "%s: group %s exists - if you want to add this user to that group, use -g.\n"
 msgstr ""
 
-#: src/useradd.c:1801
+#: src/useradd.c:1815
 #, c-format
 msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
 msgstr "%s: varování: CREATE_HOME není podporováno, pou¾ijte pøepínaè -m\n"
@@ -2257,12 +2316,12 @@ msgstr "%s: varov
 msgid "%s: warning: can't remove "
 msgstr "%s: varování: nemohu smazat "
 
-#: src/userdel.c:791 src/usermod.c:1000
+#: src/userdel.c:791 src/usermod.c:1001
 #, c-format
 msgid "%s: user %s does not exist\n"
 msgstr "%s: u¾ivatel %s neexistuje\n"
 
-#: src/userdel.c:805 src/usermod.c:1016
+#: src/userdel.c:805 src/usermod.c:1017
 #, c-format
 msgid "%s: user %s is a NIS user\n"
 msgstr "%s: u¾ivatel %s je NIS u¾ivatelem\n"
@@ -2282,114 +2341,114 @@ msgstr "%s: adres
 msgid "%s: error removing directory %s\n"
 msgstr "%s: chyba pøi mazání adresáøe %s\n"
 
-#: src/usermod.c:323
+#: src/usermod.c:324
 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
 msgstr "\t\t[-d domácí adr. [-m]] [-s shell] [-c komentáø] [-l nové jméno]\n"
 
-#: src/usermod.c:329
+#: src/usermod.c:330
 msgid "[-A {DEFAULT|program},... ] "
 msgstr "[-A {DEFAULT|program},... ] "
 
-#: src/usermod.c:331
+#: src/usermod.c:332
 msgid "[-p passwd] [-L|-U] name\n"
 msgstr "[-p heslo] [-L|-U] jméno\n"
 
-#: src/usermod.c:510
+#: src/usermod.c:511
 #, c-format
 msgid "%s: out of memory in update_group\n"
 msgstr "%s nedostatek pamìti v update_group\n"
 
-#: src/usermod.c:633
+#: src/usermod.c:634
 #, c-format
 msgid "%s: out of memory in update_gshadow\n"
 msgstr "%s: nedostatek pamìti v update_gshadow\n"
 
-#: src/usermod.c:1186
+#: src/usermod.c:1187
 #, c-format
 msgid "%s: no flags given\n"
 msgstr "%s: ¾ádné pøepínaèe\n"
 
-#: src/usermod.c:1193
+#: src/usermod.c:1194
 #, c-format
 msgid "%s: shadow passwords required for -e and -f\n"
 msgstr "%s: pøepínaèe -e a -f vy¾adují stínová hesla\n"
 
-#: src/usermod.c:1214
+#: src/usermod.c:1215
 #, c-format
 msgid "%s: uid %ld is not unique\n"
 msgstr "%s uid %ld není jedineèné\n"
 
-#: src/usermod.c:1362
+#: src/usermod.c:1363
 #, c-format
 msgid "%s: error deleting authentication method\n"
 msgstr "%s: chyba pøi odstraòování ovìøovací metody\n"
 
-#: src/usermod.c:1382
+#: src/usermod.c:1383
 #, c-format
 msgid "%s: error changing authentication method\n"
 msgstr "%s: chyba pøi zmìnì ovìøovací metody\n"
 
-#: src/usermod.c:1399
+#: src/usermod.c:1400
 #, c-format
 msgid "%s: error changing password entry\n"
 msgstr "%s: chyba pøi zmìnì polo¾ky v souboru s hesly\n"
 
-#: src/usermod.c:1405
+#: src/usermod.c:1406
 #, c-format
 msgid "%s: error removing password entry\n"
 msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru s hesly\n"
 
-#: src/usermod.c:1413
+#: src/usermod.c:1414
 #, c-format
 msgid "%s: error adding password dbm entry\n"
 msgstr "%s: chyba pøi pøidávání polo¾ky do dbm databáze hesel\n"
 
-#: src/usermod.c:1420
+#: src/usermod.c:1421
 #, c-format
 msgid "%s: error removing passwd dbm entry\n"
 msgstr "%s: chyba pøi odstraòování polo¾ky z dbm databáze hesel\n"
 
-#: src/usermod.c:1437
+#: src/usermod.c:1438
 #, c-format
 msgid "%s: error removing shadow password entry\n"
 msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru se stínovými hesly\n"
 
-#: src/usermod.c:1452
+#: src/usermod.c:1453
 #, c-format
 msgid "%s: error removing shadow passwd dbm entry\n"
 msgstr "%s: chyba pøi odstraòování polo¾ky z dbm databáze stínových hesel\n"
 
-#: src/usermod.c:1483
+#: src/usermod.c:1484
 #, c-format
 msgid "%s: directory %s exists\n"
 msgstr "%s: adresáø %s ji¾ existuje\n"
 
-#: src/usermod.c:1490
+#: src/usermod.c:1491
 #, c-format
 msgid "%s: can't create %s\n"
 msgstr "%s: %s nelze vytvoøit\n"
 
-#: src/usermod.c:1496
+#: src/usermod.c:1497
 #, c-format
 msgid "%s: can't chown %s\n"
 msgstr "%s: volání chown pro %s selhalo\n"
 
-#: src/usermod.c:1512
+#: src/usermod.c:1513
 #, c-format
 msgid "%s: cannot rename directory %s to %s\n"
 msgstr "%s: adresáø %s nelze na %s pøejmenovat\n"
 
 #. better leave it alone
-#: src/usermod.c:1609
+#: src/usermod.c:1610
 #, c-format
 msgid "%s: warning: %s not owned by %s\n"
 msgstr "%s: varování: vlastníkem %s není %s\n"
 
-#: src/usermod.c:1615
+#: src/usermod.c:1616
 msgid "failed to change mailbox owner"
 msgstr "chyba pøi zmìnì vlastníka schránky"
 
-#: src/usermod.c:1622
+#: src/usermod.c:1623
 msgid "failed to rename mailbox"
 msgstr "chyba pøi pøejmenovávání schránky"
 
@@ -2424,3 +2483,6 @@ msgstr ""
 "Pou¾ití:\n"
 "`vipw' edituje /etc/passwd        `vipw -s' edituje /etc/shadow\n"
 "`vigr' edituje /etc/group         `vigr -s' edituje /etc/gshadow\n"
+
+#~ msgid "%s: permission denied (shell).\n"
+#~ msgstr "%s: pøístup odmítnut (shell)\n"
index 15311f731d090492bd04dae476908b1a7ba04376..056a226dbe9985764e27d9cb6ea040dd8002ddbf 100644 (file)
Binary files a/po/el.gmo and b/po/el.gmo differ
index 25407521e1cfb54c07cef9b4eb2a100c976714dc..84747fed7dd15221870298d026a6ee56e1c76db3 100644 (file)
--- a/po/el.po
+++ b/po/el.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: Shadow 980726\n"
-"POT-Creation-Date: 2000-10-16 23:43+0200\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: Nikos Mavroyanopoulos <nmav@i-net.paiko.gr>\n"
 "Language-Team: Hellenic <el@li.org>\n"
@@ -56,7 +56,7 @@ msgstr "
 msgid "Your password will expire today.\n"
 msgstr "Ôï óõíèçìáôéêü óáò èá ëÞîåé óÞìåñá.\n"
 
-#: libmisc/chowntty.c:110
+#: libmisc/chowntty.c:113
 #, c-format
 msgid "Unable to change tty %s"
 msgstr "Áäõíáìßá áëëáãÞò tty %s"
@@ -345,9 +345,9 @@ msgstr "
 msgid "Account Expires:\t"
 msgstr "Ôï óõíèçìáôéêü ëÞãåé:\t"
 
-#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322
-#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738
-#: src/usermod.c:1684
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
 #, fuzzy, c-format
 msgid "%s: PAM authentication failed\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç ìåèüäïõ åîáêñßâùóçò\n"
@@ -357,17 +357,17 @@ msgstr "%s: 
 msgid "%s: do not include \"l\" with other flags\n"
 msgstr "%s: Íá ìçí óõìðåñéëáìâÜíåôå ôï \"l\" ìå ôéò Üëëåò åíäåßîåéò\n"
 
-#: src/chage.c:548 src/chage.c:660 src/login.c:529
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
 #, c-format
 msgid "%s: permission denied\n"
 msgstr "%s: Üäåéá áðïññßöèçêå\n"
 
-#: src/chage.c:560 src/chpasswd.c:170
+#: src/chage.c:560 src/chpasswd.c:157
 #, c-format
 msgid "%s: can't lock password file\n"
 msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/chage.c:566 src/chpasswd.c:174
+#: src/chage.c:566 src/chpasswd.c:161
 #, c-format
 msgid "%s: can't open password file\n"
 msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
@@ -397,12 +397,12 @@ msgstr "
 msgid "%s: error changing fields\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí áëëáãÞ ðåäßùí\n"
 
-#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
 #, c-format
 msgid "%s: can't update password file\n"
 msgstr "%s: áäõíáìßá áíáíÝùóçò áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/chage.c:740 src/pwunconv.c:178
+#: src/chage.c:740 src/pwunconv.c:169
 #, c-format
 msgid "%s: can't update shadow password file\n"
 msgstr "%s: áäõíáìßá áíáíÝùóçò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n"
@@ -423,9 +423,9 @@ msgstr "%s: 
 msgid "%s: can't rewrite password file\n"
 msgstr "%s: áäõíáìßá åðáíåããñáöÞò áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409
-#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903
-#: src/usermod.c:1762
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
 #, fuzzy, c-format
 msgid "%s: PAM chauthtok failed\n"
 msgstr "%s: áäõíáìßá îåêëåéäþìáôïò áñ÷åßïõ\n"
@@ -569,7 +569,7 @@ msgstr "
 msgid "Cannot open the password file.\n"
 msgstr "Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí.\n"
 
-#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
 #, c-format
 msgid "%s: %s not found in /etc/passwd\n"
 msgstr "%s: Ï %s äåí âñÝèçêå óôï /etc/passwd\n"
@@ -587,54 +587,54 @@ msgstr "
 msgid "Cannot unlock the password file.\n"
 msgstr "Áäõíáìßá îåêëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/chpasswd.c:82
+#: src/chpasswd.c:69
 #, c-format
 msgid "usage: %s [-e]\n"
 msgstr "÷ñÞóç: %s [-e]\n"
 
-#: src/chpasswd.c:182 src/pwconv.c:104
+#: src/chpasswd.c:169 src/pwconv.c:104
 #, c-format
 msgid "%s: can't lock shadow file\n"
 msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118
-#: src/pwunconv.c:123
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
 #, c-format
 msgid "%s: can't open shadow file\n"
 msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/chpasswd.c:209 src/newusers.c:465
+#: src/chpasswd.c:196 src/newusers.c:465
 #, c-format
 msgid "%s: line %d: line too long\n"
 msgstr "%s: ãñáììÞ %d: ðïëý ìåãÜëç ãñáììÞ\n"
 
-#: src/chpasswd.c:229
+#: src/chpasswd.c:216
 #, c-format
 msgid "%s: line %d: missing new password\n"
 msgstr "%s: ãñáììÞ %d: Ýëëåéøç íÝïõ óõíèçìáôéêïý\n"
 
-#: src/chpasswd.c:245
+#: src/chpasswd.c:232
 #, c-format
 msgid "%s: line %d: unknown user %s\n"
 msgstr "%s: ãñáììÞ %d: Üãíùóôïò ÷ñÞóôçò %s\n"
 
-#: src/chpasswd.c:297
+#: src/chpasswd.c:284
 #, c-format
 msgid "%s: line %d: cannot update password entry\n"
 msgstr "%s: ãñáììÞ %d: áäõíáìßá áíáíÝùóçò êáôá÷þñçóçò óõíèçìáôéêïý\n"
 
-#: src/chpasswd.c:313 src/newusers.c:585
+#: src/chpasswd.c:300 src/newusers.c:585
 #, c-format
 msgid "%s: error detected, changes ignored\n"
 msgstr "%s: Áíé÷íÝõôçêå óöÜëìá, ïé áëëáãÝò áãíïÞèçêáí\n"
 
-#: src/chpasswd.c:324
+#: src/chpasswd.c:311
 #, c-format
 msgid "%s: error updating shadow file\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/chpasswd.c:332
+#: src/chpasswd.c:319
 #, c-format
 msgid "%s: error updating password file\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï áñ÷åßï óõíèçìáôéêþí\n"
@@ -722,7 +722,7 @@ msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
 msgstr ""
 "÷ñÞóç: %s [-a|-u ÷ñÞóôçò] [-m ìåã] [-r] [-t ìÝñåò] [-l äåõôåñüëåðôá_êëåéä]\n"
 
-#: src/faillog.c:134 src/lastlog.c:94
+#: src/faillog.c:134 src/lastlog.c:103
 #, c-format
 msgid "Unknown User: %s\n"
 msgstr "Áãíùóôïò ÷ñÞóôçò: %s\n"
@@ -899,18 +899,18 @@ msgid "usage: groupadd [-g gid [-o]] group\n"
 msgstr "÷ñÞóç: groupadd [-g gid [-o]] ïìÜäá\n"
 
 #: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
-#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
 #, c-format
 msgid "%s: error adding new group entry\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n"
 
-#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948
-#: src/usermod.c:557 src/usermod.c:693
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
 #, c-format
 msgid "%s: cannot add new dbm group entry\n"
 msgstr "%s: áäõíáìßá ðñïóèÞêçò íÝáò dbm êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n"
 
-#: src/groupadd.c:264 src/useradd.c:1002
+#: src/groupadd.c:264 src/useradd.c:1014
 #, c-format
 msgid "%s: name %s is not unique\n"
 msgstr "%s: Ôï üíïìá %s äåí åßíáé ìïíáäéêü\n"
@@ -938,19 +938,19 @@ msgstr "%s: 
 msgid "%s: invalid group %s\n"
 msgstr "%s: Ìç Ýãêõñç ïìÜäá `%s'\n"
 
-#: src/groupadd.c:373 src/useradd.c:1278
+#: src/groupadd.c:373 src/useradd.c:1290
 #, c-format
 msgid "%s: -O requires NAME=VALUE\n"
 msgstr "%s: -O áðáéôåß ¼ÍÏÌÁ=ÔÉÌÇ\n"
 
-#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387
-#: src/userdel.c:309 src/usermod.c:569
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
 #, c-format
 msgid "%s: cannot rewrite group file\n"
 msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ ïìÜäùí\n"
 
-#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395
-#: src/userdel.c:315 src/usermod.c:706
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
 #, c-format
 msgid "%s: cannot rewrite shadow group file\n"
 msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n"
@@ -1025,11 +1025,50 @@ msgstr "%s: 
 msgid "%s: group %s is a NIS group\n"
 msgstr "%s: Ç ïìÜäá %s åßíáé NIS ïìÜäá\n"
 
-#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
 #, c-format
 msgid "%s: %s is the NIS master\n"
 msgstr "%s: Ï %s åßíáé ï êýñéïò äéáêïìéóôÞò NIS\n"
 
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+#, fuzzy
+msgid "Unable to lock group file\n"
+msgstr "%s: Áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ ïìÜäùí\n"
+
+#: src/groupmems.c:209
+#, fuzzy
+msgid "Unable to open group file\n"
+msgstr "%s: Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ ïìÜäùí\n"
+
+#: src/groupmems.c:229
+#, fuzzy
+msgid "Cannot close group file\n"
+msgstr "%s: áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïìÜäùí\n"
+
 #: src/groupmod.c:111
 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
 msgstr "÷ñÞóç: groupmod [-g gid [-o]] [-n üíïìá] ïìÜäá\n"
@@ -1062,26 +1101,31 @@ msgid "unknown user %s\n"
 msgstr "Üãíùóôïò ÷ñÞóôçò: %s\n"
 
 #: src/grpck.c:98
-#, c-format
-msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
 msgstr "×ñÞóç: %s [ -r ] [ group [ gshadow ] ]\n"
 
 #: src/grpck.c:100
-#, c-format
-msgid "Usage: %s [ -r ] [ group ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group ]\n"
 msgstr "×ñÞóç: %s [ -r ] [ group ]\n"
 
 #: src/grpck.c:119 src/pwck.c:119
 msgid "No"
 msgstr "Ï÷é"
 
-#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
 #, c-format
 msgid "%s: cannot lock file %s\n"
 msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ %s\n"
 
-#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241
-#: src/pwck.c:250
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
 #, c-format
 msgid "%s: cannot open file %s\n"
 msgstr "%s: áäõíáìßá áíïßãìáôïò áñ÷åßïõ %s\n"
@@ -1090,13 +1134,13 @@ msgstr "%s: 
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:298
+#: src/grpck.c:317
 msgid "invalid group file entry\n"
 msgstr "Ìç Ýãêõñç êáôá÷þñçóç óôï áñ÷åßï ïìÜäùí\n"
 
-#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517
-#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517
-#: src/pwck.c:541
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
 #, c-format
 msgid "delete line `%s'? "
 msgstr "äéáãñáöÞ ãñáììÞò `%s'; "
@@ -1105,26 +1149,26 @@ msgstr "
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:361
+#: src/grpck.c:380
 msgid "duplicate group entry\n"
 msgstr "áíôéãñáöÞ êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n"
 
-#: src/grpck.c:378
+#: src/grpck.c:397
 #, c-format
 msgid "invalid group name `%s'\n"
 msgstr "Ìç Ýãêõñï üíïìá ïìÜäáò `%s'\n"
 
-#: src/grpck.c:388
+#: src/grpck.c:407
 #, c-format
 msgid "group %s: bad GID (%d)\n"
 msgstr "ïìÜäá %s: ëÜèïò GID (%d)\n"
 
-#: src/grpck.c:414
+#: src/grpck.c:433
 #, c-format
 msgid "group %s: no user %s\n"
 msgstr "ïìÜäá %s: äåí õðÜñ÷åé ÷ñÞóôçò %s\n"
 
-#: src/grpck.c:416 src/grpck.c:585
+#: src/grpck.c:435 src/grpck.c:604
 #, c-format
 msgid "delete member `%s'? "
 msgstr "äéáãñáöÞ ìÝëïõò `%s'; "
@@ -1133,7 +1177,7 @@ msgstr "
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:453
+#: src/grpck.c:472
 msgid "invalid shadow group file entry\n"
 msgstr "Ìç Ýãêõñç êáôá÷þñçóç óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí ïìÜäùí\n"
 
@@ -1141,45 +1185,45 @@ msgstr "
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:516
+#: src/grpck.c:535
 msgid "duplicate shadow group entry\n"
 msgstr "áíôéãñáöÞ êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí ïìÜäùí\n"
 
-#: src/grpck.c:533
+#: src/grpck.c:552
 msgid "no matching group file entry\n"
 msgstr "Äåí âñÝèçêå êáôá÷þñçóç óôï áñ÷åßï ïìÜäùí ðïõ íá ôáéñéÜæåé\n"
 
-#: src/grpck.c:553
+#: src/grpck.c:572
 #, c-format
 msgid "shadow group %s: no administrative user %s\n"
 msgstr "óêéþäçò ïìÜäá %s: Äåí õðÜñ÷åé äéá÷åéñéóôÞò ÷ñÞóôçò %s\n"
 
-#: src/grpck.c:555
+#: src/grpck.c:574
 #, c-format
 msgid "delete administrative member `%s'? "
 msgstr "äéáãñáöÞ äéá÷åéñéóôéêïý ìÝëïõò `%s'; "
 
-#: src/grpck.c:583
+#: src/grpck.c:602
 #, c-format
 msgid "shadow group %s: no user %s\n"
 msgstr "óêéþäçò ïìÜäá %s: äåí õðÜñ÷åé ÷ñÞóôçò %s\n"
 
-#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
 #, c-format
 msgid "%s: cannot update file %s\n"
 msgstr "%s: áäõíáìßá áíáíÝùóçò áñ÷åßïõ %s\n"
 
-#: src/grpck.c:640 src/pwck.c:606
+#: src/grpck.c:660 src/pwck.c:626
 #, c-format
 msgid "%s: the files have been updated; run mkpasswd\n"
 msgstr "%s: ôá áñ÷åßá áíáíåþèçêáí. ÅêôåëÝóôå mkpasswd\n"
 
-#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
 #, c-format
 msgid "%s: no changes\n"
 msgstr "%s: êáìéÜ áëëáãÞ\n"
 
-#: src/grpck.c:644 src/pwck.c:610
+#: src/grpck.c:664 src/pwck.c:630
 #, c-format
 msgid "%s: the files have been updated\n"
 msgstr "%s: ôá áñ÷åßá áíáíåþèçêáí\n"
@@ -1218,8 +1262,8 @@ msgstr ""
 #, c-format
 msgid "%s: can't update shadow entry for %s\n"
 msgstr ""
-"%s: áäõíáìßá áíáíÝùóçò êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí ãéá ôïí "
-"%s\n"
+"%s: áäõíáìßá áíáíÝùóçò êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí ãéá ôïí %"
+"s\n"
 
 #: src/grpconv.c:143 src/grpunconv.c:94
 #, c-format
@@ -1255,42 +1299,42 @@ msgstr "
 msgid "usage: id\n"
 msgstr "÷ñÞóç: id\n"
 
-#: src/id.c:118
+#: src/id.c:127
 #, c-format
 msgid "uid=%d(%s)"
 msgstr ""
 
-#: src/id.c:120
+#: src/id.c:129
 #, c-format
 msgid "uid=%d"
 msgstr ""
 
-#: src/id.c:124
+#: src/id.c:133
 #, c-format
 msgid " gid=%d(%s)"
 msgstr ""
 
-#: src/id.c:126
+#: src/id.c:135
 #, c-format
 msgid " gid=%d"
 msgstr ""
 
-#: src/id.c:136
+#: src/id.c:145
 #, c-format
 msgid " euid=%d(%s)"
 msgstr ""
 
-#: src/id.c:138
+#: src/id.c:147
 #, c-format
 msgid " euid=%d"
 msgstr ""
 
-#: src/id.c:143
+#: src/id.c:152
 #, c-format
 msgid " egid=%d(%s)"
 msgstr ""
 
-#: src/id.c:145
+#: src/id.c:154
 #, c-format
 msgid " egid=%d"
 msgstr ""
@@ -1303,42 +1347,47 @@ msgstr ""
 #. * where "###" is a numerical value and "aaa" is the
 #. * corresponding name for each respective numerical value.
 #.
-#: src/id.c:166
+#: src/id.c:175
 msgid " groups="
 msgstr " ïìÜäåò="
 
-#: src/lastlog.c:167
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
 msgid "Username         Port     From             Latest\n"
 msgstr "¼íïìá_×ñÞóôç     Èýñá     Áðü              Ôåëåõôáßá\n"
 
-#: src/lastlog.c:169
+#: src/lastlog.c:186
 msgid "Username                Port     Latest\n"
 msgstr "¼íïìá_×ñÞóôç            Èýñá     Ôåëåõôáßá\n"
 
-#: src/lastlog.c:183
+#: src/lastlog.c:200
 msgid "**Never logged in**"
 msgstr "**ÊáìéÜ åßóïäïò óôï óýóôçìá**"
 
-#: src/login.c:198
+#: src/login.c:201
 #, c-format
 msgid "usage: %s [-p] [name]\n"
 msgstr "÷ñÞóç: %s [-p] [üíïìá]\n"
 
-#: src/login.c:201
+#: src/login.c:204
 #, c-format
 msgid "       %s [-p] [-h host] [-f name]\n"
 msgstr "       %s [-p] [-h óýóôçìá] [-f üíïìá]\n"
 
-#: src/login.c:203
+#: src/login.c:206
 #, c-format
 msgid "       %s [-p] -r host\n"
 msgstr "       %s [-p] -r óýóôçìá\n"
 
-#: src/login.c:286
+#: src/login.c:289
 msgid "Invalid login time\n"
 msgstr "ÅóöáëìÝíç þñá åéóüäïõ\n"
 
-#: src/login.c:341
+#: src/login.c:344
 msgid ""
 "\n"
 "System closed for routine maintenance\n"
@@ -1346,7 +1395,7 @@ msgstr ""
 "\n"
 "Ôï óýóôçìá Ýêëåéóå ãéá óõíôÞñçóç ñïõôßíáò\n"
 
-#: src/login.c:351
+#: src/login.c:354
 msgid ""
 "\n"
 "[Disconnect bypassed -- root login allowed.]\n"
@@ -1354,7 +1403,7 @@ msgstr ""
 "\n"
 "[ÐáñÜêáìøç áðïóýíäåóçò -- Ç åßóïäïò ôïõ root åðåôñÜðç.]\n"
 
-#: src/login.c:390
+#: src/login.c:393
 #, c-format
 msgid ""
 "\n"
@@ -1363,17 +1412,17 @@ msgstr ""
 "\n"
 "Ç äéáäéêáóßá åéóüäïõ ôåñìáôßóôçêå ìåôÜ áðü %d äåõôåñüëåðôá.\n"
 
-#: src/login.c:692
+#: src/login.c:695
 #, c-format
 msgid " on `%.100s' from `%.200s'"
 msgstr " óôï `%.100s' áðü `%.200s'"
 
-#: src/login.c:694
+#: src/login.c:697
 #, c-format
 msgid " on `%.100s'"
 msgstr " óôï `%.100s'"
 
-#: src/login.c:834
+#: src/login.c:837
 #, c-format
 msgid ""
 "\n"
@@ -1382,35 +1431,35 @@ msgstr ""
 "\n"
 "%s login: "
 
-#: src/login.c:836
+#: src/login.c:839
 msgid "login: "
 msgstr "login: "
 
-#: src/login.c:1026 src/sulogin.c:231
+#: src/login.c:1029 src/sulogin.c:231
 msgid "Login incorrect"
 msgstr "Äéáäéêáóßá åéóüäïõ áðÝôõ÷å"
 
-#: src/login.c:1213
+#: src/login.c:1217
 msgid "Warning: login re-enabled after temporary lockout.\n"
 msgstr ""
 "Ðñïåéäïðïßçóç: Ç åßóïäïò åðáíåíåñãïðïéÞèçêå ìåôÜ áðü ðñïóùñéíü áðïêëåéóìü.\n"
 
-#: src/login.c:1223
+#: src/login.c:1227
 #, c-format
 msgid "Last login: %s on %s"
 msgstr "Ôåëåõôáßá åßóïäïò: %s óôï %s"
 
-#: src/login.c:1226
+#: src/login.c:1230
 #, c-format
 msgid "Last login: %.19s on %s"
 msgstr "Ôåëåõôáßá åßóïäïò: %.19s óôï %s"
 
-#: src/login.c:1231
+#: src/login.c:1235
 #, c-format
 msgid " from %.*s"
 msgstr " áðü %.*s"
 
-#: src/login.c:1303
+#: src/login.c:1307
 msgid "Starting rad_login\n"
 msgstr "¸íáñîç rad_login\n"
 
@@ -1421,6 +1470,21 @@ msgstr ""
 "%s: Äåí õðÜñ÷åé DBM âÜóç äåäïìÝíùí óôï óýóôçìá - êáìéÜ åíÝñãåéá äåí "
 "åêôåëåßôáé\n"
 
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr "×ñÞóç: %s [ -vf ] [ -p|g|sp|sg ] áñ÷åßï\n"
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr "×ñÞóç: %s [ -vf ] [ -p|g|sp ] áñ÷åßï\n"
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr "×ñÞóç: %s [ -vf ] [ -p|g ] áñ÷åßï\n"
+
 #: src/mkpasswd.c:245 src/mkpasswd.c:249
 #, c-format
 msgid "%s: cannot overwrite file %s\n"
@@ -1436,6 +1500,11 @@ msgstr "%s: 
 msgid "%s: the beginning with "
 msgstr "%s: ç áñ÷Þ ìå "
 
+#: src/mkpasswd.c:296
+#, fuzzy
+msgid " is too long\n"
+msgstr "%s: Ðïëý ìáêñéÜ ðåäßá\n"
+
 #: src/mkpasswd.c:321
 #, c-format
 msgid "%s: error parsing line \"%s\"\n"
@@ -1445,6 +1514,11 @@ msgstr "%s: 
 msgid "adding record for name "
 msgstr "ðñïóèÞêç êáôá÷þñçóçò ãéá üíïìá "
 
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
 #: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
 #, c-format
 msgid "%s: error adding record for "
@@ -1455,21 +1529,6 @@ msgstr "%s: 
 msgid "added %d entries, longest was %d\n"
 msgstr "ðñïóôÝèçêáí %d êáôá÷ùñÞóåéò, ç ìåãáëýôåñç Þôáí %d\n"
 
-#: src/mkpasswd.c:382
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
-msgstr "×ñÞóç: %s [ -vf ] [ -p|g|sp|sg ] áñ÷åßï\n"
-
-#: src/mkpasswd.c:384
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
-msgstr "×ñÞóç: %s [ -vf ] [ -p|g|sp ] áñ÷åßï\n"
-
-#: src/mkpasswd.c:387
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
-msgstr "×ñÞóç: %s [ -vf ] [ -p|g ] áñ÷åßï\n"
-
 #: src/newgrp.c:66
 msgid "usage: newgrp [ - ] [ group ]\n"
 msgstr "÷ñÞóç: newgrp [ - ] [ ïìÜäá ]\n"
@@ -1704,20 +1763,20 @@ msgid "Password changed.\n"
 msgstr "Ôï óõíèçìáôéêü Üëëáîå.\n"
 
 #: src/pwck.c:98
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
 msgstr "×ñÞóç: %s [ -qr ] [ passwd [ shadow ] ]\n"
 
 #: src/pwck.c:100
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
 msgstr "×ñÞóç: %s [ -qr ] [ passwd ]\n"
 
 #.
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:285
+#: src/pwck.c:304
 msgid "invalid password file entry\n"
 msgstr "Ìç Ýãêõñç êáôá÷þñçóç óôï áñ÷åßï óõíèçìáôéêþí\n"
 
@@ -1725,16 +1784,16 @@ msgstr "
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:347
+#: src/pwck.c:366
 msgid "duplicate password entry\n"
 msgstr "áíôéãñáöÞ êáôá÷þñçóçò óôï áñ÷åßï óõíèçìáôéêþí\n"
 
-#: src/pwck.c:363
+#: src/pwck.c:382
 #, c-format
 msgid "invalid user name `%s'\n"
 msgstr "Ìç Ýãêõñï üíïìá ÷ñÞóôç `%s'\n"
 
-#: src/pwck.c:373
+#: src/pwck.c:392
 #, c-format
 msgid "user %s: bad UID (%d)\n"
 msgstr "÷ñÞóôçò %s: ëáíèáóìÝíï UID (%d)\n"
@@ -1742,7 +1801,7 @@ msgstr "
 #.
 #. * No primary group, just give a warning
 #.
-#: src/pwck.c:388
+#: src/pwck.c:407
 #, c-format
 msgid "user %s: no group %d\n"
 msgstr "÷ñÞóôçò %s: êáìéÜ ïìÜäá %d\n"
@@ -1750,7 +1809,7 @@ msgstr "
 #.
 #. * Home directory doesn't exist, give a warning
 #.
-#: src/pwck.c:403
+#: src/pwck.c:422
 #, c-format
 msgid "user %s: directory %s does not exist\n"
 msgstr "÷ñÞóôçò %s: ï êáôÜëïãïò %s äåí õðÜñ÷åé\n"
@@ -1758,7 +1817,7 @@ msgstr "
 #.
 #. * Login shell doesn't exist, give a warning
 #.
-#: src/pwck.c:418
+#: src/pwck.c:437
 #, c-format
 msgid "user %s: program %s does not exist\n"
 msgstr "÷ñÞóôçò %s: ôï ðñüãñáììá %s äåí õðÜñ÷åé\n"
@@ -1767,7 +1826,7 @@ msgstr "
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:454
+#: src/pwck.c:473
 msgid "invalid shadow password file entry\n"
 msgstr "Ìç Ýãêõñç êáôá÷þñçóç óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n"
 
@@ -1775,7 +1834,7 @@ msgstr "
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:516
+#: src/pwck.c:535
 msgid "duplicate shadow password entry\n"
 msgstr "áíôéãñáöÞ êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n"
 
@@ -1783,21 +1842,21 @@ msgstr "
 #. * Tell the user this entry has no matching
 #. * /etc/passwd entry and ask them to delete it.
 #.
-#: src/pwck.c:540
+#: src/pwck.c:559
 msgid "no matching password file entry\n"
 msgstr "Äåí âñÝèçêå êáôá÷þñçóç óôï áñ÷åßï óõíèçìáôéêþí ðïõ íá ôáéñßáæåé\n"
 
-#: src/pwck.c:557
+#: src/pwck.c:576
 #, c-format
 msgid "user %s: last password change in the future\n"
 msgstr "÷ñÞóôçò %s: ôåëåõôáßá áëëáãÞ óõíèçìáôéêïý óôï ìÝëëïí\n"
 
-#: src/pwconv.c:94 src/pwunconv.c:108
+#: src/pwconv.c:94 src/pwunconv.c:99
 #, c-format
 msgid "%s: can't lock passwd file\n"
 msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/pwconv.c:99 src/pwunconv.c:113
+#: src/pwconv.c:99 src/pwunconv.c:104
 #, c-format
 msgid "%s: can't open passwd file\n"
 msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
@@ -1824,17 +1883,17 @@ msgstr "%s: 
 msgid "%s: can't update passwd file\n"
 msgstr "%s: áäõíáìßá áíáíÝùóçò áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/pwunconv.c:62
+#: src/pwunconv.c:53
 #, c-format
 msgid "%s: Shadow passwords are not configured.\n"
 msgstr "%s: Ôá óêéþäç óõíèçìáôéêÜ äåí Ý÷ïõí äéáìïñöùèåß.\n"
 
-#: src/pwunconv.c:171
+#: src/pwunconv.c:162
 #, c-format
 msgid "%s: can't update entry for user %s\n"
 msgstr "%s: áäõíáìßá áíáíÝùóçò êáôá÷þñçóçò ãéá ôïí ÷ñÞóôç %s\n"
 
-#: src/pwunconv.c:188
+#: src/pwunconv.c:179
 #, c-format
 msgid "%s: can't delete shadow password file\n"
 msgstr "%s: Äåí åßíáé äõíáôüí íá äéáãñáöåß ôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n"
@@ -1848,33 +1907,28 @@ msgstr "
 msgid "%s: must be run from a terminal\n"
 msgstr "%s: ðñÝðåé íá åêôåëåóôåß áðü ôåñìáôéêü\n"
 
-#: src/su.c:311
+#: src/su.c:310
 #, c-format
 msgid "%s: pam_start: error %d\n"
 msgstr "%s: pam_start: óöÜëìá %d\n"
 
-#: src/su.c:337
+#: src/su.c:336
 #, c-format
 msgid "Unknown id: %s\n"
 msgstr "Áãíùóôç ôáõôüôçôá: %s\n"
 
 #. access denied (-1) or unexpected value
-#: src/su.c:372 src/su.c:387
+#: src/su.c:371 src/su.c:386
 #, c-format
 msgid "You are not authorized to su %s\n"
 msgstr "Äåí Ý÷åôå Üäåéá ãéá su %s\n"
 
 #. require own password
-#: src/su.c:383
+#: src/su.c:382
 msgid "(Enter your own password.)"
 msgstr "(ÅéóÜãåôå ôï äéêü óáò óõíèçìáôéêü.)"
 
-#: src/su.c:404
-#, c-format
-msgid "%s: permission denied (shell).\n"
-msgstr "%s: Üäåéá áðïññßöèçêå (öëïéüò)\n"
-
-#: src/su.c:428
+#: src/su.c:413
 #, c-format
 msgid ""
 "%s: %s\n"
@@ -1883,7 +1937,7 @@ msgstr ""
 "%s: %s\n"
 "(ÁãíïÞèçêå)\n"
 
-#: src/su.c:628
+#: src/su.c:615
 msgid "No shell\n"
 msgstr "Äåí õðÜñ÷åé öëïéüò\n"
 
@@ -1919,283 +1973,288 @@ msgstr ""
 msgid "Entering System Maintenance Mode\n"
 msgstr "¸íáñîç ÊáôÜóôáóçò ÓõíôÞñçóçò ÓõóôÞìáôïò\n"
 
-#: src/useradd.c:249
+#: src/useradd.c:251
 #, c-format
 msgid "%s: rebuild the group database\n"
 msgstr "%s: åðáíáêôßóôå ôçí âÜóç äåäïìÝíùí ïìÜäùí\n"
 
-#: src/useradd.c:256
+#: src/useradd.c:258
 #, c-format
 msgid "%s: rebuild the shadow group database\n"
 msgstr "%s: åðáíáêôßóôå ôçí âÜóç äåäïìÝíùí ôùí óêéùäþí óõíèçìáôéêþí ïìÜäùí\n"
 
-#: src/useradd.c:293 src/usermod.c:973
+#: src/useradd.c:295 src/usermod.c:974
 #, c-format
 msgid "%s: invalid numeric argument `%s'\n"
 msgstr "%s: Ìç Ýãêõñç áñéèìçôéêÞ ðáñÜìåôñïò `%s'\n"
 
-#: src/useradd.c:349
+#: src/useradd.c:351
 #, c-format
 msgid "%s: unknown gid %s\n"
 msgstr "%s: Üãíùóôï gid %s\n"
 
-#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260
-#: src/usermod.c:1104
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
 #, c-format
 msgid "%s: unknown group %s\n"
 msgstr "%s: Üãíùóôç ïìÜäá %s\n"
 
-#: src/useradd.c:424
+#: src/useradd.c:426
 #, c-format
 msgid "group=%s,%ld  basedir=%s  skel=%s\n"
 msgstr "ïìÜäá=%s,%ld  âáóéêüò_êáôáë=%s  óêåë=%s\n"
 
-#: src/useradd.c:427
+#: src/useradd.c:429
 #, c-format
 msgid "shell=%s  "
 msgstr "öëïéüò=%s  "
 
-#: src/useradd.c:429
+#: src/useradd.c:431
 #, c-format
 msgid "inactive=%ld  expire=%s"
 msgstr "áíåíåñãü=%ld  ëÞîç=%s"
 
-#: src/useradd.c:433
+#: src/useradd.c:435
 #, c-format
 msgid "GROUP=%ld\n"
 msgstr "ÏÌÁÄÁ=%ld\n"
 
-#: src/useradd.c:434
+#: src/useradd.c:436
 #, c-format
 msgid "HOME=%s\n"
 msgstr "ÌÇÔÑÉÊÏÓ_ÊÁÔÁËÏÃÏÓ=%s\n"
 
-#: src/useradd.c:436
+#: src/useradd.c:438
 #, c-format
 msgid "INACTIVE=%ld\n"
 msgstr "ÁÍÅÍÅÑÃÏÓ=%ld\n"
 
-#: src/useradd.c:437
+#: src/useradd.c:439
 #, c-format
 msgid "EXPIRE=%s\n"
 msgstr "ËÇÎÇ=%s\n"
 
-#: src/useradd.c:439
+#: src/useradd.c:441
 #, c-format
 msgid "SHELL=%s\n"
 msgstr "ÊÅËÕÖÏÓ=%s\n"
 
-#: src/useradd.c:440
+#: src/useradd.c:442
 #, c-format
 msgid "SKEL=%s\n"
 msgstr "ÓÊÅË=%s\n"
 
-#: src/useradd.c:476
+#: src/useradd.c:482
 #, c-format
 msgid "%s: cannot create new defaults file\n"
 msgstr "%s: áäõíáìßá äçìéïõñãßáò íÝïõ áñ÷åßïõ ðñïêáèïñéóìÝíùí ñõèìßóåùí\n"
 
-#: src/useradd.c:570 src/useradd.c:581
+#: src/useradd.c:488
+#, fuzzy, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr "%s: áäõíáìßá äçìéïõñãßáò íÝïõ áñ÷åßïõ ðñïêáèïñéóìÝíùí ñõèìßóåùí\n"
+
+#: src/useradd.c:582 src/useradd.c:593
 #, c-format
 msgid "%s: rename: %s"
 msgstr "%s: ìåôïíïìáóßá: %s"
 
-#: src/useradd.c:668 src/usermod.c:280
+#: src/useradd.c:680 src/usermod.c:281
 #, c-format
 msgid "%s: group `%s' is a NIS group.\n"
 msgstr "%s: Ç ïìÜäá `%s' åßíáé NIS ïìÜäá.\n"
 
-#: src/useradd.c:676 src/usermod.c:288
+#: src/useradd.c:688 src/usermod.c:289
 #, c-format
 msgid "%s: too many groups specified (max %d).\n"
 msgstr "%s: Ðñïóäéïñßóôçêáí õðåñâïëéêÝò ïìÜäåò (ìåã. %d).\n"
 
-#: src/useradd.c:708 src/usermod.c:320
+#: src/useradd.c:720 src/usermod.c:321
 #, c-format
 msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
 msgstr "÷ñÞóç: %s\t[-u uid [-o]] [-g ïìÜäá] [-G ïìÜäá,...] \n"
 
-#: src/useradd.c:711
+#: src/useradd.c:723
 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
 msgstr ""
 "\t\t[-d ìçôñéêüò_êáôÜëïãïò] [-s öëïéüò] [-c ó÷üëéï]\n"
 "\t\t[-m [-k êáíüíáò]]\n"
 
-#: src/useradd.c:714 src/usermod.c:326
+#: src/useradd.c:726 src/usermod.c:327
 msgid "[-f inactive] [-e expire ] "
 msgstr "[-f áíåíåñãü] [-e ëÞîç ] "
 
-#: src/useradd.c:717
+#: src/useradd.c:729
 msgid "[-A program] "
 msgstr "[-A ðñüãñáììá] "
 
-#: src/useradd.c:719
+#: src/useradd.c:731
 msgid "[-p passwd] name\n"
 msgstr "[-p óõíèçìáôéêü] üíïìá\n"
 
-#: src/useradd.c:721
+#: src/useradd.c:733
 #, c-format
 msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
 msgstr "       %s\t-D [-g ïìÜäá] [-b âÜóç] [-s öëïéüò]\n"
 
-#: src/useradd.c:724
+#: src/useradd.c:736
 msgid "\t\t[-f inactive] [-e expire ]\n"
 msgstr "\t\t[-f áíåíåñãü] [-e ëÞîç ]\n"
 
-#: src/useradd.c:821 src/usermod.c:478
+#: src/useradd.c:833 src/usermod.c:479
 #, c-format
 msgid "%s: error locking group file\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôï êëåßäùìá ôïõ áñ÷åßïõ ïìÜäùí\n"
 
-#: src/useradd.c:825 src/usermod.c:483
+#: src/useradd.c:837 src/usermod.c:484
 #, c-format
 msgid "%s: error opening group file\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôï Üíïéãìá ôïõ áñ÷åßïõ ïìÜäùí\n"
 
-#: src/useradd.c:830 src/usermod.c:590
+#: src/useradd.c:842 src/usermod.c:591
 #, c-format
 msgid "%s: error locking shadow group file\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôï êëåßäùìá ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n"
 
-#: src/useradd.c:835 src/usermod.c:596
+#: src/useradd.c:847 src/usermod.c:597
 #, c-format
 msgid "%s: error opening shadow group file\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôï Üíïéãìá ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n"
 
-#: src/useradd.c:1007
+#: src/useradd.c:1019
 #, c-format
 msgid "%s: uid %d is not unique\n"
 msgstr "%s: Ôï uid %d äåí åßíáé ìïíáäéêü\n"
 
-#: src/useradd.c:1037
+#: src/useradd.c:1049
 #, c-format
 msgid "%s: can't get unique uid\n"
 msgstr "%s: áäõíáìßá åõñåóçò ìïíáäéêïý uid\n"
 
-#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063
-#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
 #, c-format
 msgid "%s: invalid field `%s'\n"
 msgstr "%s: Ìç Ýãêõñï ðåäßï `%s'\n"
 
-#: src/useradd.c:1159
+#: src/useradd.c:1171
 #, c-format
 msgid "%s: invalid base directory `%s'\n"
 msgstr "%s: Ìç Ýãêõñïò êáôÜëïãïò âÜóçò `%s'\n"
 
-#: src/useradd.c:1169
+#: src/useradd.c:1181
 #, c-format
 msgid "%s: invalid comment `%s'\n"
 msgstr "%s: Ìç Ýãêõñï ó÷üëéï `%s'\n"
 
-#: src/useradd.c:1179
+#: src/useradd.c:1191
 #, c-format
 msgid "%s: invalid home directory `%s'\n"
 msgstr "%s: Ìç Ýãêõñïò ìçôñéêüò êáôÜëïãïò ÷ñÞóôç `%s'\n"
 
-#: src/useradd.c:1197 src/usermod.c:1086
+#: src/useradd.c:1209 src/usermod.c:1087
 #, c-format
 msgid "%s: invalid date `%s'\n"
 msgstr "%s: Ìç Ýãêõñç çìåñïìçíßá `%s'\n"
 
-#: src/useradd.c:1209
+#: src/useradd.c:1221
 #, c-format
 msgid "%s: shadow passwords required for -e\n"
 msgstr "%s: óêéþäç óõíèçìáôéêÜ áðáéôïýíôáé ãéá ôï -e\n"
 
-#: src/useradd.c:1224
+#: src/useradd.c:1236
 #, c-format
 msgid "%s: shadow passwords required for -f\n"
 msgstr "%s: óêéþäç óõíèçìáôéêÜ áðáéôïýíôáé ãéá -f\n"
 
-#: src/useradd.c:1298
+#: src/useradd.c:1310
 #, c-format
 msgid "%s: invalid shell `%s'\n"
 msgstr "%s: Ìç Ýãêõñïò öëïéüò `%s'\n"
 
-#: src/useradd.c:1339
+#: src/useradd.c:1351
 #, c-format
 msgid "%s: invalid user name `%s'\n"
 msgstr "%s: Ìç Ýãêõñï üíïìá ÷ñÞóôç `%s'\n"
 
-#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
 #, c-format
 msgid "%s: cannot rewrite password file\n"
 msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
 #, c-format
 msgid "%s: cannot rewrite shadow password file\n"
 msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
 #, c-format
 msgid "%s: unable to lock password file\n"
 msgstr "%s: Áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
 #, c-format
 msgid "%s: unable to open password file\n"
 msgstr "%s: Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
 #, c-format
 msgid "%s: cannot lock shadow password file\n"
 msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
 #, c-format
 msgid "%s: cannot open shadow password file\n"
 msgstr "%s: áäõíáìßá áíïßãìáôïò áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1535 src/usermod.c:1372
+#: src/useradd.c:1547 src/usermod.c:1373
 #, c-format
 msgid "%s: error adding authentication method\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç ìåèüäïõ åîáêñßâùóçò\n"
 
-#: src/useradd.c:1558
+#: src/useradd.c:1570
 #, c-format
 msgid "%s: error adding new password entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï áñ÷åßï óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1573
+#: src/useradd.c:1585
 #, c-format
 msgid "%s: error updating password dbm entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï dbm áñ÷åßï óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1589 src/usermod.c:1431
+#: src/useradd.c:1601 src/usermod.c:1432
 #, c-format
 msgid "%s: error adding new shadow password entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí "
 "óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1605 src/usermod.c:1446
+#: src/useradd.c:1617 src/usermod.c:1447
 #, c-format
 msgid "%s: error updating shadow passwd dbm entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï dbm áñ÷åßï óêéùäþí "
 "óõíèçìáôéêþí\n"
 
-#: src/useradd.c:1637
+#: src/useradd.c:1649
 #, c-format
 msgid "%s: cannot create directory %s\n"
 msgstr "%s: áäõíáìßá äçìéïõñãßáò êáôáëüãïõ %s\n"
 
-#: src/useradd.c:1758 src/usermod.c:1209
+#: src/useradd.c:1772 src/usermod.c:1210
 #, c-format
 msgid "%s: user %s exists\n"
 msgstr "%s: Ï ÷ñÞóôçò %s õðÜñ÷åé\n"
 
-#: src/useradd.c:1770
+#: src/useradd.c:1784
 #, c-format
 msgid ""
 "%s: group %s exists - if you want to add this user to that group, use -g.\n"
 msgstr ""
 
-#: src/useradd.c:1801
+#: src/useradd.c:1815
 #, c-format
 msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
 msgstr ""
@@ -2293,12 +2352,12 @@ msgstr "%s: 
 msgid "%s: warning: can't remove "
 msgstr "%s: ðñïåéäïðïßçóç: áäõíáìßá äéáãñáöÞò "
 
-#: src/userdel.c:791 src/usermod.c:1000
+#: src/userdel.c:791 src/usermod.c:1001
 #, c-format
 msgid "%s: user %s does not exist\n"
 msgstr "%s: Ï ÷ñÞóôçò %s äåí õðÜñ÷åé\n"
 
-#: src/userdel.c:805 src/usermod.c:1016
+#: src/userdel.c:805 src/usermod.c:1017
 #, c-format
 msgid "%s: user %s is a NIS user\n"
 msgstr "%s: Ï ÷ñÞóôçò %s åßíáé NIS ÷ñÞóôçò\n"
@@ -2320,122 +2379,122 @@ msgstr ""
 msgid "%s: error removing directory %s\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ ôïõ êáôáëüãïõ %s\n"
 
-#: src/usermod.c:323
+#: src/usermod.c:324
 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
 msgstr ""
 "\t\t[-d ìçôñéêüò_êáôÜëïãïò [-m]] [-s öëïéüò] [-c ó÷üëéï]\n"
 "\t\t[-l íÝï_üíïìá]\n"
 
-#: src/usermod.c:329
+#: src/usermod.c:330
 msgid "[-A {DEFAULT|program},... ] "
 msgstr "[-A {DEFAULT|ðñüãñáììá},... ] "
 
-#: src/usermod.c:331
+#: src/usermod.c:332
 #, fuzzy
 msgid "[-p passwd] [-L|-U] name\n"
 msgstr "[-p óõíèçìáôéêü] üíïìá\n"
 
-#: src/usermod.c:510
+#: src/usermod.c:511
 #, c-format
 msgid "%s: out of memory in update_group\n"
 msgstr "%s: äåí õðÜñ÷åé åëåýèåñç ìíÞìç óôï update_group\n"
 
-#: src/usermod.c:633
+#: src/usermod.c:634
 #, c-format
 msgid "%s: out of memory in update_gshadow\n"
 msgstr "%s:  óôï update_gshadow\n"
 
-#: src/usermod.c:1186
+#: src/usermod.c:1187
 #, c-format
 msgid "%s: no flags given\n"
 msgstr "%s: Äåí äüèçêáí åíäåßîåéò\n"
 
-#: src/usermod.c:1193
+#: src/usermod.c:1194
 #, c-format
 msgid "%s: shadow passwords required for -e and -f\n"
 msgstr "%s: óêéþäç óõíèçìáôéêÜ áðáéôïýíôáé ãéá ôï -e êáé -f\n"
 
-#: src/usermod.c:1214
+#: src/usermod.c:1215
 #, c-format
 msgid "%s: uid %ld is not unique\n"
 msgstr "%s: Ôï uid %ld äåí åßíáé ìïíáäéêü\n"
 
-#: src/usermod.c:1362
+#: src/usermod.c:1363
 #, c-format
 msgid "%s: error deleting authentication method\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ ìåèüäïõ åîáêñßâùóçò\n"
 
-#: src/usermod.c:1382
+#: src/usermod.c:1383
 #, c-format
 msgid "%s: error changing authentication method\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí áëëáãÞ ìåèüäïõ åîáêñßâùóçò\n"
 
-#: src/usermod.c:1399
+#: src/usermod.c:1400
 #, c-format
 msgid "%s: error changing password entry\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí áëëáãÞ êáôá÷þñçóçò óõíèçìáôéêïý\n"
 
-#: src/usermod.c:1405
+#: src/usermod.c:1406
 #, c-format
 msgid "%s: error removing password entry\n"
 msgstr "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï áñ÷åßï óõíèçìáôéêþí\n"
 
-#: src/usermod.c:1413
+#: src/usermod.c:1414
 #, c-format
 msgid "%s: error adding password dbm entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï dbm áñ÷åßï óõíèçìáôéêþí\n"
 
-#: src/usermod.c:1420
+#: src/usermod.c:1421
 #, c-format
 msgid "%s: error removing passwd dbm entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò áðü ôï dbm áñ÷åßï óõíèçìáôéêþí\n"
 
-#: src/usermod.c:1437
+#: src/usermod.c:1438
 #, c-format
 msgid "%s: error removing shadow password entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n"
 
-#: src/usermod.c:1452
+#: src/usermod.c:1453
 #, c-format
 msgid "%s: error removing shadow passwd dbm entry\n"
 msgstr ""
 "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï dbm áñ÷åßï óêéùäþí "
 "óõíèçìáôéêþí\n"
 
-#: src/usermod.c:1483
+#: src/usermod.c:1484
 #, c-format
 msgid "%s: directory %s exists\n"
 msgstr "%s: ï êáôÜëïãïò %s õðÜñ÷åé\n"
 
-#: src/usermod.c:1490
+#: src/usermod.c:1491
 #, c-format
 msgid "%s: can't create %s\n"
 msgstr "%s: áäõíáìßá äçìéïõñãßáò ôïõ %s\n"
 
-#: src/usermod.c:1496
+#: src/usermod.c:1497
 #, c-format
 msgid "%s: can't chown %s\n"
 msgstr "%s: Áäõíáìßá áëëáãÞò éäéïêôÞôç(chown) ôïõ %s\n"
 
-#: src/usermod.c:1512
+#: src/usermod.c:1513
 #, c-format
 msgid "%s: cannot rename directory %s to %s\n"
 msgstr "%s: áäõíáìßá ìåôïíïìáóßáò ôïõ êáôáëüãïõ %s óå %s\n"
 
 #. better leave it alone
-#: src/usermod.c:1609
+#: src/usermod.c:1610
 #, c-format
 msgid "%s: warning: %s not owned by %s\n"
 msgstr "%s: ðñïåéäïðïßçóç: Ôï %s äåí áíÞêåé óôïí %s\n"
 
-#: src/usermod.c:1615
+#: src/usermod.c:1616
 msgid "failed to change mailbox owner"
 msgstr "áðïôõ÷ßá áëëáãÞò ôïõ éäéïêôÞôç ôïõ ãñáììáôïêéâùôßïõ"
 
-#: src/usermod.c:1622
+#: src/usermod.c:1623
 msgid "failed to rename mailbox"
 msgstr "áðïôõ÷ßá ìåôïíïìáóßáò ãñáììáôïêéâùôßïõ"
 
@@ -2472,6 +2531,9 @@ msgstr ""
 "`vipw' óýíôáóåé ôï /etc/passwd        `vipw -s' óõíôÜóóåé ôï /etc/shadow\n"
 "`vigr' óýíôáóåé ôï /etc/group         `vigr -s' óõíôÜóóåé ôï /etc/gshadow\n"
 
+#~ msgid "%s: permission denied (shell).\n"
+#~ msgstr "%s: Üäåéá áðïññßöèçêå (öëïéüò)\n"
+
 #~ msgid "Incorrect password for %s.\n"
 #~ msgstr "ÅóöáëìÝíï óõíèçìáôéêü ãéá ôïí %s.\n"
 
index e618d5b5a03c80554ecaf78f750ea987bcdc20b5..046640d2f25bb6809173b5ab28fd5cde235b011e 100644 (file)
Binary files a/po/fr.gmo and b/po/fr.gmo differ
index 95a055e952e26b9ea43c837d87df1783b0c8d48f..f18188a8c47d354da95487c7dcbc568df2e3b939 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: shadow 19990709\n"
-"POT-Creation-Date: 2000-10-16 23:43+0200\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\n"
 "PO-Revision-Date: 1999-07-09 20:02+0200\n"
 "Last-Translator: Vincent Renardias <vincent@ldsol.com>\n"
 "Language-Team: Vincent Renardias <vincent@ldsol.com>\n"
@@ -56,7 +56,7 @@ msgstr "Votre mot de passe expirera demain.\n"
 msgid "Your password will expire today.\n"
 msgstr "Votre mot de passe expirera aujourd'hui.\n"
 
-#: libmisc/chowntty.c:110
+#: libmisc/chowntty.c:113
 #, c-format
 msgid "Unable to change tty %s"
 msgstr "Impossible de changer le tty %s"
@@ -96,8 +96,8 @@ msgstr "Le mot de passe ne d
 #, c-format
 msgid "Could not set %s's secret key: is the keyserv daemon running?\n"
 msgstr ""
-"Impossible de changer la clé secréte de %s : le daemon keyserv "
-"fonctionne-t-il?\n"
+"Impossible de changer la clé secréte de %s : le daemon keyserv fonctionne-t-"
+"il?\n"
 
 #: libmisc/mail.c:62 libmisc/mail.c:77
 msgid "You have new mail."
@@ -346,9 +346,9 @@ msgstr "Mot de passe d
 msgid "Account Expires:\t"
 msgstr "Expiration du mot de passe :\t"
 
-#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322
-#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738
-#: src/usermod.c:1684
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
 #, fuzzy, c-format
 msgid "%s: PAM authentication failed\n"
 msgstr "%s : erreur lors de l'ajout de la méthode d'authentification\n"
@@ -358,17 +358,17 @@ msgstr "%s : erreur lors de l'ajout de la m
 msgid "%s: do not include \"l\" with other flags\n"
 msgstr "%s : ne pas include \"l\" avec les autres drapeaux\n"
 
-#: src/chage.c:548 src/chage.c:660 src/login.c:529
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
 #, c-format
 msgid "%s: permission denied\n"
 msgstr "%s : permission refusée\n"
 
-#: src/chage.c:560 src/chpasswd.c:170
+#: src/chage.c:560 src/chpasswd.c:157
 #, c-format
 msgid "%s: can't lock password file\n"
 msgstr "%s: impossible de vérouiller de fichier de mots de passe\n"
 
-#: src/chage.c:566 src/chpasswd.c:174
+#: src/chage.c:566 src/chpasswd.c:161
 #, c-format
 msgid "%s: can't open password file\n"
 msgstr "%s: impossible d'ouvrir le fichier de mots de passe\n"
@@ -398,12 +398,12 @@ msgstr "Changement des informations sur l'age pour %s\n"
 msgid "%s: error changing fields\n"
 msgstr "%s : erreur lors du changement des champs\n"
 
-#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
 #, c-format
 msgid "%s: can't update password file\n"
 msgstr "%s : impossible de mettre à jour le fichier passwd\n"
 
-#: src/chage.c:740 src/pwunconv.c:178
+#: src/chage.c:740 src/pwunconv.c:169
 #, c-format
 msgid "%s: can't update shadow password file\n"
 msgstr "%s : impossible de mettre à jour le fichier shadow password\n"
@@ -423,9 +423,9 @@ msgstr "%s : impossible de re-
 msgid "%s: can't rewrite password file\n"
 msgstr "%s : impossible de re-écrire le fichier password\n"
 
-#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409
-#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903
-#: src/usermod.c:1762
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
 #, fuzzy, c-format
 msgid "%s: PAM chauthtok failed\n"
 msgstr "%s : impossible de dévérouiller le fichier\n"
@@ -568,7 +568,7 @@ msgstr ""
 msgid "Cannot open the password file.\n"
 msgstr "Impossible d'ouvrir le fichier de mots de passe.\n"
 
-#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
 #, c-format
 msgid "%s: %s not found in /etc/passwd\n"
 msgstr "%s: %s non trouvé dans /etc/passwd\n"
@@ -586,53 +586,53 @@ msgstr "Impossible de valider le changement de mot de passe.\n"
 msgid "Cannot unlock the password file.\n"
 msgstr "Impossible de dévérouiller le fichier de mots de passe.\n"
 
-#: src/chpasswd.c:82
+#: src/chpasswd.c:69
 #, c-format
 msgid "usage: %s [-e]\n"
 msgstr "usage: %s [-e]\n"
 
-#: src/chpasswd.c:182 src/pwconv.c:104
+#: src/chpasswd.c:169 src/pwconv.c:104
 #, c-format
 msgid "%s: can't lock shadow file\n"
 msgstr "%s: impossible de vérouiller le fichier shadow\n"
 
-#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118
-#: src/pwunconv.c:123
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
 #, c-format
 msgid "%s: can't open shadow file\n"
 msgstr "%s: impossible d'ouvrir le fichier shadow\n"
 
-#: src/chpasswd.c:209 src/newusers.c:465
+#: src/chpasswd.c:196 src/newusers.c:465
 #, c-format
 msgid "%s: line %d: line too long\n"
 msgstr "%s: ligne %d: ligne trop longue\n"
 
-#: src/chpasswd.c:229
+#: src/chpasswd.c:216
 #, c-format
 msgid "%s: line %d: missing new password\n"
 msgstr "%s: ligne %d: nouveau mot de passe manquant\n"
 
-#: src/chpasswd.c:245
+#: src/chpasswd.c:232
 #, c-format
 msgid "%s: line %d: unknown user %s\n"
 msgstr "%s: ligne %d: utilisateur %s inconnu\n"
 
-#: src/chpasswd.c:297
+#: src/chpasswd.c:284
 #, c-format
 msgid "%s: line %d: cannot update password entry\n"
 msgstr "%s: ligne %d: impossible de mettre le mot de passe à jour\n"
 
-#: src/chpasswd.c:313 src/newusers.c:585
+#: src/chpasswd.c:300 src/newusers.c:585
 #, c-format
 msgid "%s: error detected, changes ignored\n"
 msgstr "%s: erreur détectée; changements ignorés\n"
 
-#: src/chpasswd.c:324
+#: src/chpasswd.c:311
 #, c-format
 msgid "%s: error updating shadow file\n"
 msgstr "%s: erreur lors de la mise à jour du fichier shadow\n"
 
-#: src/chpasswd.c:332
+#: src/chpasswd.c:319
 #, c-format
 msgid "%s: error updating password file\n"
 msgstr "%s: erreur lors de la mise à jour du fichier de mots de passe\n"
@@ -718,7 +718,7 @@ msgstr "%s : utilisateur inconnu\n"
 msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
 msgstr "usage: %s [-a|-u utilisateur] [-m max] [-r] [-t jours] [-l sec_ver]\n"
 
-#: src/faillog.c:134 src/lastlog.c:94
+#: src/faillog.c:134 src/lastlog.c:103
 #, c-format
 msgid "Unknown User: %s\n"
 msgstr "Utilisateur %s inconnu\n"
@@ -894,18 +894,18 @@ msgid "usage: groupadd [-g gid [-o]] group\n"
 msgstr "usage: groupadd [-g gid [-o]] groupe\n"
 
 #: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
-#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
 #, c-format
 msgid "%s: error adding new group entry\n"
 msgstr "%s : erreur durant l'addition du nouveau groupe\n"
 
-#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948
-#: src/usermod.c:557 src/usermod.c:693
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
 #, c-format
 msgid "%s: cannot add new dbm group entry\n"
 msgstr "%s : impossible d'ajouter une nouvelle entrée pour le groupe dbm\n"
 
-#: src/groupadd.c:264 src/useradd.c:1002
+#: src/groupadd.c:264 src/useradd.c:1014
 #, c-format
 msgid "%s: name %s is not unique\n"
 msgstr "%s : le nom %s n'est pas unique\n"
@@ -933,19 +933,19 @@ msgstr "%s : %s n'est pas un nom de groupe valide\n"
 msgid "%s: invalid group %s\n"
 msgstr "%s : groupe %s non valide\n"
 
-#: src/groupadd.c:373 src/useradd.c:1278
+#: src/groupadd.c:373 src/useradd.c:1290
 #, c-format
 msgid "%s: -O requires NAME=VALUE\n"
 msgstr "%s : -O requiert NAME=VALEUR\n"
 
-#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387
-#: src/userdel.c:309 src/usermod.c:569
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
 #, c-format
 msgid "%s: cannot rewrite group file\n"
 msgstr "%s : impossible de re-écrire le fichier group\n"
 
-#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395
-#: src/userdel.c:315 src/usermod.c:706
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
 #, c-format
 msgid "%s: cannot rewrite shadow group file\n"
 msgstr "%s : impossible de re-écrire le fichier shadow group\n"
@@ -1017,11 +1017,50 @@ msgstr "%s : le groupe %s n'existe pas\n"
 msgid "%s: group %s is a NIS group\n"
 msgstr "%s : le groupe %s est un groupe NIS\n"
 
-#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
 #, c-format
 msgid "%s: %s is the NIS master\n"
 msgstr "%s : %s est le maître NIS\n"
 
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+#, fuzzy
+msgid "Unable to lock group file\n"
+msgstr "%s : impossible de vérouiller le fichier group\n"
+
+#: src/groupmems.c:209
+#, fuzzy
+msgid "Unable to open group file\n"
+msgstr "%s : impossible d'ouvrir le fichier group\n"
+
+#: src/groupmems.c:229
+#, fuzzy
+msgid "Cannot close group file\n"
+msgstr "%s : impossible d'ouvrir le fichier group\n"
+
 #: src/groupmod.c:111
 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
 msgstr "usage : groupmod [-g gid [-o]] [-n nom] groupe\n"
@@ -1052,26 +1091,31 @@ msgid "unknown user %s\n"
 msgstr "utilisateur %s inconnu\n"
 
 #: src/grpck.c:98
-#, c-format
-msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
 msgstr "Usage : %s [ -r ] ] groupe [ gshadow ] ]\n"
 
 #: src/grpck.c:100
-#, c-format
-msgid "Usage: %s [ -r ] [ group ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group ]\n"
 msgstr "Usage: %s [ -r ] [ groupe ]\n"
 
 #: src/grpck.c:119 src/pwck.c:119
 msgid "No"
 msgstr "Non"
 
-#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
 #, c-format
 msgid "%s: cannot lock file %s\n"
 msgstr "%s : impossible de vérouiller le fichier %s\n"
 
-#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241
-#: src/pwck.c:250
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
 #, c-format
 msgid "%s: cannot open file %s\n"
 msgstr "%s : impossible d'ouvrir le fichier %s\n"
@@ -1080,13 +1124,13 @@ msgstr "%s : impossible d'ouvrir le fichier %s\n"
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:298
+#: src/grpck.c:317
 msgid "invalid group file entry\n"
 msgstr "entrée dans le fichier group non valide\n"
 
-#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517
-#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517
-#: src/pwck.c:541
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
 #, c-format
 msgid "delete line `%s'? "
 msgstr "effacer la ligne `%s'? "
@@ -1095,26 +1139,26 @@ msgstr "effacer la ligne `%s'? "
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:361
+#: src/grpck.c:380
 msgid "duplicate group entry\n"
 msgstr "entrée de groupe dupliquée\n"
 
-#: src/grpck.c:378
+#: src/grpck.c:397
 #, c-format
 msgid "invalid group name `%s'\n"
 msgstr "nom de groupe `%s' non valide\n"
 
-#: src/grpck.c:388
+#: src/grpck.c:407
 #, c-format
 msgid "group %s: bad GID (%d)\n"
 msgstr "groupe %s : mauvais GID (%d)\n"
 
-#: src/grpck.c:414
+#: src/grpck.c:433
 #, c-format
 msgid "group %s: no user %s\n"
 msgstr "groupe %s : pas d'utilisateur %s\n"
 
-#: src/grpck.c:416 src/grpck.c:585
+#: src/grpck.c:435 src/grpck.c:604
 #, c-format
 msgid "delete member `%s'? "
 msgstr "effacer le membre `%s'? "
@@ -1123,7 +1167,7 @@ msgstr "effacer le membre `%s'? "
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:453
+#: src/grpck.c:472
 msgid "invalid shadow group file entry\n"
 msgstr "entrée non valide dans le fichier shadow group\n"
 
@@ -1131,45 +1175,45 @@ msgstr "entr
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:516
+#: src/grpck.c:535
 msgid "duplicate shadow group entry\n"
 msgstr "entrée dupliquée dans le fichier shadow group\n"
 
-#: src/grpck.c:533
+#: src/grpck.c:552
 msgid "no matching group file entry\n"
 msgstr "aucune entrée dans le fichier group correspondante\n"
 
-#: src/grpck.c:553
+#: src/grpck.c:572
 #, c-format
 msgid "shadow group %s: no administrative user %s\n"
 msgstr "groupe shadow %s : aucun administrateur %s\n"
 
-#: src/grpck.c:555
+#: src/grpck.c:574
 #, c-format
 msgid "delete administrative member `%s'? "
 msgstr "effacer le membre administrateur `%s' ?"
 
-#: src/grpck.c:583
+#: src/grpck.c:602
 #, c-format
 msgid "shadow group %s: no user %s\n"
 msgstr "groupe shadow %s : aucun utilisateur %s\n"
 
-#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
 #, c-format
 msgid "%s: cannot update file %s\n"
 msgstr "%s : impossible de mettre à jour le fichier %s\n"
 
-#: src/grpck.c:640 src/pwck.c:606
+#: src/grpck.c:660 src/pwck.c:626
 #, c-format
 msgid "%s: the files have been updated; run mkpasswd\n"
 msgstr "%s : les fichiers ont été mis à jour; exécutez mkpasswd\n"
 
-#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
 #, c-format
 msgid "%s: no changes\n"
 msgstr ""
 
-#: src/grpck.c:644 src/pwck.c:610
+#: src/grpck.c:664 src/pwck.c:630
 #, c-format
 msgid "%s: the files have been updated\n"
 msgstr ""
@@ -1240,42 +1284,42 @@ msgstr "Usage : id [ -a ]\n"
 msgid "usage: id\n"
 msgstr "Usage : id\n"
 
-#: src/id.c:118
+#: src/id.c:127
 #, c-format
 msgid "uid=%d(%s)"
 msgstr "uid=%d(%s)"
 
-#: src/id.c:120
+#: src/id.c:129
 #, c-format
 msgid "uid=%d"
 msgstr "uid=%d"
 
-#: src/id.c:124
+#: src/id.c:133
 #, c-format
 msgid " gid=%d(%s)"
 msgstr " gid=%d(%s)"
 
-#: src/id.c:126
+#: src/id.c:135
 #, c-format
 msgid " gid=%d"
 msgstr " gid=%d"
 
-#: src/id.c:136
+#: src/id.c:145
 #, c-format
 msgid " euid=%d(%s)"
 msgstr " euid=%d(%s)"
 
-#: src/id.c:138
+#: src/id.c:147
 #, c-format
 msgid " euid=%d"
 msgstr " euid=%d"
 
-#: src/id.c:143
+#: src/id.c:152
 #, c-format
 msgid " egid=%d(%s)"
 msgstr " egid=%d(%s)"
 
-#: src/id.c:145
+#: src/id.c:154
 #, c-format
 msgid " egid=%d"
 msgstr " egid=%d"
@@ -1288,42 +1332,47 @@ msgstr " egid=%d"
 #. * where "###" is a numerical value and "aaa" is the
 #. * corresponding name for each respective numerical value.
 #.
-#: src/id.c:166
+#: src/id.c:175
 msgid " groups="
 msgstr " groupes="
 
-#: src/lastlog.c:167
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
 msgid "Username         Port     From             Latest\n"
 msgstr "Utilisateur      Port     Venant de        Dernière\n"
 
-#: src/lastlog.c:169
+#: src/lastlog.c:186
 msgid "Username                Port     Latest\n"
 msgstr "Utilisateur             Port     Dernière\n"
 
-#: src/lastlog.c:183
+#: src/lastlog.c:200
 msgid "**Never logged in**"
 msgstr "**Jamais connecté**"
 
-#: src/login.c:198
+#: src/login.c:201
 #, c-format
 msgid "usage: %s [-p] [name]\n"
 msgstr "Usage : %s [-p] [nom]\n"
 
-#: src/login.c:201
+#: src/login.c:204
 #, c-format
 msgid "       %s [-p] [-h host] [-f name]\n"
 msgstr "       %s [-p] [-h hôte] [-f nom]\n"
 
-#: src/login.c:203
+#: src/login.c:206
 #, c-format
 msgid "       %s [-p] -r host\n"
 msgstr "       %s [-p] -r hôte\n"
 
-#: src/login.c:286
+#: src/login.c:289
 msgid "Invalid login time\n"
 msgstr "Heure de connexion non valide\n"
 
-#: src/login.c:341
+#: src/login.c:344
 msgid ""
 "\n"
 "System closed for routine maintenance\n"
@@ -1331,7 +1380,7 @@ msgstr ""
 "\n"
 "Système fermé pour maintenance\n"
 
-#: src/login.c:351
+#: src/login.c:354
 msgid ""
 "\n"
 "[Disconnect bypassed -- root login allowed.]\n"
@@ -1339,7 +1388,7 @@ msgstr ""
 "\n"
 "[Disconnexion court-circuitée -- login root authorisé.]\n"
 
-#: src/login.c:390
+#: src/login.c:393
 #, c-format
 msgid ""
 "\n"
@@ -1348,17 +1397,17 @@ msgstr ""
 "\n"
 "Tentative de connexion: délai de %s secondes dépassé.\n"
 
-#: src/login.c:692
+#: src/login.c:695
 #, c-format
 msgid " on `%.100s' from `%.200s'"
 msgstr " sur `%.100s' à partir de `%.200s'"
 
-#: src/login.c:694
+#: src/login.c:697
 #, c-format
 msgid " on `%.100s'"
 msgstr " sur `%.100s'"
 
-#: src/login.c:834
+#: src/login.c:837
 #, c-format
 msgid ""
 "\n"
@@ -1367,34 +1416,34 @@ msgstr ""
 "\n"
 "% login: "
 
-#: src/login.c:836
+#: src/login.c:839
 msgid "login: "
 msgstr "login: "
 
-#: src/login.c:1026 src/sulogin.c:231
+#: src/login.c:1029 src/sulogin.c:231
 msgid "Login incorrect"
 msgstr "Login incorrect"
 
-#: src/login.c:1213
+#: src/login.c:1217
 msgid "Warning: login re-enabled after temporary lockout.\n"
 msgstr "Avertissement: login réactivé après une désactivation temporaire.\n"
 
-#: src/login.c:1223
+#: src/login.c:1227
 #, c-format
 msgid "Last login: %s on %s"
 msgstr "Dernière connexion : le %s sur %s"
 
-#: src/login.c:1226
+#: src/login.c:1230
 #, c-format
 msgid "Last login: %.19s on %s"
 msgstr "Dernière connexion : le %.19s sur %s"
 
-#: src/login.c:1231
+#: src/login.c:1235
 #, c-format
 msgid " from %.*s"
 msgstr " à partir de %.*s"
 
-#: src/login.c:1303
+#: src/login.c:1307
 msgid "Starting rad_login\n"
 msgstr "Démarrage de rad_login\n"
 
@@ -1403,6 +1452,21 @@ msgstr "D
 msgid "%s: no DBM database on system - no action performed\n"
 msgstr "%s : pas de base de données DBM sur le système - aucune action prise\n"
 
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr "Usage : %s [ -vf ] [ -p|g|sp|sg ] fichier\n"
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr "Usage : %s [ -vf ] [ -p|g|sp ] fichier\n"
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr "Usage : %s [ -vf ] [ -p|g ] fichier\n"
+
 #: src/mkpasswd.c:245 src/mkpasswd.c:249
 #, c-format
 msgid "%s: cannot overwrite file %s\n"
@@ -1418,6 +1482,11 @@ msgstr "%s : impossible d'ouvrir les fichiers DBM pour %s\n"
 msgid "%s: the beginning with "
 msgstr ""
 
+#: src/mkpasswd.c:296
+#, fuzzy
+msgid " is too long\n"
+msgstr "%s: champs trop longs\n"
+
 #: src/mkpasswd.c:321
 #, c-format
 msgid "%s: error parsing line \"%s\"\n"
@@ -1427,6 +1496,11 @@ msgstr "%s : erreur lors l'analyse de la ligne \"%s\"\n"
 msgid "adding record for name "
 msgstr ""
 
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
 #: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
 #, c-format
 msgid "%s: error adding record for "
@@ -1437,21 +1511,6 @@ msgstr ""
 msgid "added %d entries, longest was %d\n"
 msgstr "%d entrées ajoutées, la plus longue fut %d\n"
 
-#: src/mkpasswd.c:382
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
-msgstr "Usage : %s [ -vf ] [ -p|g|sp|sg ] fichier\n"
-
-#: src/mkpasswd.c:384
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
-msgstr "Usage : %s [ -vf ] [ -p|g|sp ] fichier\n"
-
-#: src/mkpasswd.c:387
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
-msgstr "Usage : %s [ -vf ] [ -p|g ] fichier\n"
-
 #: src/newgrp.c:66
 msgid "usage: newgrp [ - ] [ group ]\n"
 msgstr "Usage : newgrp [ - ] [ groupe ]\n"
@@ -1687,20 +1746,20 @@ msgid "Password changed.\n"
 msgstr "Mot de passe changé.\n"
 
 #: src/pwck.c:98
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
 msgstr "Usage : %s [ -qr ] [ passwd [ shadow ] ]\n"
 
 #: src/pwck.c:100
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
 msgstr "Usage : %s [ -qr ] [ passwd ]\n"
 
 #.
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:285
+#: src/pwck.c:304
 msgid "invalid password file entry\n"
 msgstr "entrée non valide dans le fichier password\n"
 
@@ -1708,16 +1767,16 @@ msgstr "entr
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:347
+#: src/pwck.c:366
 msgid "duplicate password entry\n"
 msgstr "entrée dupliquée dans password\n"
 
-#: src/pwck.c:363
+#: src/pwck.c:382
 #, c-format
 msgid "invalid user name `%s'\n"
 msgstr "nom d'utilisateur `%s' non valide\n"
 
-#: src/pwck.c:373
+#: src/pwck.c:392
 #, c-format
 msgid "user %s: bad UID (%d)\n"
 msgstr "utilisateur %s : mauvais UID (%d)\n"
@@ -1725,7 +1784,7 @@ msgstr "utilisateur %s : mauvais UID (%d)\n"
 #.
 #. * No primary group, just give a warning
 #.
-#: src/pwck.c:388
+#: src/pwck.c:407
 #, c-format
 msgid "user %s: no group %d\n"
 msgstr "utilisateur %s : aucun groupe %d\n"
@@ -1733,7 +1792,7 @@ msgstr "utilisateur %s : aucun groupe %d\n"
 #.
 #. * Home directory doesn't exist, give a warning
 #.
-#: src/pwck.c:403
+#: src/pwck.c:422
 #, c-format
 msgid "user %s: directory %s does not exist\n"
 msgstr "utilisateur %s : le répertoire %s n'existe pas\n"
@@ -1741,7 +1800,7 @@ msgstr "utilisateur %s : le r
 #.
 #. * Login shell doesn't exist, give a warning
 #.
-#: src/pwck.c:418
+#: src/pwck.c:437
 #, c-format
 msgid "user %s: program %s does not exist\n"
 msgstr "utilisateur %s : le programme %s n'existe pas\n"
@@ -1750,7 +1809,7 @@ msgstr "utilisateur %s : le programme %s n'existe pas\n"
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:454
+#: src/pwck.c:473
 msgid "invalid shadow password file entry\n"
 msgstr "entrée shadow password non valide\n"
 
@@ -1758,7 +1817,7 @@ msgstr "entr
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:516
+#: src/pwck.c:535
 msgid "duplicate shadow password entry\n"
 msgstr "entrée shadow password dupliquée\n"
 
@@ -1766,22 +1825,22 @@ msgstr "entr
 #. * Tell the user this entry has no matching
 #. * /etc/passwd entry and ask them to delete it.
 #.
-#: src/pwck.c:540
+#: src/pwck.c:559
 msgid "no matching password file entry\n"
 msgstr "aucune entrée correspondante dans le fichier password\n"
 
-#: src/pwck.c:557
+#: src/pwck.c:576
 #, c-format
 msgid "user %s: last password change in the future\n"
 msgstr ""
 "utilisateur %s : date du dernier changement de mot de passe dans le futur\n"
 
-#: src/pwconv.c:94 src/pwunconv.c:108
+#: src/pwconv.c:94 src/pwunconv.c:99
 #, c-format
 msgid "%s: can't lock passwd file\n"
 msgstr "%s : impossible de vérouiller le fichier passwd\n"
 
-#: src/pwconv.c:99 src/pwunconv.c:113
+#: src/pwconv.c:99 src/pwunconv.c:104
 #, c-format
 msgid "%s: can't open passwd file\n"
 msgstr "%s : impossible d'ouvrir le fichier passwd\n"
@@ -1806,17 +1865,17 @@ msgstr "%s : impossible de mettre 
 msgid "%s: can't update passwd file\n"
 msgstr "%s : impossible de mettre à jour le fichier passwd\n"
 
-#: src/pwunconv.c:62
+#: src/pwunconv.c:53
 #, c-format
 msgid "%s: Shadow passwords are not configured.\n"
 msgstr "%s : Les mots de passe shadow ne sont pas configurés.\n"
 
-#: src/pwunconv.c:171
+#: src/pwunconv.c:162
 #, c-format
 msgid "%s: can't update entry for user %s\n"
 msgstr "%s : impossible de mettre à jour l'entrée %s\n"
 
-#: src/pwunconv.c:188
+#: src/pwunconv.c:179
 #, c-format
 msgid "%s: can't delete shadow password file\n"
 msgstr "%s : impossible d'effacer le fichier shadow\n"
@@ -1830,33 +1889,28 @@ msgstr "D
 msgid "%s: must be run from a terminal\n"
 msgstr "%s : doit être lancé à partir d'un terminal\n"
 
-#: src/su.c:311
+#: src/su.c:310
 #, c-format
 msgid "%s: pam_start: error %d\n"
 msgstr "%s : pam_start : erreur %d\n"
 
-#: src/su.c:337
+#: src/su.c:336
 #, c-format
 msgid "Unknown id: %s\n"
 msgstr "ID inconnue : %s\n"
 
 #. access denied (-1) or unexpected value
-#: src/su.c:372 src/su.c:387
+#: src/su.c:371 src/su.c:386
 #, fuzzy, c-format
 msgid "You are not authorized to su %s\n"
 msgstr "Vous n'êtes pas authorisés "
 
 #. require own password
-#: src/su.c:383
+#: src/su.c:382
 msgid "(Enter your own password.)"
 msgstr "(Entrez votre propre mot de passe.)"
 
-#: src/su.c:404
-#, c-format
-msgid "%s: permission denied (shell).\n"
-msgstr "%s : permission refusée (shell).\n"
-
-#: src/su.c:428
+#: src/su.c:413
 #, c-format
 msgid ""
 "%s: %s\n"
@@ -1865,7 +1919,7 @@ msgstr ""
 "%s: %s\n"
 "(Ignoré)\n"
 
-#: src/su.c:628
+#: src/su.c:615
 msgid "No shell\n"
 msgstr "Pas de shell\n"
 
@@ -1901,275 +1955,280 @@ msgstr ""
 msgid "Entering System Maintenance Mode\n"
 msgstr "Entrée du système en mode maintenance\n"
 
-#: src/useradd.c:249
+#: src/useradd.c:251
 #, c-format
 msgid "%s: rebuild the group database\n"
 msgstr "%s : reconstruction de la base de données des groupes\n"
 
-#: src/useradd.c:256
+#: src/useradd.c:258
 #, c-format
 msgid "%s: rebuild the shadow group database\n"
 msgstr "%s : reconstruction de la base de données des groupes shadow\n"
 
-#: src/useradd.c:293 src/usermod.c:973
+#: src/useradd.c:295 src/usermod.c:974
 #, c-format
 msgid "%s: invalid numeric argument `%s'\n"
 msgstr "%s : argument numérique `%s' non valide\n"
 
-#: src/useradd.c:349
+#: src/useradd.c:351
 #, c-format
 msgid "%s: unknown gid %s\n"
 msgstr "%s : gid %s inconnu\n"
 
-#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260
-#: src/usermod.c:1104
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
 #, c-format
 msgid "%s: unknown group %s\n"
 msgstr "%s : groupe %s inconnu\n"
 
-#: src/useradd.c:424
+#: src/useradd.c:426
 #, c-format
 msgid "group=%s,%ld  basedir=%s  skel=%s\n"
 msgstr "group=%s,%ld  rép_base=%s  skel=%s\n"
 
-#: src/useradd.c:427
+#: src/useradd.c:429
 #, c-format
 msgid "shell=%s  "
 msgstr "shell=%s  "
 
-#: src/useradd.c:429
+#: src/useradd.c:431
 #, c-format
 msgid "inactive=%ld  expire=%s"
 msgstr "inactif=%ld  expire=%s"
 
-#: src/useradd.c:433
+#: src/useradd.c:435
 #, c-format
 msgid "GROUP=%ld\n"
 msgstr "GROUP=%ld\n"
 
-#: src/useradd.c:434
+#: src/useradd.c:436
 #, c-format
 msgid "HOME=%s\n"
 msgstr "HOME=%s\n"
 
-#: src/useradd.c:436
+#: src/useradd.c:438
 #, c-format
 msgid "INACTIVE=%ld\n"
 msgstr "INACTIVE=%ld\n"
 
-#: src/useradd.c:437
+#: src/useradd.c:439
 #, c-format
 msgid "EXPIRE=%s\n"
 msgstr "EXPIRE=%s\n"
 
-#: src/useradd.c:439
+#: src/useradd.c:441
 #, c-format
 msgid "SHELL=%s\n"
 msgstr "SHELL=%s\n"
 
-#: src/useradd.c:440
+#: src/useradd.c:442
 #, c-format
 msgid "SKEL=%s\n"
 msgstr "SKEL=%s\n"
 
-#: src/useradd.c:476
+#: src/useradd.c:482
 #, c-format
 msgid "%s: cannot create new defaults file\n"
 msgstr "%s : impossible de créer un nouveau fichier de défauts\n"
 
-#: src/useradd.c:570 src/useradd.c:581
+#: src/useradd.c:488
+#, fuzzy, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr "%s : impossible de créer un nouveau fichier de défauts\n"
+
+#: src/useradd.c:582 src/useradd.c:593
 #, c-format
 msgid "%s: rename: %s"
 msgstr "%s : rename : %s"
 
-#: src/useradd.c:668 src/usermod.c:280
+#: src/useradd.c:680 src/usermod.c:281
 #, c-format
 msgid "%s: group `%s' is a NIS group.\n"
 msgstr "%s : le groupe `%s' est un groupe NIS.\n"
 
-#: src/useradd.c:676 src/usermod.c:288
+#: src/useradd.c:688 src/usermod.c:289
 #, c-format
 msgid "%s: too many groups specified (max %d).\n"
 msgstr "%s : trop de groupes spécifiés (max %d).\n"
 
-#: src/useradd.c:708 src/usermod.c:320
+#: src/useradd.c:720 src/usermod.c:321
 #, c-format
 msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
 msgstr "Usage : %s\t[-u uid [-o]] [-g groupe] [-G groupe,...] \n"
 
-#: src/useradd.c:711
+#: src/useradd.c:723
 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
 msgstr "\t\t[-d home] [-s shell] [-c commentaire] [-m [-k template]]\n"
 
-#: src/useradd.c:714 src/usermod.c:326
+#: src/useradd.c:726 src/usermod.c:327
 msgid "[-f inactive] [-e expire ] "
 msgstr "[-f inactif] [-e expire ] "
 
-#: src/useradd.c:717
+#: src/useradd.c:729
 msgid "[-A program] "
 msgstr "[-A program] "
 
-#: src/useradd.c:719
+#: src/useradd.c:731
 msgid "[-p passwd] name\n"
 msgstr "[-p mot-de-passe] nom\n"
 
-#: src/useradd.c:721
+#: src/useradd.c:733
 #, c-format
 msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
 msgstr "       %s\t-D [-g groupe] [-b base] [-s shell]\n"
 
-#: src/useradd.c:724
+#: src/useradd.c:736
 msgid "\t\t[-f inactive] [-e expire ]\n"
 msgstr "\t\t[-f inactif] [-e expire ]\n"
 
-#: src/useradd.c:821 src/usermod.c:478
+#: src/useradd.c:833 src/usermod.c:479
 #, c-format
 msgid "%s: error locking group file\n"
 msgstr "%s : erreur lors du vérouillage du fichier de groupe\n"
 
-#: src/useradd.c:825 src/usermod.c:483
+#: src/useradd.c:837 src/usermod.c:484
 #, c-format
 msgid "%s: error opening group file\n"
 msgstr "%s : erreur lors d'ouverture du fichier de groupe\n"
 
-#: src/useradd.c:830 src/usermod.c:590
+#: src/useradd.c:842 src/usermod.c:591
 #, c-format
 msgid "%s: error locking shadow group file\n"
 msgstr "%s : erreur lors du vérouillage du fichier shadow group\n"
 
-#: src/useradd.c:835 src/usermod.c:596
+#: src/useradd.c:847 src/usermod.c:597
 #, c-format
 msgid "%s: error opening shadow group file\n"
 msgstr "%s : erreur lors de l'ouverture du fichier shadow group\n"
 
-#: src/useradd.c:1007
+#: src/useradd.c:1019
 #, c-format
 msgid "%s: uid %d is not unique\n"
 msgstr "%s : l'uid %d n'est pas unique\n"
 
-#: src/useradd.c:1037
+#: src/useradd.c:1049
 #, c-format
 msgid "%s: can't get unique uid\n"
 msgstr "%s : impossible d'obtenir un uid unique\n"
 
-#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063
-#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
 #, c-format
 msgid "%s: invalid field `%s'\n"
 msgstr "%s : champs `%s' non valide\n"
 
-#: src/useradd.c:1159
+#: src/useradd.c:1171
 #, c-format
 msgid "%s: invalid base directory `%s'\n"
 msgstr "%s : répertoire de base non valide `%s'\n"
 
-#: src/useradd.c:1169
+#: src/useradd.c:1181
 #, c-format
 msgid "%s: invalid comment `%s'\n"
 msgstr "%s : commentaire `%s' non valide\n"
 
-#: src/useradd.c:1179
+#: src/useradd.c:1191
 #, c-format
 msgid "%s: invalid home directory `%s'\n"
 msgstr "%s : répertoire personnel `%s' non valide\n"
 
-#: src/useradd.c:1197 src/usermod.c:1086
+#: src/useradd.c:1209 src/usermod.c:1087
 #, c-format
 msgid "%s: invalid date `%s'\n"
 msgstr "%s : date `%s' non valide\n"
 
-#: src/useradd.c:1209
+#: src/useradd.c:1221
 #, c-format
 msgid "%s: shadow passwords required for -e\n"
 msgstr "%s : mots de passe shadow nécessaires pour -e\n"
 
-#: src/useradd.c:1224
+#: src/useradd.c:1236
 #, c-format
 msgid "%s: shadow passwords required for -f\n"
 msgstr "%s : mots de passe shadow nécessaires pour -f\n"
 
-#: src/useradd.c:1298
+#: src/useradd.c:1310
 #, c-format
 msgid "%s: invalid shell `%s'\n"
 msgstr "%s : shell `%s' non valide\n"
 
-#: src/useradd.c:1339
+#: src/useradd.c:1351
 #, c-format
 msgid "%s: invalid user name `%s'\n"
 msgstr "%s : nom d'utilisateur `%s' non valide\n"
 
-#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
 #, c-format
 msgid "%s: cannot rewrite password file\n"
 msgstr "%s : impossible de reécrire le fichier de mots de passe\n"
 
-#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
 #, c-format
 msgid "%s: cannot rewrite shadow password file\n"
 msgstr "%s : impossible de reécrire le fichier shadow\n"
 
-#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
 #, c-format
 msgid "%s: unable to lock password file\n"
 msgstr "%s : impossible de vérouiller le fichier de mots de passe\n"
 
-#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
 #, c-format
 msgid "%s: unable to open password file\n"
 msgstr "%s : impossible d'ouvrir le fichier de mots de passe\n"
 
-#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
 #, c-format
 msgid "%s: cannot lock shadow password file\n"
 msgstr "%s : impossible de vérouiller le fichier de mots de passe\n"
 
-#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
 #, c-format
 msgid "%s: cannot open shadow password file\n"
 msgstr "%s : impossible d'ouvrir le fichier shadow\n"
 
-#: src/useradd.c:1535 src/usermod.c:1372
+#: src/useradd.c:1547 src/usermod.c:1373
 #, c-format
 msgid "%s: error adding authentication method\n"
 msgstr "%s : erreur lors de l'ajout de la méthode d'authentification\n"
 
-#: src/useradd.c:1558
+#: src/useradd.c:1570
 #, c-format
 msgid "%s: error adding new password entry\n"
 msgstr "%s : erreur lors de l'ajout de la nouvelle entrée\n"
 
-#: src/useradd.c:1573
+#: src/useradd.c:1585
 #, c-format
 msgid "%s: error updating password dbm entry\n"
 msgstr "%s : erreur lors de la mise à jour de l'entrée dbm\n"
 
-#: src/useradd.c:1589 src/usermod.c:1431
+#: src/useradd.c:1601 src/usermod.c:1432
 #, c-format
 msgid "%s: error adding new shadow password entry\n"
 msgstr "%s : erreur lors de l'ajout de la nouvelle entrée shadow\n"
 
-#: src/useradd.c:1605 src/usermod.c:1446
+#: src/useradd.c:1617 src/usermod.c:1447
 #, c-format
 msgid "%s: error updating shadow passwd dbm entry\n"
 msgstr "%s : erreur lors de la mise à jour de l'entrée shadow passwd dbm\n"
 
-#: src/useradd.c:1637
+#: src/useradd.c:1649
 #, c-format
 msgid "%s: cannot create directory %s\n"
 msgstr "%s : impossible de créer le répertoire %s\n"
 
-#: src/useradd.c:1758 src/usermod.c:1209
+#: src/useradd.c:1772 src/usermod.c:1210
 #, c-format
 msgid "%s: user %s exists\n"
 msgstr "%s : l'utilisateur %s existe\n"
 
-#: src/useradd.c:1770
+#: src/useradd.c:1784
 #, c-format
 msgid ""
 "%s: group %s exists - if you want to add this user to that group, use -g.\n"
 msgstr ""
 
-#: src/useradd.c:1801
+#: src/useradd.c:1815
 #, c-format
 msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
 msgstr ""
@@ -2265,12 +2324,12 @@ msgstr "%s : avertissement : %s n'appartient pas 
 msgid "%s: warning: can't remove "
 msgstr "%s : impossible d'enlever "
 
-#: src/userdel.c:791 src/usermod.c:1000
+#: src/userdel.c:791 src/usermod.c:1001
 #, c-format
 msgid "%s: user %s does not exist\n"
 msgstr "%s : l'utilisateur %s n'existe pas\n"
 
-#: src/userdel.c:805 src/usermod.c:1016
+#: src/userdel.c:805 src/usermod.c:1017
 #, c-format
 msgid "%s: user %s is a NIS user\n"
 msgstr "%s : le compte %s est un compte NIS\n"
@@ -2284,123 +2343,123 @@ msgstr "%s : %s n'appartient pas 
 #, c-format
 msgid "%s: not removing directory %s (would remove home of user %s)\n"
 msgstr ""
-"%s : répertoire %s non enlevé (cela enléverait le répertoire personnel de "
-"%s)\n"
+"%s : répertoire %s non enlevé (cela enléverait le répertoire personnel de %"
+"s)\n"
 
 #: src/userdel.c:878
 #, c-format
 msgid "%s: error removing directory %s\n"
 msgstr "%s : erreur lors de l'effacement du répertoire %s\n"
 
-#: src/usermod.c:323
+#: src/usermod.c:324
 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
 msgstr "\t\t[-d home [-m]] [-s shell] [-c commentaire] [-l nouveau_nom]\n"
 
-#: src/usermod.c:329
+#: src/usermod.c:330
 msgid "[-A {DEFAULT|program},... ] "
 msgstr "[-A {DÉFAUT|programme},... ] "
 
-#: src/usermod.c:331
+#: src/usermod.c:332
 #, fuzzy
 msgid "[-p passwd] [-L|-U] name\n"
 msgstr "[-p mot-de-passe] nom\n"
 
-#: src/usermod.c:510
+#: src/usermod.c:511
 #, c-format
 msgid "%s: out of memory in update_group\n"
 msgstr "%s : plus de mémoire pour update_group\n"
 
-#: src/usermod.c:633
+#: src/usermod.c:634
 #, c-format
 msgid "%s: out of memory in update_gshadow\n"
 msgstr "%s : plus de mémoire pour update_gshadow\n"
 
-#: src/usermod.c:1186
+#: src/usermod.c:1187
 #, c-format
 msgid "%s: no flags given\n"
 msgstr "%s : aucun drapeau donné\n"
 
-#: src/usermod.c:1193
+#: src/usermod.c:1194
 #, c-format
 msgid "%s: shadow passwords required for -e and -f\n"
 msgstr "%s : mots de passe shadow nécessaires pour -e ou -f\n"
 
-#: src/usermod.c:1214
+#: src/usermod.c:1215
 #, c-format
 msgid "%s: uid %ld is not unique\n"
 msgstr "%s : l'uid %ld n'est pas unique\n"
 
-#: src/usermod.c:1362
+#: src/usermod.c:1363
 #, c-format
 msgid "%s: error deleting authentication method\n"
 msgstr "%s : erreur lors de l'effacement de la méthode d'authentification\n"
 
-#: src/usermod.c:1382
+#: src/usermod.c:1383
 #, c-format
 msgid "%s: error changing authentication method\n"
 msgstr "%s : erreur lors du changement de la méthode d'authentification\n"
 
-#: src/usermod.c:1399
+#: src/usermod.c:1400
 #, c-format
 msgid "%s: error changing password entry\n"
 msgstr "%s : erreur lors du changement de l'entrée dans /etc/passwd\n"
 
-#: src/usermod.c:1405
+#: src/usermod.c:1406
 #, c-format
 msgid "%s: error removing password entry\n"
 msgstr "%s : erreur lors de l'effacement du mot de passe\n"
 
-#: src/usermod.c:1413
+#: src/usermod.c:1414
 #, c-format
 msgid "%s: error adding password dbm entry\n"
 msgstr ""
 
-#: src/usermod.c:1420
+#: src/usermod.c:1421
 #, c-format
 msgid "%s: error removing passwd dbm entry\n"
 msgstr ""
 
-#: src/usermod.c:1437
+#: src/usermod.c:1438
 #, c-format
 msgid "%s: error removing shadow password entry\n"
 msgstr ""
 
-#: src/usermod.c:1452
+#: src/usermod.c:1453
 #, c-format
 msgid "%s: error removing shadow passwd dbm entry\n"
 msgstr ""
 
-#: src/usermod.c:1483
+#: src/usermod.c:1484
 #, c-format
 msgid "%s: directory %s exists\n"
 msgstr "%s : le répertoire %s existe\n"
 
-#: src/usermod.c:1490
+#: src/usermod.c:1491
 #, c-format
 msgid "%s: can't create %s\n"
 msgstr "%s : impossible de créer %s\n"
 
-#: src/usermod.c:1496
+#: src/usermod.c:1497
 #, c-format
 msgid "%s: can't chown %s\n"
 msgstr "%s : impossible de changer le propriètaire de %s\n"
 
-#: src/usermod.c:1512
+#: src/usermod.c:1513
 #, c-format
 msgid "%s: cannot rename directory %s to %s\n"
 msgstr "%s : impossible de renommer le répertoire %s en %s\n"
 
 #. better leave it alone
-#: src/usermod.c:1609
+#: src/usermod.c:1610
 #, c-format
 msgid "%s: warning: %s not owned by %s\n"
 msgstr "%s : avertissement : %s n'appartient pas à %s\n"
 
-#: src/usermod.c:1615
+#: src/usermod.c:1616
 msgid "failed to change mailbox owner"
 msgstr "échec du changement de propriètaire de la mailbox"
 
-#: src/usermod.c:1622
+#: src/usermod.c:1623
 msgid "failed to rename mailbox"
 msgstr "échec du renommage de la mailbox"
 
@@ -2435,3 +2494,6 @@ msgstr ""
 "Usage :\n"
 "`vipw' édite /etc/passwd        `vipw -s' édite /etc/shadow\n"
 "`vigr' édite /etc/group         `vigr -s' édite /etc/gshadow\n"
+
+#~ msgid "%s: permission denied (shell).\n"
+#~ msgstr "%s : permission refusée (shell).\n"
index 454c410dcd6c1d7164f580a8e1d6ebdd5071847d..7febab21f9bd86d3337a0693d4f5b6e99ddd13dc 100644 (file)
Binary files a/po/pl.gmo and b/po/pl.gmo differ
index 1761890353484257de067f54d529ba0eaa9c6af7..d2688a5dddc606500439debe8d4d872ace22806f 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -5,12 +5,12 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: shadow-981228\n"
-"POT-Creation-Date: 2000-10-16 23:43+0200\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\n"
 "PO-Revision-Date: 1999-03-02 22:29+01:00\n"
 "Last-Translator: Arkadiusz Mi¶kiewicz <misiek@misiek.eu.org>\n"
 "Language-Team: PL <pl@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=iso8859-2\n"
+"Content-Type: text/plain; charset=iso-8859-2\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #: libmisc/addgrps.c:60
@@ -55,7 +55,7 @@ msgstr "Jutro twoje has
 msgid "Your password will expire today.\n"
 msgstr "Dzi¶ twoje has³o straci wa¿no¶æ.\n"
 
-#: libmisc/chowntty.c:110
+#: libmisc/chowntty.c:113
 #, c-format
 msgid "Unable to change tty %s"
 msgstr "Nie mo¿na zmieniæ tty %s"
@@ -73,8 +73,8 @@ msgstr "Nie mo
 #, c-format
 msgid "%d %s since last login.  Last was %s on %s.\n"
 msgstr ""
-"%d %s od ostatniego logowania.  Ostatnie logowanie: dnia %s na terminalu "
-"%s.\n"
+"%d %s od ostatniego logowania.  Ostatnie logowanie: dnia %s na terminalu %"
+"s.\n"
 
 #: libmisc/failure.c:239
 msgid "failures"
@@ -343,9 +343,9 @@ msgstr "Has
 msgid "Account Expires:\t"
 msgstr "Has³o traci wa¿no¶æ:\t"
 
-#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322
-#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738
-#: src/usermod.c:1684
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
 #, fuzzy, c-format
 msgid "%s: PAM authentication failed\n"
 msgstr "%s: b³±d podczas dodawania metody uwierzytelniania\n"
@@ -355,17 +355,17 @@ msgstr "%s: b
 msgid "%s: do not include \"l\" with other flags\n"
 msgstr "%s: nie ³±cz \"l\" z innymi flagami\n"
 
-#: src/chage.c:548 src/chage.c:660 src/login.c:529
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
 #, c-format
 msgid "%s: permission denied\n"
 msgstr "%s: odmowa dostêpu\n"
 
-#: src/chage.c:560 src/chpasswd.c:170
+#: src/chage.c:560 src/chpasswd.c:157
 #, c-format
 msgid "%s: can't lock password file\n"
 msgstr "%s: nie mogê zablokowaæ pliku z has³ami\n"
 
-#: src/chage.c:566 src/chpasswd.c:174
+#: src/chage.c:566 src/chpasswd.c:161
 #, c-format
 msgid "%s: can't open password file\n"
 msgstr "%s: nie mogê otworzyæ pliku z has³ami\n"
@@ -395,12 +395,12 @@ msgstr "Zmieniam informacj
 msgid "%s: error changing fields\n"
 msgstr "%s: b³±d podczas zmieniania pól\n"
 
-#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
 #, c-format
 msgid "%s: can't update password file\n"
 msgstr "%s: nie mogê zaktualizowaæ pliku z has³ami\n"
 
-#: src/chage.c:740 src/pwunconv.c:178
+#: src/chage.c:740 src/pwunconv.c:169
 #, c-format
 msgid "%s: can't update shadow password file\n"
 msgstr "%s: nie mogê zaktualizowaæ pliku z ukrytymi has³ami\n"
@@ -420,9 +420,9 @@ msgstr "%s: nie mog
 msgid "%s: can't rewrite password file\n"
 msgstr "%s: nie mogê przepisaæ pliku z has³ami\n"
 
-#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409
-#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903
-#: src/usermod.c:1762
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
 #, fuzzy, c-format
 msgid "%s: PAM chauthtok failed\n"
 msgstr "%s: nie mogê usun±c blokady z pliku\n"
@@ -566,7 +566,7 @@ msgstr "Nie mog
 msgid "Cannot open the password file.\n"
 msgstr "Nie mogê otworzyæ pliku z has³ami.\n"
 
-#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
 #, c-format
 msgid "%s: %s not found in /etc/passwd\n"
 msgstr "%s: %s nie znaleziony w /etc/passwd\n"
@@ -584,53 +584,53 @@ msgstr "Wprowadzenie zmian do pliku passwd jest niemo
 msgid "Cannot unlock the password file.\n"
 msgstr "Nie mogê usun±c blokady z pliku z has³ami.\n"
 
-#: src/chpasswd.c:82
+#: src/chpasswd.c:69
 #, c-format
 msgid "usage: %s [-e]\n"
 msgstr "u¿ycie: %s [-e]\n"
 
-#: src/chpasswd.c:182 src/pwconv.c:104
+#: src/chpasswd.c:169 src/pwconv.c:104
 #, c-format
 msgid "%s: can't lock shadow file\n"
 msgstr "%s: nie mogê zablokowaæ pliku z ukrytymi has³ami\n"
 
-#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118
-#: src/pwunconv.c:123
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
 #, c-format
 msgid "%s: can't open shadow file\n"
 msgstr "%s: nie mogê otworzyæ pliku z ukrytymi has³ami\n"
 
-#: src/chpasswd.c:209 src/newusers.c:465
+#: src/chpasswd.c:196 src/newusers.c:465
 #, c-format
 msgid "%s: line %d: line too long\n"
 msgstr "%s: linia %d: linia zbyt d³uga\n"
 
-#: src/chpasswd.c:229
+#: src/chpasswd.c:216
 #, c-format
 msgid "%s: line %d: missing new password\n"
 msgstr "%s: linia %d: brakuje nowego has³a\n"
 
-#: src/chpasswd.c:245
+#: src/chpasswd.c:232
 #, c-format
 msgid "%s: line %d: unknown user %s\n"
 msgstr "%s: linia %d: nieznany u¿ytkownik %s\n"
 
-#: src/chpasswd.c:297
+#: src/chpasswd.c:284
 #, c-format
 msgid "%s: line %d: cannot update password entry\n"
 msgstr "%s: linia %d: nie mogê zaktualizowaæ wpisu do bazy hase³\n"
 
-#: src/chpasswd.c:313 src/newusers.c:585
+#: src/chpasswd.c:300 src/newusers.c:585
 #, c-format
 msgid "%s: error detected, changes ignored\n"
 msgstr "%s: wykryto b³±d, zignorowano modyfikacje\n"
 
-#: src/chpasswd.c:324
+#: src/chpasswd.c:311
 #, c-format
 msgid "%s: error updating shadow file\n"
 msgstr "%s: b³±d podczas aktualizacji pliku z ukrytymi has³ami\n"
 
-#: src/chpasswd.c:332
+#: src/chpasswd.c:319
 #, c-format
 msgid "%s: error updating password file\n"
 msgstr "%s: b³±d podczas aktualizacji pliku z has³ami\n"
@@ -716,7 +716,7 @@ msgstr "%s: nieznany u
 msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
 msgstr "u¿ycie: %s [-a|-u u¿ytkownik] [-m maks] [-r] [-t dni] [-l bloksek]\n"
 
-#: src/faillog.c:134 src/lastlog.c:94
+#: src/faillog.c:134 src/lastlog.c:103
 #, c-format
 msgid "Unknown User: %s\n"
 msgstr "Nieznany u¿ytkownik: %s\n"
@@ -892,18 +892,18 @@ msgid "usage: groupadd [-g gid [-o]] group\n"
 msgstr "u¿ycie: groupadd [-g gid [-o]] grupa\n"
 
 #: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
-#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
 #, c-format
 msgid "%s: error adding new group entry\n"
 msgstr "%s: b³±d podczas dodawania nowej grupy\n"
 
-#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948
-#: src/usermod.c:557 src/usermod.c:693
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
 #, c-format
 msgid "%s: cannot add new dbm group entry\n"
 msgstr "%s: nie mogê dodaæ nowego wpisu do bazy dbm grup\n"
 
-#: src/groupadd.c:264 src/useradd.c:1002
+#: src/groupadd.c:264 src/useradd.c:1014
 #, c-format
 msgid "%s: name %s is not unique\n"
 msgstr "%s: nazwa %s nie jest niepowtarzalny\n"
@@ -931,19 +931,19 @@ msgstr "%s: %s: nie jest prawid
 msgid "%s: invalid group %s\n"
 msgstr "%s: nieprawid³owa grupa %s\n"
 
-#: src/groupadd.c:373 src/useradd.c:1278
+#: src/groupadd.c:373 src/useradd.c:1290
 #, c-format
 msgid "%s: -O requires NAME=VALUE\n"
 msgstr "%s: -O wymaga ZMIENNA=WARTO¦Æ\n"
 
-#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387
-#: src/userdel.c:309 src/usermod.c:569
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
 #, c-format
 msgid "%s: cannot rewrite group file\n"
 msgstr "%s: nie mogê przepisaæ pliku z grupami\n"
 
-#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395
-#: src/userdel.c:315 src/usermod.c:706
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
 #, c-format
 msgid "%s: cannot rewrite shadow group file\n"
 msgstr "%s: nie mogê przepisaæ pliku z ukrytymi grupami\n"
@@ -1015,11 +1015,50 @@ msgstr "%s: grupa %s nie isnieje\n"
 msgid "%s: group %s is a NIS group\n"
 msgstr "%s: grupa %s jest grup± NIS\n"
 
-#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
 #, c-format
 msgid "%s: %s is the NIS master\n"
 msgstr "%s: %s jest g³ównym serwerem NIS\n"
 
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+#, fuzzy
+msgid "Unable to lock group file\n"
+msgstr "%s: nie mogê zablokowaæ pliku z grupami\n"
+
+#: src/groupmems.c:209
+#, fuzzy
+msgid "Unable to open group file\n"
+msgstr "%s: nie mogê otworzyæ pliku z grupami\n"
+
+#: src/groupmems.c:229
+#, fuzzy
+msgid "Cannot close group file\n"
+msgstr "%s: nie mogê otworzyæ pliku z grupami\n"
+
 #: src/groupmod.c:111
 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
 msgstr "u¿ycie: groupmod [-g gid [-o]] [-n nazwa] grupa\n"
@@ -1050,26 +1089,31 @@ msgid "unknown user %s\n"
 msgstr "nieznany u¿ytkownik %s\n"
 
 #: src/grpck.c:98
-#, c-format
-msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
 msgstr "U¿ycie: %s [ -r ] [ grupa [ gshadow ] ]\n"
 
 #: src/grpck.c:100
-#, c-format
-msgid "Usage: %s [ -r ] [ group ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group ]\n"
 msgstr "U¿ycie: %s [ -r ] [ grupa ]\n"
 
 #: src/grpck.c:119 src/pwck.c:119
 msgid "No"
 msgstr "Nie"
 
-#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
 #, c-format
 msgid "%s: cannot lock file %s\n"
 msgstr "%s: nie mogê zablokowaæ pliku %s\n"
 
-#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241
-#: src/pwck.c:250
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
 #, c-format
 msgid "%s: cannot open file %s\n"
 msgstr "%s: nie mogê otworzyæ pliku %s\n"
@@ -1078,13 +1122,13 @@ msgstr "%s: nie mog
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:298
+#: src/grpck.c:317
 msgid "invalid group file entry\n"
 msgstr "nieprawid³owy wpis do pliku grup\n"
 
-#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517
-#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517
-#: src/pwck.c:541
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
 #, c-format
 msgid "delete line `%s'? "
 msgstr "usun±c liniê `%s'? "
@@ -1093,26 +1137,26 @@ msgstr "usun
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:361
+#: src/grpck.c:380
 msgid "duplicate group entry\n"
 msgstr "duplikat wpisu grup\n"
 
-#: src/grpck.c:378
+#: src/grpck.c:397
 #, c-format
 msgid "invalid group name `%s'\n"
 msgstr "nieprawid³owa nazwa grupy `%s'\n"
 
-#: src/grpck.c:388
+#: src/grpck.c:407
 #, c-format
 msgid "group %s: bad GID (%d)\n"
 msgstr "grupa %s: z³y GID (%d)\n"
 
-#: src/grpck.c:414
+#: src/grpck.c:433
 #, c-format
 msgid "group %s: no user %s\n"
 msgstr "grupa %s: nie ma u¿ytkownika %s\n"
 
-#: src/grpck.c:416 src/grpck.c:585
+#: src/grpck.c:435 src/grpck.c:604
 #, c-format
 msgid "delete member `%s'? "
 msgstr "skasowaæ cz³onka `%s'? "
@@ -1121,7 +1165,7 @@ msgstr "skasowa
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:453
+#: src/grpck.c:472
 msgid "invalid shadow group file entry\n"
 msgstr "nieprawid³owy wpis do pliku z ukrytymi has³ami\n"
 
@@ -1129,45 +1173,45 @@ msgstr "nieprawid
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:516
+#: src/grpck.c:535
 msgid "duplicate shadow group entry\n"
 msgstr "duplikuj±cy siê wpis w pliku  ukrytych grup\n"
 
-#: src/grpck.c:533
+#: src/grpck.c:552
 msgid "no matching group file entry\n"
 msgstr "brak pasuj±cego wpisu w pliku grup\n"
 
-#: src/grpck.c:553
+#: src/grpck.c:572
 #, c-format
 msgid "shadow group %s: no administrative user %s\n"
 msgstr "ukryta grupa %s: brak u¿ytkownika administracyjnego %s\n"
 
-#: src/grpck.c:555
+#: src/grpck.c:574
 #, c-format
 msgid "delete administrative member `%s'? "
 msgstr "usun±æ cz³onka administracyjnego `%s'? "
 
-#: src/grpck.c:583
+#: src/grpck.c:602
 #, c-format
 msgid "shadow group %s: no user %s\n"
 msgstr "ukryta grupa %s: nie ma u¿ytkownika %s\n"
 
-#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
 #, c-format
 msgid "%s: cannot update file %s\n"
 msgstr "%s: nie mogê zaktualizowaæ pliku %s\n"
 
-#: src/grpck.c:640 src/pwck.c:606
+#: src/grpck.c:660 src/pwck.c:626
 #, c-format
 msgid "%s: the files have been updated; run mkpasswd\n"
 msgstr "%s: pliki zosta³y zaktualizowane; uruchom mkpasswd\n"
 
-#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
 #, c-format
 msgid "%s: no changes\n"
 msgstr "%s: bez zmian\n"
 
-#: src/grpck.c:644 src/pwck.c:610
+#: src/grpck.c:664 src/pwck.c:630
 #, c-format
 msgid "%s: the files have been updated\n"
 msgstr "%s: pliku zost³y zaktualizowane\n"
@@ -1238,42 +1282,42 @@ msgstr "u
 msgid "usage: id\n"
 msgstr "u¿ycie: id\n"
 
-#: src/id.c:118
+#: src/id.c:127
 #, c-format
 msgid "uid=%d(%s)"
 msgstr "uid=%d(%s)"
 
-#: src/id.c:120
+#: src/id.c:129
 #, c-format
 msgid "uid=%d"
 msgstr "uid=%d"
 
-#: src/id.c:124
+#: src/id.c:133
 #, c-format
 msgid " gid=%d(%s)"
 msgstr " gid=%d(%s)"
 
-#: src/id.c:126
+#: src/id.c:135
 #, c-format
 msgid " gid=%d"
 msgstr " gid=%d"
 
-#: src/id.c:136
+#: src/id.c:145
 #, c-format
 msgid " euid=%d(%s)"
 msgstr " euid=%d(%s)"
 
-#: src/id.c:138
+#: src/id.c:147
 #, c-format
 msgid " euid=%d"
 msgstr " euid=%d"
 
-#: src/id.c:143
+#: src/id.c:152
 #, c-format
 msgid " egid=%d(%s)"
 msgstr " egid=%d(%s)"
 
-#: src/id.c:145
+#: src/id.c:154
 #, c-format
 msgid " egid=%d"
 msgstr " egid=%d"
@@ -1286,42 +1330,47 @@ msgstr " egid=%d"
 #. * where "###" is a numerical value and "aaa" is the
 #. * corresponding name for each respective numerical value.
 #.
-#: src/id.c:166
+#: src/id.c:175
 msgid " groups="
 msgstr " grupy="
 
-#: src/lastlog.c:167
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
 msgid "Username         Port     From             Latest\n"
 msgstr "U¿ytkownik       Port     Z                Ostatnio\n"
 
-#: src/lastlog.c:169
+#: src/lastlog.c:186
 msgid "Username                Port     Latest\n"
 msgstr "U¿ytkownik             Port     Ostatnio\n"
 
-#: src/lastlog.c:183
+#: src/lastlog.c:200
 msgid "**Never logged in**"
 msgstr "**Nigdy nie zalogowany**"
 
-#: src/login.c:198
+#: src/login.c:201
 #, c-format
 msgid "usage: %s [-p] [name]\n"
 msgstr "u¿ycie: %s [-p] [nazwa]\n"
 
-#: src/login.c:201
+#: src/login.c:204
 #, c-format
 msgid "       %s [-p] [-h host] [-f name]\n"
 msgstr "       %s [-p] [-h host] [-f nazwa]\n"
 
-#: src/login.c:203
+#: src/login.c:206
 #, c-format
 msgid "       %s [-p] -r host\n"
 msgstr "       %s [-p] -r host\n"
 
-#: src/login.c:286
+#: src/login.c:289
 msgid "Invalid login time\n"
 msgstr "Nieprawid³owy czas logowania\n"
 
-#: src/login.c:341
+#: src/login.c:344
 msgid ""
 "\n"
 "System closed for routine maintenance\n"
@@ -1329,7 +1378,7 @@ msgstr ""
 "\n"
 "System zamkniêty do rutynowej konserwacji.\n"
 
-#: src/login.c:351
+#: src/login.c:354
 msgid ""
 "\n"
 "[Disconnect bypassed -- root login allowed.]\n"
@@ -1337,7 +1386,7 @@ msgstr ""
 "\n"
 "[Roz³±czenie pominiête -- zezwolenie na logowanie siê root-a.]\n"
 
-#: src/login.c:390
+#: src/login.c:393
 #, c-format
 msgid ""
 "\n"
@@ -1346,17 +1395,17 @@ msgstr ""
 "\n"
 "Limit czasu logowania przekroczony po %d sekundach.\n"
 
-#: src/login.c:692
+#: src/login.c:695
 #, c-format
 msgid " on `%.100s' from `%.200s'"
 msgstr " na `%s.100s' z `%.200s'"
 
-#: src/login.c:694
+#: src/login.c:697
 #, c-format
 msgid " on `%.100s'"
 msgstr " na `%.100s'"
 
-#: src/login.c:834
+#: src/login.c:837
 #, c-format
 msgid ""
 "\n"
@@ -1365,34 +1414,34 @@ msgstr ""
 "\n"
 "%s login: "
 
-#: src/login.c:836
+#: src/login.c:839
 msgid "login: "
 msgstr "login: "
 
-#: src/login.c:1026 src/sulogin.c:231
+#: src/login.c:1029 src/sulogin.c:231
 msgid "Login incorrect"
 msgstr "Nieprawid³owe logowanie"
 
-#: src/login.c:1213
+#: src/login.c:1217
 msgid "Warning: login re-enabled after temporary lockout.\n"
 msgstr "Ostrze¿enie: logowanie ponownie odblokowanie po czasowej blokadzie.\n"
 
-#: src/login.c:1223
+#: src/login.c:1227
 #, c-format
 msgid "Last login: %s on %s"
 msgstr "Ostatnie logowanie: %s na %s"
 
-#: src/login.c:1226
+#: src/login.c:1230
 #, c-format
 msgid "Last login: %.19s on %s"
 msgstr "Ostatnie logowanie: %s na %s"
 
-#: src/login.c:1231
+#: src/login.c:1235
 #, c-format
 msgid " from %.*s"
 msgstr " z %.*s"
 
-#: src/login.c:1303
+#: src/login.c:1307
 msgid "Starting rad_login\n"
 msgstr "Startujê rad_login\n"
 
@@ -1402,6 +1451,21 @@ msgid "%s: no DBM database on system - no action performed\n"
 msgstr ""
 "%s: nie ma bazy DBM na tym systemie - ¿adna akcja nie zosta³a podjêta\n"
 
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr "U¿ycie: %s [ -vf ] [ -p|g|sp|sg ] plik\n"
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr "U¿ycie: %s [ -vf ] [ -p|g|sp ] plik\n"
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr "U¿ycie: %s [ -vf ] [ -p|g ] plik\n"
+
 #: src/mkpasswd.c:245 src/mkpasswd.c:249
 #, c-format
 msgid "%s: cannot overwrite file %s\n"
@@ -1417,6 +1481,11 @@ msgstr "%s: nie mog
 msgid "%s: the beginning with "
 msgstr "%s: rozpoczyna siê od "
 
+#: src/mkpasswd.c:296
+#, fuzzy
+msgid " is too long\n"
+msgstr "%s: pola zbyt d³ugie\n"
+
 #: src/mkpasswd.c:321
 #, c-format
 msgid "%s: error parsing line \"%s\"\n"
@@ -1426,6 +1495,11 @@ msgstr "%s: b
 msgid "adding record for name "
 msgstr "dodajê rekord do nazwy "
 
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
 #: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
 #, c-format
 msgid "%s: error adding record for "
@@ -1436,21 +1510,6 @@ msgstr "%s: b
 msgid "added %d entries, longest was %d\n"
 msgstr "dodano %d wpisów, najd³u¿szy by³ %d\n"
 
-#: src/mkpasswd.c:382
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
-msgstr "U¿ycie: %s [ -vf ] [ -p|g|sp|sg ] plik\n"
-
-#: src/mkpasswd.c:384
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
-msgstr "U¿ycie: %s [ -vf ] [ -p|g|sp ] plik\n"
-
-#: src/mkpasswd.c:387
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
-msgstr "U¿ycie: %s [ -vf ] [ -p|g ] plik\n"
-
 #: src/newgrp.c:66
 msgid "usage: newgrp [ - ] [ group ]\n"
 msgstr "u¿ycie: newgrp [ - ] [ grupa ]\n"
@@ -1681,20 +1740,20 @@ msgid "Password changed.\n"
 msgstr "Has³o zmienione.\n"
 
 #: src/pwck.c:98
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
 msgstr "U¿ycie: %s [ -qr ] [ has³o [ shadow ] ]\n"
 
 #: src/pwck.c:100
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
 msgstr "U¿ycie: %s [ -qr ] [ has³o ]\n"
 
 #.
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:285
+#: src/pwck.c:304
 msgid "invalid password file entry\n"
 msgstr "nieprawid³owy wpis do pliku z has³ami\n"
 
@@ -1702,16 +1761,16 @@ msgstr "nieprawid
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:347
+#: src/pwck.c:366
 msgid "duplicate password entry\n"
 msgstr "duplikuj±cy siê wpis w pliku z has³ami\n"
 
-#: src/pwck.c:363
+#: src/pwck.c:382
 #, c-format
 msgid "invalid user name `%s'\n"
 msgstr "nieprawid³owa nazwa u¿ytkownika `%s'\n"
 
-#: src/pwck.c:373
+#: src/pwck.c:392
 #, c-format
 msgid "user %s: bad UID (%d)\n"
 msgstr "u¿ytkownik %s: z³y UID (%d)\n"
@@ -1719,7 +1778,7 @@ msgstr "u
 #.
 #. * No primary group, just give a warning
 #.
-#: src/pwck.c:388
+#: src/pwck.c:407
 #, c-format
 msgid "user %s: no group %d\n"
 msgstr "u¿ytkownik %s: brak grupy %d\n"
@@ -1727,7 +1786,7 @@ msgstr "u
 #.
 #. * Home directory doesn't exist, give a warning
 #.
-#: src/pwck.c:403
+#: src/pwck.c:422
 #, c-format
 msgid "user %s: directory %s does not exist\n"
 msgstr "u¿ytkownik %s: katalog %s nie istnieje\n"
@@ -1735,7 +1794,7 @@ msgstr "u
 #.
 #. * Login shell doesn't exist, give a warning
 #.
-#: src/pwck.c:418
+#: src/pwck.c:437
 #, c-format
 msgid "user %s: program %s does not exist\n"
 msgstr "u¿ytkownik %s: program %s nie istnieje\n"
@@ -1744,7 +1803,7 @@ msgstr "u
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:454
+#: src/pwck.c:473
 msgid "invalid shadow password file entry\n"
 msgstr "nieprawid³owy wpis w pliku z has³ami\n"
 
@@ -1752,7 +1811,7 @@ msgstr "nieprawid
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:516
+#: src/pwck.c:535
 msgid "duplicate shadow password entry\n"
 msgstr "duplikuj±cy siê wpis w pliku z ukrytymi has³ami\n"
 
@@ -1760,21 +1819,21 @@ msgstr "duplikuj
 #. * Tell the user this entry has no matching
 #. * /etc/passwd entry and ask them to delete it.
 #.
-#: src/pwck.c:540
+#: src/pwck.c:559
 msgid "no matching password file entry\n"
 msgstr "brak pasuj±cego wpisu w pliku z has³ami\n"
 
-#: src/pwck.c:557
+#: src/pwck.c:576
 #, c-format
 msgid "user %s: last password change in the future\n"
 msgstr "u¿ytkownik %s: ostatnia zmiana has³a w przysz³o¶ci\n"
 
-#: src/pwconv.c:94 src/pwunconv.c:108
+#: src/pwconv.c:94 src/pwunconv.c:99
 #, c-format
 msgid "%s: can't lock passwd file\n"
 msgstr "%s: nie mogê zablokowaæ pliku z has³ami\n"
 
-#: src/pwconv.c:99 src/pwunconv.c:113
+#: src/pwconv.c:99 src/pwunconv.c:104
 #, c-format
 msgid "%s: can't open passwd file\n"
 msgstr "%s: nie mogê otworzyæ pliku z has³ami\n"
@@ -1799,17 +1858,17 @@ msgstr "%s: nie mog
 msgid "%s: can't update passwd file\n"
 msgstr "%s: nie mogê zaktualizowaæ pliku z has³ami\n"
 
-#: src/pwunconv.c:62
+#: src/pwunconv.c:53
 #, c-format
 msgid "%s: Shadow passwords are not configured.\n"
 msgstr "%s: Przes³oniête has³a nie s± skonfigurowane.\n"
 
-#: src/pwunconv.c:171
+#: src/pwunconv.c:162
 #, c-format
 msgid "%s: can't update entry for user %s\n"
 msgstr "%s: nie mogê zaktualizowaæ wpisu dla u¿ytkownika %s\n"
 
-#: src/pwunconv.c:188
+#: src/pwunconv.c:179
 #, c-format
 msgid "%s: can't delete shadow password file\n"
 msgstr "%s: nie mogê skasowaæ pliku z ukrytymi has³ami\n"
@@ -1823,33 +1882,28 @@ msgstr "Wybacz."
 msgid "%s: must be run from a terminal\n"
 msgstr "%s: musisz uruchamiaæ z terminala\n"
 
-#: src/su.c:311
+#: src/su.c:310
 #, c-format
 msgid "%s: pam_start: error %d\n"
 msgstr "%s: pam_start: b³±d %d\n"
 
-#: src/su.c:337
+#: src/su.c:336
 #, c-format
 msgid "Unknown id: %s\n"
 msgstr "Nieznany id: %s\n"
 
 #. access denied (-1) or unexpected value
-#: src/su.c:372 src/su.c:387
+#: src/su.c:371 src/su.c:386
 #, c-format
 msgid "You are not authorized to su %s\n"
 msgstr "Nie masz autoryzacji by u¿ywaæ su %s\n"
 
 #. require own password
-#: src/su.c:383
+#: src/su.c:382
 msgid "(Enter your own password.)"
 msgstr "(Wpisz swoje w³asne has³o.)"
 
-#: src/su.c:404
-#, c-format
-msgid "%s: permission denied (shell).\n"
-msgstr "%s: dostêp zabroniony (pow³oka).\n"
-
-#: src/su.c:428
+#: src/su.c:413
 #, c-format
 msgid ""
 "%s: %s\n"
@@ -1858,7 +1912,7 @@ msgstr ""
 "%s: %s\n"
 "(Zignorowano)\n"
 
-#: src/su.c:628
+#: src/su.c:615
 msgid "No shell\n"
 msgstr "Brak pow³oki\n"
 
@@ -1894,275 +1948,280 @@ msgstr ""
 msgid "Entering System Maintenance Mode\n"
 msgstr "Wchodzê w tryb utrzymania systemu\n"
 
-#: src/useradd.c:249
+#: src/useradd.c:251
 #, c-format
 msgid "%s: rebuild the group database\n"
 msgstr "%s: przebuduj bazê grup\n"
 
-#: src/useradd.c:256
+#: src/useradd.c:258
 #, c-format
 msgid "%s: rebuild the shadow group database\n"
 msgstr "%s: przebuduj bazê przes³oniêtych hase³\n"
 
-#: src/useradd.c:293 src/usermod.c:973
+#: src/useradd.c:295 src/usermod.c:974
 #, c-format
 msgid "%s: invalid numeric argument `%s'\n"
 msgstr "%s: nieprawid³owy argument numeryczny `%s'\n"
 
-#: src/useradd.c:349
+#: src/useradd.c:351
 #, c-format
 msgid "%s: unknown gid %s\n"
 msgstr "%s: nieznany gid %s\n"
 
-#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260
-#: src/usermod.c:1104
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
 #, c-format
 msgid "%s: unknown group %s\n"
 msgstr "%s: nieznana grupa %s\n"
 
-#: src/useradd.c:424
+#: src/useradd.c:426
 #, c-format
 msgid "group=%s,%ld  basedir=%s  skel=%s\n"
 msgstr "grupa=%s,%ld kat_baz=%s  skel=%s\n"
 
-#: src/useradd.c:427
+#: src/useradd.c:429
 #, c-format
 msgid "shell=%s  "
 msgstr "pow³oka=%s  "
 
-#: src/useradd.c:429
+#: src/useradd.c:431
 #, c-format
 msgid "inactive=%ld  expire=%s"
 msgstr "nieaktywne=%ld  wyga¶niêcie=%s"
 
-#: src/useradd.c:433
+#: src/useradd.c:435
 #, c-format
 msgid "GROUP=%ld\n"
 msgstr "GRUPA=%ld\n"
 
-#: src/useradd.c:434
+#: src/useradd.c:436
 #, c-format
 msgid "HOME=%s\n"
 msgstr "KAT_DOM=%s\n"
 
-#: src/useradd.c:436
+#: src/useradd.c:438
 #, c-format
 msgid "INACTIVE=%ld\n"
 msgstr "NIEAKTYWNE=%ld\n"
 
-#: src/useradd.c:437
+#: src/useradd.c:439
 #, c-format
 msgid "EXPIRE=%s\n"
 msgstr "WYGA¦NIÊCIE=%s\n"
 
-#: src/useradd.c:439
+#: src/useradd.c:441
 #, c-format
 msgid "SHELL=%s\n"
 msgstr "POW£OKA=%s\n"
 
-#: src/useradd.c:440
+#: src/useradd.c:442
 #, c-format
 msgid "SKEL=%s\n"
 msgstr "SKEL=%s\n"
 
-#: src/useradd.c:476
+#: src/useradd.c:482
 #, c-format
 msgid "%s: cannot create new defaults file\n"
 msgstr "%s: nie mogê utworzyæ nowego pliku ze standardowymi ustawieniami\n"
 
-#: src/useradd.c:570 src/useradd.c:581
+#: src/useradd.c:488
+#, fuzzy, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr "%s: nie mogê utworzyæ nowego pliku ze standardowymi ustawieniami\n"
+
+#: src/useradd.c:582 src/useradd.c:593
 #, c-format
 msgid "%s: rename: %s"
 msgstr "%s: zmiana nazwy: %s"
 
-#: src/useradd.c:668 src/usermod.c:280
+#: src/useradd.c:680 src/usermod.c:281
 #, c-format
 msgid "%s: group `%s' is a NIS group.\n"
 msgstr "%s: grupa `%s' jest grup± NIS.\n"
 
-#: src/useradd.c:676 src/usermod.c:288
+#: src/useradd.c:688 src/usermod.c:289
 #, c-format
 msgid "%s: too many groups specified (max %d).\n"
 msgstr "%s: podano zbyt wiele grup (maks %d).\n"
 
-#: src/useradd.c:708 src/usermod.c:320
+#: src/useradd.c:720 src/usermod.c:321
 #, c-format
 msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
 msgstr "u¿ycie: %s\t[-u uid [-o]] [-g grupa] [-G grupa,...] \n"
 
-#: src/useradd.c:711
+#: src/useradd.c:723
 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
 msgstr "\t\t[-d kat_dom] [-s pow³oka] [-c komentarz] [-m [-k wzór]]\n"
 
-#: src/useradd.c:714 src/usermod.c:326
+#: src/useradd.c:726 src/usermod.c:327
 msgid "[-f inactive] [-e expire ] "
 msgstr "[-f nieaktywne] [-e utrata_wa¿no¶ci ]"
 
-#: src/useradd.c:717
+#: src/useradd.c:729
 msgid "[-A program] "
 msgstr "[-A program] "
 
-#: src/useradd.c:719
+#: src/useradd.c:731
 msgid "[-p passwd] name\n"
 msgstr "[-p has³o] nazwa\n"
 
-#: src/useradd.c:721
+#: src/useradd.c:733
 #, c-format
 msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
 msgstr "       %s\t-D [-g grupa] [-b baza] [-s pow³oka]\n"
 
-#: src/useradd.c:724
+#: src/useradd.c:736
 msgid "\t\t[-f inactive] [-e expire ]\n"
 msgstr "\t\t[-f nieaktywne] [-e utrata_wa¿no¶ci ]\n"
 
-#: src/useradd.c:821 src/usermod.c:478
+#: src/useradd.c:833 src/usermod.c:479
 #, c-format
 msgid "%s: error locking group file\n"
 msgstr "%s: b³±d podczas blokowania pliku z grupami\n"
 
-#: src/useradd.c:825 src/usermod.c:483
+#: src/useradd.c:837 src/usermod.c:484
 #, c-format
 msgid "%s: error opening group file\n"
 msgstr "%s: b³±d podczas otwierania pliku z grupami\n"
 
-#: src/useradd.c:830 src/usermod.c:590
+#: src/useradd.c:842 src/usermod.c:591
 #, c-format
 msgid "%s: error locking shadow group file\n"
 msgstr "%s: b³±d podczas blokowania pliku z ukrytymi has³ami\n"
 
-#: src/useradd.c:835 src/usermod.c:596
+#: src/useradd.c:847 src/usermod.c:597
 #, c-format
 msgid "%s: error opening shadow group file\n"
 msgstr "%s: b³±d podczas otwierania pliku z ukrytymi grupami\n"
 
-#: src/useradd.c:1007
+#: src/useradd.c:1019
 #, c-format
 msgid "%s: uid %d is not unique\n"
 msgstr "%s: uid %d nie jest niepowtarzalny\n"
 
-#: src/useradd.c:1037
+#: src/useradd.c:1049
 #, c-format
 msgid "%s: can't get unique uid\n"
 msgstr "%s: nie mogê uzyskaæ niepowtarzalnego uid\n"
 
-#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063
-#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
 #, c-format
 msgid "%s: invalid field `%s'\n"
 msgstr "%s: nieprawid³owe pole `%s'\n"
 
-#: src/useradd.c:1159
+#: src/useradd.c:1171
 #, c-format
 msgid "%s: invalid base directory `%s'\n"
 msgstr "%s: nieprawid³owy katalog bazowy `%s'\n"
 
-#: src/useradd.c:1169
+#: src/useradd.c:1181
 #, c-format
 msgid "%s: invalid comment `%s'\n"
 msgstr "%s: nieprawid³owy komentarz `%s'\n"
 
-#: src/useradd.c:1179
+#: src/useradd.c:1191
 #, c-format
 msgid "%s: invalid home directory `%s'\n"
 msgstr "%s: nieprawid³owy katalog domowy `%s'\n"
 
-#: src/useradd.c:1197 src/usermod.c:1086
+#: src/useradd.c:1209 src/usermod.c:1087
 #, c-format
 msgid "%s: invalid date `%s'\n"
 msgstr "%s: nieprawid³owa data `%s'\n"
 
-#: src/useradd.c:1209
+#: src/useradd.c:1221
 #, c-format
 msgid "%s: shadow passwords required for -e\n"
 msgstr "%s: ukryte has³a wymagane dla -e\n"
 
-#: src/useradd.c:1224
+#: src/useradd.c:1236
 #, c-format
 msgid "%s: shadow passwords required for -f\n"
 msgstr "%s: ukryte has³a wymagane dla -f\n"
 
-#: src/useradd.c:1298
+#: src/useradd.c:1310
 #, c-format
 msgid "%s: invalid shell `%s'\n"
 msgstr "%s: nieprawid³owa pow³oka `%s'\n"
 
-#: src/useradd.c:1339
+#: src/useradd.c:1351
 #, c-format
 msgid "%s: invalid user name `%s'\n"
 msgstr "%s: nieprawid³owa nazwa u¿ytkownika `%s'\n"
 
-#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
 #, c-format
 msgid "%s: cannot rewrite password file\n"
 msgstr "%s: nie mogê przepisaæ pliku z has³ami\n"
 
-#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
 #, c-format
 msgid "%s: cannot rewrite shadow password file\n"
 msgstr "%s: nie mogê przepisaæ pliku z ukrytymi has³ami\n"
 
-#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
 #, c-format
 msgid "%s: unable to lock password file\n"
 msgstr "%s: nie mogê zablokowaæ pliku z has³ami\n"
 
-#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
 #, c-format
 msgid "%s: unable to open password file\n"
 msgstr "%s: nie mogê otworzyæ pliku z has³ami\n"
 
-#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
 #, c-format
 msgid "%s: cannot lock shadow password file\n"
 msgstr "%s: nie mogê zablokowaæ pliku z ukrytymi has³ami\n"
 
-#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
 #, c-format
 msgid "%s: cannot open shadow password file\n"
 msgstr "%s: nie mogê otworzyæ pliku z ukrytymi has³ami\n"
 
-#: src/useradd.c:1535 src/usermod.c:1372
+#: src/useradd.c:1547 src/usermod.c:1373
 #, c-format
 msgid "%s: error adding authentication method\n"
 msgstr "%s: b³±d podczas dodawania metody uwierzytelniania\n"
 
-#: src/useradd.c:1558
+#: src/useradd.c:1570
 #, c-format
 msgid "%s: error adding new password entry\n"
 msgstr "%s: b³±d podczas dodawania nowego wpisu do pliku z has³ami\n"
 
-#: src/useradd.c:1573
+#: src/useradd.c:1585
 #, c-format
 msgid "%s: error updating password dbm entry\n"
 msgstr "%s: b³±d podczas aktualizacji wpisu dbm do pliku z has³ami\n"
 
-#: src/useradd.c:1589 src/usermod.c:1431
+#: src/useradd.c:1601 src/usermod.c:1432
 #, c-format
 msgid "%s: error adding new shadow password entry\n"
 msgstr "%s: b³±d podczas dodawania nowego wpisu do pliku z ukrytymi has³ami\n"
 
-#: src/useradd.c:1605 src/usermod.c:1446
+#: src/useradd.c:1617 src/usermod.c:1447
 #, c-format
 msgid "%s: error updating shadow passwd dbm entry\n"
 msgstr "%s: b³±d podczas aktualizacji wpisu dbm do pliku z ukrytymi has³ami\n"
 
-#: src/useradd.c:1637
+#: src/useradd.c:1649
 #, c-format
 msgid "%s: cannot create directory %s\n"
 msgstr "%s: nie mogê utworzyæ katalogu %s\n"
 
-#: src/useradd.c:1758 src/usermod.c:1209
+#: src/useradd.c:1772 src/usermod.c:1210
 #, c-format
 msgid "%s: user %s exists\n"
 msgstr "%s: u¿ytkownik %s istnieje\n"
 
-#: src/useradd.c:1770
+#: src/useradd.c:1784
 #, c-format
 msgid ""
 "%s: group %s exists - if you want to add this user to that group, use -g.\n"
 msgstr ""
 
-#: src/useradd.c:1801
+#: src/useradd.c:1815
 #, c-format
 msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
 msgstr ""
@@ -2257,12 +2316,12 @@ msgstr "%s: ostrze
 msgid "%s: warning: can't remove "
 msgstr "%s: ostrze¿enie: nie mogê usun±æ "
 
-#: src/userdel.c:791 src/usermod.c:1000
+#: src/userdel.c:791 src/usermod.c:1001
 #, c-format
 msgid "%s: user %s does not exist\n"
 msgstr "%s: u¿ytkownik %s nie istnieje\n"
 
-#: src/userdel.c:805 src/usermod.c:1016
+#: src/userdel.c:805 src/usermod.c:1017
 #, c-format
 msgid "%s: user %s is a NIS user\n"
 msgstr "%s: u¿ytkownik %s jest u¿ytkownikiem NIS\n"
@@ -2282,115 +2341,115 @@ msgstr "%s: nie usuwam katalogu %s (would remove home of user %s)\n"
 msgid "%s: error removing directory %s\n"
 msgstr "%s: b³±d podczas usuwania katalogu %s\n"
 
-#: src/usermod.c:323
+#: src/usermod.c:324
 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
 msgstr "\t\t[-d kat_dom [-m]] [-s pow³oka] [-c komentarz] [-l nowa_nazwa]\n"
 
-#: src/usermod.c:329
+#: src/usermod.c:330
 msgid "[-A {DEFAULT|program},... ] "
 msgstr "[-A {DEFAULT|program},... ] "
 
-#: src/usermod.c:331
+#: src/usermod.c:332
 #, fuzzy
 msgid "[-p passwd] [-L|-U] name\n"
 msgstr "[-p has³o] nazwa\n"
 
-#: src/usermod.c:510
+#: src/usermod.c:511
 #, c-format
 msgid "%s: out of memory in update_group\n"
 msgstr "%s: zabrak³o pamiêci w pdate_group\n"
 
-#: src/usermod.c:633
+#: src/usermod.c:634
 #, c-format
 msgid "%s: out of memory in update_gshadow\n"
 msgstr "%s: zabrak³o pamiêci w update_gshadow\n"
 
-#: src/usermod.c:1186
+#: src/usermod.c:1187
 #, c-format
 msgid "%s: no flags given\n"
 msgstr "%s: nie podano flag\n"
 
-#: src/usermod.c:1193
+#: src/usermod.c:1194
 #, c-format
 msgid "%s: shadow passwords required for -e and -f\n"
 msgstr "%s: ukryte has³a wymagane dla -e i -f\n"
 
-#: src/usermod.c:1214
+#: src/usermod.c:1215
 #, c-format
 msgid "%s: uid %ld is not unique\n"
 msgstr "%s: uid %ld nie jest niepowtarzalny\n"
 
-#: src/usermod.c:1362
+#: src/usermod.c:1363
 #, c-format
 msgid "%s: error deleting authentication method\n"
 msgstr "%s: b³±d podczas usuwania metody uwierzytelniania\n"
 
-#: src/usermod.c:1382
+#: src/usermod.c:1383
 #, c-format
 msgid "%s: error changing authentication method\n"
 msgstr "%s: b³±d podczas zmiany metody uwierzytelniania\n"
 
-#: src/usermod.c:1399
+#: src/usermod.c:1400
 #, c-format
 msgid "%s: error changing password entry\n"
 msgstr "%s: b³±d podczas zmiany wpisu w pliku z has³ami\n"
 
-#: src/usermod.c:1405
+#: src/usermod.c:1406
 #, c-format
 msgid "%s: error removing password entry\n"
 msgstr "%s: b³±d podczas usuwania wpisu z pliku z has³ami\n"
 
-#: src/usermod.c:1413
+#: src/usermod.c:1414
 #, c-format
 msgid "%s: error adding password dbm entry\n"
 msgstr "%s: b³±d podczas dodawania wpisu dbm do pliku z has³ami\n"
 
-#: src/usermod.c:1420
+#: src/usermod.c:1421
 #, c-format
 msgid "%s: error removing passwd dbm entry\n"
 msgstr "%s: b³±d podczas usuwania wpisu dbm z pliku z has³ami\n"
 
-#: src/usermod.c:1437
+#: src/usermod.c:1438
 #, c-format
 msgid "%s: error removing shadow password entry\n"
 msgstr "%s: b³±d podczas usuwania wpisu z pliku z ukrytymi has³ami\n"
 
-#: src/usermod.c:1452
+#: src/usermod.c:1453
 #, c-format
 msgid "%s: error removing shadow passwd dbm entry\n"
 msgstr "%s: b³±d podczas usuwania wpisu dbm z pliku z ukrytymi has³ami\n"
 
-#: src/usermod.c:1483
+#: src/usermod.c:1484
 #, c-format
 msgid "%s: directory %s exists\n"
 msgstr "%s: katalog %s isnieje\n"
 
-#: src/usermod.c:1490
+#: src/usermod.c:1491
 #, c-format
 msgid "%s: can't create %s\n"
 msgstr "%s: nie mogê utworzyæ %s\n"
 
-#: src/usermod.c:1496
+#: src/usermod.c:1497
 #, c-format
 msgid "%s: can't chown %s\n"
 msgstr "%s: nie mogê zmieniæ w³a¶ciciela %s\n"
 
-#: src/usermod.c:1512
+#: src/usermod.c:1513
 #, c-format
 msgid "%s: cannot rename directory %s to %s\n"
 msgstr "%s: nie mogê zmieniæ nazwy katalogu z %s na %s\n"
 
 #. better leave it alone
-#: src/usermod.c:1609
+#: src/usermod.c:1610
 #, c-format
 msgid "%s: warning: %s not owned by %s\n"
 msgstr "%s: ostrze¿enie: w³a¶cicielem %s nie jest %s\n"
 
-#: src/usermod.c:1615
+#: src/usermod.c:1616
 msgid "failed to change mailbox owner"
 msgstr "nie powiod³a siê zmiana w³a¶ciciela skrzynki pocztowej"
 
-#: src/usermod.c:1622
+#: src/usermod.c:1623
 msgid "failed to rename mailbox"
 msgstr "zmiana nazwy skrzynki pocztowej nie powiod³a siê"
 
@@ -2427,6 +2486,9 @@ msgstr ""
 "`vipw' edytuje /etc/passwd      `vipw -s' edytuje /etc/shadow\n"
 "`vigr' edytuje /etc/group       `vigr -s' edytuje /etc/gshadow\n"
 
+#~ msgid "%s: permission denied (shell).\n"
+#~ msgstr "%s: dostêp zabroniony (pow³oka).\n"
+
 #~ msgid "Incorrect password for %s.\n"
 #~ msgstr "Nieprawid³owe has³o dla %s.\n"
 
index cc2224d3f8f96981f706d57f8ed605b57afd51ad..b8e289b34a1f1514bef783bb7ead5f11b0d7c8d7 100644 (file)
@@ -6,13 +6,13 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2000-10-16 23:43+0200\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\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"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
-"Content-Transfer-Encoding: ENCODING\n"
+"Content-Transfer-Encoding: 8bit\n"
 
 #: libmisc/addgrps.c:60
 #, c-format
@@ -56,7 +56,7 @@ msgstr ""
 msgid "Your password will expire today.\n"
 msgstr ""
 
-#: libmisc/chowntty.c:110
+#: libmisc/chowntty.c:113
 #, c-format
 msgid "Unable to change tty %s"
 msgstr ""
@@ -333,9 +333,9 @@ msgstr ""
 msgid "Account Expires:\t"
 msgstr ""
 
-#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322
-#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738
-#: src/usermod.c:1684
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
 #, c-format
 msgid "%s: PAM authentication failed\n"
 msgstr ""
@@ -345,17 +345,17 @@ msgstr ""
 msgid "%s: do not include \"l\" with other flags\n"
 msgstr ""
 
-#: src/chage.c:548 src/chage.c:660 src/login.c:529
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
 #, c-format
 msgid "%s: permission denied\n"
 msgstr ""
 
-#: src/chage.c:560 src/chpasswd.c:170
+#: src/chage.c:560 src/chpasswd.c:157
 #, c-format
 msgid "%s: can't lock password file\n"
 msgstr ""
 
-#: src/chage.c:566 src/chpasswd.c:174
+#: src/chage.c:566 src/chpasswd.c:161
 #, c-format
 msgid "%s: can't open password file\n"
 msgstr ""
@@ -385,12 +385,12 @@ msgstr ""
 msgid "%s: error changing fields\n"
 msgstr ""
 
-#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
 #, c-format
 msgid "%s: can't update password file\n"
 msgstr ""
 
-#: src/chage.c:740 src/pwunconv.c:178
+#: src/chage.c:740 src/pwunconv.c:169
 #, c-format
 msgid "%s: can't update shadow password file\n"
 msgstr ""
@@ -410,9 +410,9 @@ msgstr ""
 msgid "%s: can't rewrite password file\n"
 msgstr ""
 
-#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409
-#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903
-#: src/usermod.c:1762
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
 #, c-format
 msgid "%s: PAM chauthtok failed\n"
 msgstr ""
@@ -552,7 +552,7 @@ msgstr ""
 msgid "Cannot open the password file.\n"
 msgstr ""
 
-#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
 #, c-format
 msgid "%s: %s not found in /etc/passwd\n"
 msgstr ""
@@ -570,53 +570,53 @@ msgstr ""
 msgid "Cannot unlock the password file.\n"
 msgstr ""
 
-#: src/chpasswd.c:82
+#: src/chpasswd.c:69
 #, c-format
 msgid "usage: %s [-e]\n"
 msgstr ""
 
-#: src/chpasswd.c:182 src/pwconv.c:104
+#: src/chpasswd.c:169 src/pwconv.c:104
 #, c-format
 msgid "%s: can't lock shadow file\n"
 msgstr ""
 
-#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118
-#: src/pwunconv.c:123
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
 #, c-format
 msgid "%s: can't open shadow file\n"
 msgstr ""
 
-#: src/chpasswd.c:209 src/newusers.c:465
+#: src/chpasswd.c:196 src/newusers.c:465
 #, c-format
 msgid "%s: line %d: line too long\n"
 msgstr ""
 
-#: src/chpasswd.c:229
+#: src/chpasswd.c:216
 #, c-format
 msgid "%s: line %d: missing new password\n"
 msgstr ""
 
-#: src/chpasswd.c:245
+#: src/chpasswd.c:232
 #, c-format
 msgid "%s: line %d: unknown user %s\n"
 msgstr ""
 
-#: src/chpasswd.c:297
+#: src/chpasswd.c:284
 #, c-format
 msgid "%s: line %d: cannot update password entry\n"
 msgstr ""
 
-#: src/chpasswd.c:313 src/newusers.c:585
+#: src/chpasswd.c:300 src/newusers.c:585
 #, c-format
 msgid "%s: error detected, changes ignored\n"
 msgstr ""
 
-#: src/chpasswd.c:324
+#: src/chpasswd.c:311
 #, c-format
 msgid "%s: error updating shadow file\n"
 msgstr ""
 
-#: src/chpasswd.c:332
+#: src/chpasswd.c:319
 #, c-format
 msgid "%s: error updating password file\n"
 msgstr ""
@@ -702,7 +702,7 @@ msgstr ""
 msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
 msgstr ""
 
-#: src/faillog.c:134 src/lastlog.c:94
+#: src/faillog.c:134 src/lastlog.c:103
 #, c-format
 msgid "Unknown User: %s\n"
 msgstr ""
@@ -878,18 +878,18 @@ msgid "usage: groupadd [-g gid [-o]] group\n"
 msgstr ""
 
 #: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
-#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
 #, c-format
 msgid "%s: error adding new group entry\n"
 msgstr ""
 
-#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948
-#: src/usermod.c:557 src/usermod.c:693
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
 #, c-format
 msgid "%s: cannot add new dbm group entry\n"
 msgstr ""
 
-#: src/groupadd.c:264 src/useradd.c:1002
+#: src/groupadd.c:264 src/useradd.c:1014
 #, c-format
 msgid "%s: name %s is not unique\n"
 msgstr ""
@@ -917,19 +917,19 @@ msgstr ""
 msgid "%s: invalid group %s\n"
 msgstr ""
 
-#: src/groupadd.c:373 src/useradd.c:1278
+#: src/groupadd.c:373 src/useradd.c:1290
 #, c-format
 msgid "%s: -O requires NAME=VALUE\n"
 msgstr ""
 
-#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387
-#: src/userdel.c:309 src/usermod.c:569
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
 #, c-format
 msgid "%s: cannot rewrite group file\n"
 msgstr ""
 
-#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395
-#: src/userdel.c:315 src/usermod.c:706
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
 #, c-format
 msgid "%s: cannot rewrite shadow group file\n"
 msgstr ""
@@ -1001,11 +1001,47 @@ msgstr ""
 msgid "%s: group %s is a NIS group\n"
 msgstr ""
 
-#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
 #, c-format
 msgid "%s: %s is the NIS master\n"
 msgstr ""
 
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+msgid "Unable to lock group file\n"
+msgstr ""
+
+#: src/groupmems.c:209
+msgid "Unable to open group file\n"
+msgstr ""
+
+#: src/groupmems.c:229
+msgid "Cannot close group file\n"
+msgstr ""
+
 #: src/groupmod.c:111
 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
 msgstr ""
@@ -1037,25 +1073,30 @@ msgstr ""
 
 #: src/grpck.c:98
 #, c-format
-msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n"
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
 msgstr ""
 
 #: src/grpck.c:100
 #, c-format
-msgid "Usage: %s [ -r ] [ group ]\n"
+msgid "Usage: %s [ -sr ] [ group ]\n"
 msgstr ""
 
 #: src/grpck.c:119 src/pwck.c:119
 msgid "No"
 msgstr ""
 
-#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
 #, c-format
 msgid "%s: cannot lock file %s\n"
 msgstr ""
 
-#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241
-#: src/pwck.c:250
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
 #, c-format
 msgid "%s: cannot open file %s\n"
 msgstr ""
@@ -1064,13 +1105,13 @@ msgstr ""
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:298
+#: src/grpck.c:317
 msgid "invalid group file entry\n"
 msgstr ""
 
-#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517
-#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517
-#: src/pwck.c:541
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
 #, c-format
 msgid "delete line `%s'? "
 msgstr ""
@@ -1079,26 +1120,26 @@ msgstr ""
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:361
+#: src/grpck.c:380
 msgid "duplicate group entry\n"
 msgstr ""
 
-#: src/grpck.c:378
+#: src/grpck.c:397
 #, c-format
 msgid "invalid group name `%s'\n"
 msgstr ""
 
-#: src/grpck.c:388
+#: src/grpck.c:407
 #, c-format
 msgid "group %s: bad GID (%d)\n"
 msgstr ""
 
-#: src/grpck.c:414
+#: src/grpck.c:433
 #, c-format
 msgid "group %s: no user %s\n"
 msgstr ""
 
-#: src/grpck.c:416 src/grpck.c:585
+#: src/grpck.c:435 src/grpck.c:604
 #, c-format
 msgid "delete member `%s'? "
 msgstr ""
@@ -1107,7 +1148,7 @@ msgstr ""
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:453
+#: src/grpck.c:472
 msgid "invalid shadow group file entry\n"
 msgstr ""
 
@@ -1115,45 +1156,45 @@ msgstr ""
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:516
+#: src/grpck.c:535
 msgid "duplicate shadow group entry\n"
 msgstr ""
 
-#: src/grpck.c:533
+#: src/grpck.c:552
 msgid "no matching group file entry\n"
 msgstr ""
 
-#: src/grpck.c:553
+#: src/grpck.c:572
 #, c-format
 msgid "shadow group %s: no administrative user %s\n"
 msgstr ""
 
-#: src/grpck.c:555
+#: src/grpck.c:574
 #, c-format
 msgid "delete administrative member `%s'? "
 msgstr ""
 
-#: src/grpck.c:583
+#: src/grpck.c:602
 #, c-format
 msgid "shadow group %s: no user %s\n"
 msgstr ""
 
-#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
 #, c-format
 msgid "%s: cannot update file %s\n"
 msgstr ""
 
-#: src/grpck.c:640 src/pwck.c:606
+#: src/grpck.c:660 src/pwck.c:626
 #, c-format
 msgid "%s: the files have been updated; run mkpasswd\n"
 msgstr ""
 
-#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
 #, c-format
 msgid "%s: no changes\n"
 msgstr ""
 
-#: src/grpck.c:644 src/pwck.c:610
+#: src/grpck.c:664 src/pwck.c:630
 #, c-format
 msgid "%s: the files have been updated\n"
 msgstr ""
@@ -1224,42 +1265,42 @@ msgstr ""
 msgid "usage: id\n"
 msgstr ""
 
-#: src/id.c:118
+#: src/id.c:127
 #, c-format
 msgid "uid=%d(%s)"
 msgstr ""
 
-#: src/id.c:120
+#: src/id.c:129
 #, c-format
 msgid "uid=%d"
 msgstr ""
 
-#: src/id.c:124
+#: src/id.c:133
 #, c-format
 msgid " gid=%d(%s)"
 msgstr ""
 
-#: src/id.c:126
+#: src/id.c:135
 #, c-format
 msgid " gid=%d"
 msgstr ""
 
-#: src/id.c:136
+#: src/id.c:145
 #, c-format
 msgid " euid=%d(%s)"
 msgstr ""
 
-#: src/id.c:138
+#: src/id.c:147
 #, c-format
 msgid " euid=%d"
 msgstr ""
 
-#: src/id.c:143
+#: src/id.c:152
 #, c-format
 msgid " egid=%d(%s)"
 msgstr ""
 
-#: src/id.c:145
+#: src/id.c:154
 #, c-format
 msgid " egid=%d"
 msgstr ""
@@ -1272,105 +1313,110 @@ msgstr ""
 #. * where "###" is a numerical value and "aaa" is the
 #. * corresponding name for each respective numerical value.
 #.
-#: src/id.c:166
+#: src/id.c:175
 msgid " groups="
 msgstr ""
 
-#: src/lastlog.c:167
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
 msgid "Username         Port     From             Latest\n"
 msgstr ""
 
-#: src/lastlog.c:169
+#: src/lastlog.c:186
 msgid "Username                Port     Latest\n"
 msgstr ""
 
-#: src/lastlog.c:183
+#: src/lastlog.c:200
 msgid "**Never logged in**"
 msgstr ""
 
-#: src/login.c:198
+#: src/login.c:201
 #, c-format
 msgid "usage: %s [-p] [name]\n"
 msgstr ""
 
-#: src/login.c:201
+#: src/login.c:204
 #, c-format
 msgid "       %s [-p] [-h host] [-f name]\n"
 msgstr ""
 
-#: src/login.c:203
+#: src/login.c:206
 #, c-format
 msgid "       %s [-p] -r host\n"
 msgstr ""
 
-#: src/login.c:286
+#: src/login.c:289
 msgid "Invalid login time\n"
 msgstr ""
 
-#: src/login.c:341
+#: src/login.c:344
 msgid ""
 "\n"
 "System closed for routine maintenance\n"
 msgstr ""
 
-#: src/login.c:351
+#: src/login.c:354
 msgid ""
 "\n"
 "[Disconnect bypassed -- root login allowed.]\n"
 msgstr ""
 
-#: src/login.c:390
+#: src/login.c:393
 #, c-format
 msgid ""
 "\n"
 "Login timed out after %d seconds.\n"
 msgstr ""
 
-#: src/login.c:692
+#: src/login.c:695
 #, c-format
 msgid " on `%.100s' from `%.200s'"
 msgstr ""
 
-#: src/login.c:694
+#: src/login.c:697
 #, c-format
 msgid " on `%.100s'"
 msgstr ""
 
-#: src/login.c:834
+#: src/login.c:837
 #, c-format
 msgid ""
 "\n"
 "%s login: "
 msgstr ""
 
-#: src/login.c:836
+#: src/login.c:839
 msgid "login: "
 msgstr ""
 
-#: src/login.c:1026 src/sulogin.c:231
+#: src/login.c:1029 src/sulogin.c:231
 msgid "Login incorrect"
 msgstr ""
 
-#: src/login.c:1213
+#: src/login.c:1217
 msgid "Warning: login re-enabled after temporary lockout.\n"
 msgstr ""
 
-#: src/login.c:1223
+#: src/login.c:1227
 #, c-format
 msgid "Last login: %s on %s"
 msgstr ""
 
-#: src/login.c:1226
+#: src/login.c:1230
 #, c-format
 msgid "Last login: %.19s on %s"
 msgstr ""
 
-#: src/login.c:1231
+#: src/login.c:1235
 #, c-format
 msgid " from %.*s"
 msgstr ""
 
-#: src/login.c:1303
+#: src/login.c:1307
 msgid "Starting rad_login\n"
 msgstr ""
 
@@ -1379,6 +1425,21 @@ msgstr ""
 msgid "%s: no DBM database on system - no action performed\n"
 msgstr ""
 
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr ""
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr ""
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr ""
+
 #: src/mkpasswd.c:245 src/mkpasswd.c:249
 #, c-format
 msgid "%s: cannot overwrite file %s\n"
@@ -1394,6 +1455,10 @@ msgstr ""
 msgid "%s: the beginning with "
 msgstr ""
 
+#: src/mkpasswd.c:296
+msgid " is too long\n"
+msgstr ""
+
 #: src/mkpasswd.c:321
 #, c-format
 msgid "%s: error parsing line \"%s\"\n"
@@ -1403,6 +1468,11 @@ msgstr ""
 msgid "adding record for name "
 msgstr ""
 
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
 #: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
 #, c-format
 msgid "%s: error adding record for "
@@ -1413,21 +1483,6 @@ msgstr ""
 msgid "added %d entries, longest was %d\n"
 msgstr ""
 
-#: src/mkpasswd.c:382
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
-msgstr ""
-
-#: src/mkpasswd.c:384
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
-msgstr ""
-
-#: src/mkpasswd.c:387
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
-msgstr ""
-
 #: src/newgrp.c:66
 msgid "usage: newgrp [ - ] [ group ]\n"
 msgstr ""
@@ -1654,19 +1709,19 @@ msgstr ""
 
 #: src/pwck.c:98
 #, c-format
-msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
 msgstr ""
 
 #: src/pwck.c:100
 #, c-format
-msgid "Usage: %s [ -qr ] [ passwd ]\n"
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
 msgstr ""
 
 #.
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:285
+#: src/pwck.c:304
 msgid "invalid password file entry\n"
 msgstr ""
 
@@ -1674,16 +1729,16 @@ msgstr ""
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:347
+#: src/pwck.c:366
 msgid "duplicate password entry\n"
 msgstr ""
 
-#: src/pwck.c:363
+#: src/pwck.c:382
 #, c-format
 msgid "invalid user name `%s'\n"
 msgstr ""
 
-#: src/pwck.c:373
+#: src/pwck.c:392
 #, c-format
 msgid "user %s: bad UID (%d)\n"
 msgstr ""
@@ -1691,7 +1746,7 @@ msgstr ""
 #.
 #. * No primary group, just give a warning
 #.
-#: src/pwck.c:388
+#: src/pwck.c:407
 #, c-format
 msgid "user %s: no group %d\n"
 msgstr ""
@@ -1699,7 +1754,7 @@ msgstr ""
 #.
 #. * Home directory doesn't exist, give a warning
 #.
-#: src/pwck.c:403
+#: src/pwck.c:422
 #, c-format
 msgid "user %s: directory %s does not exist\n"
 msgstr ""
@@ -1707,7 +1762,7 @@ msgstr ""
 #.
 #. * Login shell doesn't exist, give a warning
 #.
-#: src/pwck.c:418
+#: src/pwck.c:437
 #, c-format
 msgid "user %s: program %s does not exist\n"
 msgstr ""
@@ -1716,7 +1771,7 @@ msgstr ""
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:454
+#: src/pwck.c:473
 msgid "invalid shadow password file entry\n"
 msgstr ""
 
@@ -1724,7 +1779,7 @@ msgstr ""
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:516
+#: src/pwck.c:535
 msgid "duplicate shadow password entry\n"
 msgstr ""
 
@@ -1732,21 +1787,21 @@ msgstr ""
 #. * Tell the user this entry has no matching
 #. * /etc/passwd entry and ask them to delete it.
 #.
-#: src/pwck.c:540
+#: src/pwck.c:559
 msgid "no matching password file entry\n"
 msgstr ""
 
-#: src/pwck.c:557
+#: src/pwck.c:576
 #, c-format
 msgid "user %s: last password change in the future\n"
 msgstr ""
 
-#: src/pwconv.c:94 src/pwunconv.c:108
+#: src/pwconv.c:94 src/pwunconv.c:99
 #, c-format
 msgid "%s: can't lock passwd file\n"
 msgstr ""
 
-#: src/pwconv.c:99 src/pwunconv.c:113
+#: src/pwconv.c:99 src/pwunconv.c:104
 #, c-format
 msgid "%s: can't open passwd file\n"
 msgstr ""
@@ -1771,17 +1826,17 @@ msgstr ""
 msgid "%s: can't update passwd file\n"
 msgstr ""
 
-#: src/pwunconv.c:62
+#: src/pwunconv.c:53
 #, c-format
 msgid "%s: Shadow passwords are not configured.\n"
 msgstr ""
 
-#: src/pwunconv.c:171
+#: src/pwunconv.c:162
 #, c-format
 msgid "%s: can't update entry for user %s\n"
 msgstr ""
 
-#: src/pwunconv.c:188
+#: src/pwunconv.c:179
 #, c-format
 msgid "%s: can't delete shadow password file\n"
 msgstr ""
@@ -1795,40 +1850,35 @@ msgstr ""
 msgid "%s: must be run from a terminal\n"
 msgstr ""
 
-#: src/su.c:311
+#: src/su.c:310
 #, c-format
 msgid "%s: pam_start: error %d\n"
 msgstr ""
 
-#: src/su.c:337
+#: src/su.c:336
 #, c-format
 msgid "Unknown id: %s\n"
 msgstr ""
 
 #. access denied (-1) or unexpected value
-#: src/su.c:372 src/su.c:387
+#: src/su.c:371 src/su.c:386
 #, c-format
 msgid "You are not authorized to su %s\n"
 msgstr ""
 
 #. require own password
-#: src/su.c:383
+#: src/su.c:382
 msgid "(Enter your own password.)"
 msgstr ""
 
-#: src/su.c:404
-#, c-format
-msgid "%s: permission denied (shell).\n"
-msgstr ""
-
-#: src/su.c:428
+#: src/su.c:413
 #, c-format
 msgid ""
 "%s: %s\n"
 "(Ignored)\n"
 msgstr ""
 
-#: src/su.c:628
+#: src/su.c:615
 msgid "No shell\n"
 msgstr ""
 
@@ -1861,275 +1911,280 @@ msgstr ""
 msgid "Entering System Maintenance Mode\n"
 msgstr ""
 
-#: src/useradd.c:249
+#: src/useradd.c:251
 #, c-format
 msgid "%s: rebuild the group database\n"
 msgstr ""
 
-#: src/useradd.c:256
+#: src/useradd.c:258
 #, c-format
 msgid "%s: rebuild the shadow group database\n"
 msgstr ""
 
-#: src/useradd.c:293 src/usermod.c:973
+#: src/useradd.c:295 src/usermod.c:974
 #, c-format
 msgid "%s: invalid numeric argument `%s'\n"
 msgstr ""
 
-#: src/useradd.c:349
+#: src/useradd.c:351
 #, c-format
 msgid "%s: unknown gid %s\n"
 msgstr ""
 
-#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260
-#: src/usermod.c:1104
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
 #, c-format
 msgid "%s: unknown group %s\n"
 msgstr ""
 
-#: src/useradd.c:424
+#: src/useradd.c:426
 #, c-format
 msgid "group=%s,%ld  basedir=%s  skel=%s\n"
 msgstr ""
 
-#: src/useradd.c:427
+#: src/useradd.c:429
 #, c-format
 msgid "shell=%s  "
 msgstr ""
 
-#: src/useradd.c:429
+#: src/useradd.c:431
 #, c-format
 msgid "inactive=%ld  expire=%s"
 msgstr ""
 
-#: src/useradd.c:433
+#: src/useradd.c:435
 #, c-format
 msgid "GROUP=%ld\n"
 msgstr ""
 
-#: src/useradd.c:434
+#: src/useradd.c:436
 #, c-format
 msgid "HOME=%s\n"
 msgstr ""
 
-#: src/useradd.c:436
+#: src/useradd.c:438
 #, c-format
 msgid "INACTIVE=%ld\n"
 msgstr ""
 
-#: src/useradd.c:437
+#: src/useradd.c:439
 #, c-format
 msgid "EXPIRE=%s\n"
 msgstr ""
 
-#: src/useradd.c:439
+#: src/useradd.c:441
 #, c-format
 msgid "SHELL=%s\n"
 msgstr ""
 
-#: src/useradd.c:440
+#: src/useradd.c:442
 #, c-format
 msgid "SKEL=%s\n"
 msgstr ""
 
-#: src/useradd.c:476
+#: src/useradd.c:482
 #, c-format
 msgid "%s: cannot create new defaults file\n"
 msgstr ""
 
-#: src/useradd.c:570 src/useradd.c:581
+#: src/useradd.c:488
+#, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr ""
+
+#: src/useradd.c:582 src/useradd.c:593
 #, c-format
 msgid "%s: rename: %s"
 msgstr ""
 
-#: src/useradd.c:668 src/usermod.c:280
+#: src/useradd.c:680 src/usermod.c:281
 #, c-format
 msgid "%s: group `%s' is a NIS group.\n"
 msgstr ""
 
-#: src/useradd.c:676 src/usermod.c:288
+#: src/useradd.c:688 src/usermod.c:289
 #, c-format
 msgid "%s: too many groups specified (max %d).\n"
 msgstr ""
 
-#: src/useradd.c:708 src/usermod.c:320
+#: src/useradd.c:720 src/usermod.c:321
 #, c-format
 msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
 msgstr ""
 
-#: src/useradd.c:711
+#: src/useradd.c:723
 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
 msgstr ""
 
-#: src/useradd.c:714 src/usermod.c:326
+#: src/useradd.c:726 src/usermod.c:327
 msgid "[-f inactive] [-e expire ] "
 msgstr ""
 
-#: src/useradd.c:717
+#: src/useradd.c:729
 msgid "[-A program] "
 msgstr ""
 
-#: src/useradd.c:719
+#: src/useradd.c:731
 msgid "[-p passwd] name\n"
 msgstr ""
 
-#: src/useradd.c:721
+#: src/useradd.c:733
 #, c-format
 msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
 msgstr ""
 
-#: src/useradd.c:724
+#: src/useradd.c:736
 msgid "\t\t[-f inactive] [-e expire ]\n"
 msgstr ""
 
-#: src/useradd.c:821 src/usermod.c:478
+#: src/useradd.c:833 src/usermod.c:479
 #, c-format
 msgid "%s: error locking group file\n"
 msgstr ""
 
-#: src/useradd.c:825 src/usermod.c:483
+#: src/useradd.c:837 src/usermod.c:484
 #, c-format
 msgid "%s: error opening group file\n"
 msgstr ""
 
-#: src/useradd.c:830 src/usermod.c:590
+#: src/useradd.c:842 src/usermod.c:591
 #, c-format
 msgid "%s: error locking shadow group file\n"
 msgstr ""
 
-#: src/useradd.c:835 src/usermod.c:596
+#: src/useradd.c:847 src/usermod.c:597
 #, c-format
 msgid "%s: error opening shadow group file\n"
 msgstr ""
 
-#: src/useradd.c:1007
+#: src/useradd.c:1019
 #, c-format
 msgid "%s: uid %d is not unique\n"
 msgstr ""
 
-#: src/useradd.c:1037
+#: src/useradd.c:1049
 #, c-format
 msgid "%s: can't get unique uid\n"
 msgstr ""
 
-#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063
-#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
 #, c-format
 msgid "%s: invalid field `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1159
+#: src/useradd.c:1171
 #, c-format
 msgid "%s: invalid base directory `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1169
+#: src/useradd.c:1181
 #, c-format
 msgid "%s: invalid comment `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1179
+#: src/useradd.c:1191
 #, c-format
 msgid "%s: invalid home directory `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1197 src/usermod.c:1086
+#: src/useradd.c:1209 src/usermod.c:1087
 #, c-format
 msgid "%s: invalid date `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1209
+#: src/useradd.c:1221
 #, c-format
 msgid "%s: shadow passwords required for -e\n"
 msgstr ""
 
-#: src/useradd.c:1224
+#: src/useradd.c:1236
 #, c-format
 msgid "%s: shadow passwords required for -f\n"
 msgstr ""
 
-#: src/useradd.c:1298
+#: src/useradd.c:1310
 #, c-format
 msgid "%s: invalid shell `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1339
+#: src/useradd.c:1351
 #, c-format
 msgid "%s: invalid user name `%s'\n"
 msgstr ""
 
-#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
 #, c-format
 msgid "%s: cannot rewrite password file\n"
 msgstr ""
 
-#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
 #, c-format
 msgid "%s: cannot rewrite shadow password file\n"
 msgstr ""
 
-#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
 #, c-format
 msgid "%s: unable to lock password file\n"
 msgstr ""
 
-#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
 #, c-format
 msgid "%s: unable to open password file\n"
 msgstr ""
 
-#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
 #, c-format
 msgid "%s: cannot lock shadow password file\n"
 msgstr ""
 
-#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
 #, c-format
 msgid "%s: cannot open shadow password file\n"
 msgstr ""
 
-#: src/useradd.c:1535 src/usermod.c:1372
+#: src/useradd.c:1547 src/usermod.c:1373
 #, c-format
 msgid "%s: error adding authentication method\n"
 msgstr ""
 
-#: src/useradd.c:1558
+#: src/useradd.c:1570
 #, c-format
 msgid "%s: error adding new password entry\n"
 msgstr ""
 
-#: src/useradd.c:1573
+#: src/useradd.c:1585
 #, c-format
 msgid "%s: error updating password dbm entry\n"
 msgstr ""
 
-#: src/useradd.c:1589 src/usermod.c:1431
+#: src/useradd.c:1601 src/usermod.c:1432
 #, c-format
 msgid "%s: error adding new shadow password entry\n"
 msgstr ""
 
-#: src/useradd.c:1605 src/usermod.c:1446
+#: src/useradd.c:1617 src/usermod.c:1447
 #, c-format
 msgid "%s: error updating shadow passwd dbm entry\n"
 msgstr ""
 
-#: src/useradd.c:1637
+#: src/useradd.c:1649
 #, c-format
 msgid "%s: cannot create directory %s\n"
 msgstr ""
 
-#: src/useradd.c:1758 src/usermod.c:1209
+#: src/useradd.c:1772 src/usermod.c:1210
 #, c-format
 msgid "%s: user %s exists\n"
 msgstr ""
 
-#: src/useradd.c:1770
+#: src/useradd.c:1784
 #, c-format
 msgid ""
 "%s: group %s exists - if you want to add this user to that group, use -g.\n"
 msgstr ""
 
-#: src/useradd.c:1801
+#: src/useradd.c:1815
 #, c-format
 msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
 msgstr ""
@@ -2224,12 +2279,12 @@ msgstr ""
 msgid "%s: warning: can't remove "
 msgstr ""
 
-#: src/userdel.c:791 src/usermod.c:1000
+#: src/userdel.c:791 src/usermod.c:1001
 #, c-format
 msgid "%s: user %s does not exist\n"
 msgstr ""
 
-#: src/userdel.c:805 src/usermod.c:1016
+#: src/userdel.c:805 src/usermod.c:1017
 #, c-format
 msgid "%s: user %s is a NIS user\n"
 msgstr ""
@@ -2249,114 +2304,114 @@ msgstr ""
 msgid "%s: error removing directory %s\n"
 msgstr ""
 
-#: src/usermod.c:323
+#: src/usermod.c:324
 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
 msgstr ""
 
-#: src/usermod.c:329
+#: src/usermod.c:330
 msgid "[-A {DEFAULT|program},... ] "
 msgstr ""
 
-#: src/usermod.c:331
+#: src/usermod.c:332
 msgid "[-p passwd] [-L|-U] name\n"
 msgstr ""
 
-#: src/usermod.c:510
+#: src/usermod.c:511
 #, c-format
 msgid "%s: out of memory in update_group\n"
 msgstr ""
 
-#: src/usermod.c:633
+#: src/usermod.c:634
 #, c-format
 msgid "%s: out of memory in update_gshadow\n"
 msgstr ""
 
-#: src/usermod.c:1186
+#: src/usermod.c:1187
 #, c-format
 msgid "%s: no flags given\n"
 msgstr ""
 
-#: src/usermod.c:1193
+#: src/usermod.c:1194
 #, c-format
 msgid "%s: shadow passwords required for -e and -f\n"
 msgstr ""
 
-#: src/usermod.c:1214
+#: src/usermod.c:1215
 #, c-format
 msgid "%s: uid %ld is not unique\n"
 msgstr ""
 
-#: src/usermod.c:1362
+#: src/usermod.c:1363
 #, c-format
 msgid "%s: error deleting authentication method\n"
 msgstr ""
 
-#: src/usermod.c:1382
+#: src/usermod.c:1383
 #, c-format
 msgid "%s: error changing authentication method\n"
 msgstr ""
 
-#: src/usermod.c:1399
+#: src/usermod.c:1400
 #, c-format
 msgid "%s: error changing password entry\n"
 msgstr ""
 
-#: src/usermod.c:1405
+#: src/usermod.c:1406
 #, c-format
 msgid "%s: error removing password entry\n"
 msgstr ""
 
-#: src/usermod.c:1413
+#: src/usermod.c:1414
 #, c-format
 msgid "%s: error adding password dbm entry\n"
 msgstr ""
 
-#: src/usermod.c:1420
+#: src/usermod.c:1421
 #, c-format
 msgid "%s: error removing passwd dbm entry\n"
 msgstr ""
 
-#: src/usermod.c:1437
+#: src/usermod.c:1438
 #, c-format
 msgid "%s: error removing shadow password entry\n"
 msgstr ""
 
-#: src/usermod.c:1452
+#: src/usermod.c:1453
 #, c-format
 msgid "%s: error removing shadow passwd dbm entry\n"
 msgstr ""
 
-#: src/usermod.c:1483
+#: src/usermod.c:1484
 #, c-format
 msgid "%s: directory %s exists\n"
 msgstr ""
 
-#: src/usermod.c:1490
+#: src/usermod.c:1491
 #, c-format
 msgid "%s: can't create %s\n"
 msgstr ""
 
-#: src/usermod.c:1496
+#: src/usermod.c:1497
 #, c-format
 msgid "%s: can't chown %s\n"
 msgstr ""
 
-#: src/usermod.c:1512
+#: src/usermod.c:1513
 #, c-format
 msgid "%s: cannot rename directory %s to %s\n"
 msgstr ""
 
 #. better leave it alone
-#: src/usermod.c:1609
+#: src/usermod.c:1610
 #, c-format
 msgid "%s: warning: %s not owned by %s\n"
 msgstr ""
 
-#: src/usermod.c:1615
+#: src/usermod.c:1616
 msgid "failed to change mailbox owner"
 msgstr ""
 
-#: src/usermod.c:1622
+#: src/usermod.c:1623
 msgid "failed to rename mailbox"
 msgstr ""
 
diff --git a/po/stamp-cat-id b/po/stamp-cat-id
deleted file mode 100644 (file)
index 9788f70..0000000
+++ /dev/null
@@ -1 +0,0 @@
-timestamp
index cc42273e0097a4a51f469cd7abe7aeab9ac4f79f..27340790d95ee36d185f2875f6acf33359711512 100644 (file)
Binary files a/po/sv.gmo and b/po/sv.gmo differ
index 2a4a298953d35e298762caac50373b8955b20285..26c2f8bcb6d00cba42099f76b5048967f9b22575 100644 (file)
--- a/po/sv.po
+++ b/po/sv.po
@@ -6,7 +6,7 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: shadow 19990709\n"
-"POT-Creation-Date: 2000-10-16 23:43+0200\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\n"
 "PO-Revision-Date: 1999-08-16 21:20+0100\n"
 "Last-Translator: Kristoffer Brånemyr <ztion@swipnet.se>\n"
 "Language-Team: sv <sv@li.org>\n"
@@ -56,7 +56,7 @@ msgstr "Ditt l
 msgid "Your password will expire today.\n"
 msgstr "Ditt lösenord upphör idag.\n"
 
-#: libmisc/chowntty.c:110
+#: libmisc/chowntty.c:113
 #, c-format
 msgid "Unable to change tty %s"
 msgstr "Kunde inte byta tty %s"
@@ -342,9 +342,9 @@ msgstr "L
 msgid "Account Expires:\t"
 msgstr "Lösenordet upphör:\t"
 
-#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322
-#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738
-#: src/usermod.c:1684
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
 #, fuzzy, c-format
 msgid "%s: PAM authentication failed\n"
 msgstr "%s: fel under tillägning av metod för äkthetsbevisning\n"
@@ -354,17 +354,17 @@ msgstr "%s: fel under till
 msgid "%s: do not include \"l\" with other flags\n"
 msgstr "%s: inkludera inte \"l\" tillsammands med andra flaggor\n"
 
-#: src/chage.c:548 src/chage.c:660 src/login.c:529
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
 #, c-format
 msgid "%s: permission denied\n"
 msgstr "%s: tillåtelse nekas\n"
 
-#: src/chage.c:560 src/chpasswd.c:170
+#: src/chage.c:560 src/chpasswd.c:157
 #, c-format
 msgid "%s: can't lock password file\n"
 msgstr "%s: kan inte låsa lösenordsfilen\n"
 
-#: src/chage.c:566 src/chpasswd.c:174
+#: src/chage.c:566 src/chpasswd.c:161
 #, c-format
 msgid "%s: can't open password file\n"
 msgstr "%s: kan inte öppna lösenordsfilen\n"
@@ -394,12 +394,12 @@ msgstr "
 msgid "%s: error changing fields\n"
 msgstr "%s: fel uppstod under byte av fält\n"
 
-#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
 #, c-format
 msgid "%s: can't update password file\n"
 msgstr "%s: kan inte uppdatera lösenordsfilen\n"
 
-#: src/chage.c:740 src/pwunconv.c:178
+#: src/chage.c:740 src/pwunconv.c:169
 #, c-format
 msgid "%s: can't update shadow password file\n"
 msgstr "%s: kan inte uppdatera skugglösenordsfilen\n"
@@ -419,9 +419,9 @@ msgstr "%s: kan inte skriva om skuggl
 msgid "%s: can't rewrite password file\n"
 msgstr "%s: kan inte skriva om lösenordsfilen\n"
 
-#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409
-#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903
-#: src/usermod.c:1762
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
 #, fuzzy, c-format
 msgid "%s: PAM chauthtok failed\n"
 msgstr "%s: kan inte låsa upp filen\n"
@@ -565,7 +565,7 @@ msgstr "Kan inte l
 msgid "Cannot open the password file.\n"
 msgstr "Kan inte öppna lösenordsfilen.\n"
 
-#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
 #, c-format
 msgid "%s: %s not found in /etc/passwd\n"
 msgstr "%s: %s hittades inte i /etc/passwd\n"
@@ -583,53 +583,53 @@ msgstr "Kan inte genomf
 msgid "Cannot unlock the password file.\n"
 msgstr "Kan inte låsa upp lösenordsfilen.\n"
 
-#: src/chpasswd.c:82
+#: src/chpasswd.c:69
 #, c-format
 msgid "usage: %s [-e]\n"
 msgstr "Användning: %s [-e]\n"
 
-#: src/chpasswd.c:182 src/pwconv.c:104
+#: src/chpasswd.c:169 src/pwconv.c:104
 #, c-format
 msgid "%s: can't lock shadow file\n"
 msgstr "%s: kan inte låsa skuggfilen\n"
 
-#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118
-#: src/pwunconv.c:123
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
 #, c-format
 msgid "%s: can't open shadow file\n"
 msgstr "%s: kan inte öppna skuggfilen\n"
 
-#: src/chpasswd.c:209 src/newusers.c:465
+#: src/chpasswd.c:196 src/newusers.c:465
 #, c-format
 msgid "%s: line %d: line too long\n"
 msgstr "%s: rad %d: för lång rad\n"
 
-#: src/chpasswd.c:229
+#: src/chpasswd.c:216
 #, c-format
 msgid "%s: line %d: missing new password\n"
 msgstr "%s: rad %d: det nya lösenordet saknas\n"
 
-#: src/chpasswd.c:245
+#: src/chpasswd.c:232
 #, c-format
 msgid "%s: line %d: unknown user %s\n"
 msgstr "%s: rad %d: okänd användare %s\n"
 
-#: src/chpasswd.c:297
+#: src/chpasswd.c:284
 #, c-format
 msgid "%s: line %d: cannot update password entry\n"
 msgstr "%s: rad %d: kan inte uppdatera lösenordsnoteringen\n"
 
-#: src/chpasswd.c:313 src/newusers.c:585
+#: src/chpasswd.c:300 src/newusers.c:585
 #, c-format
 msgid "%s: error detected, changes ignored\n"
 msgstr "%s: fel upptäcktes, ändringarna ignorerades\n"
 
-#: src/chpasswd.c:324
+#: src/chpasswd.c:311
 #, c-format
 msgid "%s: error updating shadow file\n"
 msgstr "%s: fel under uppdatering av skuggfilen\n"
 
-#: src/chpasswd.c:332
+#: src/chpasswd.c:319
 #, c-format
 msgid "%s: error updating password file\n"
 msgstr "%s: fel under uppdatering av lösenordsfilen\n"
@@ -716,7 +716,7 @@ msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
 msgstr ""
 "Användning: %s [-a|-u användare] [-m högst] [-r] [-t dagar] [-l låssek]\n"
 
-#: src/faillog.c:134 src/lastlog.c:94
+#: src/faillog.c:134 src/lastlog.c:103
 #, c-format
 msgid "Unknown User: %s\n"
 msgstr "Okänd användare: %s\n"
@@ -892,18 +892,18 @@ msgid "usage: groupadd [-g gid [-o]] group\n"
 msgstr "Användning: groupadd [-g gid [-o]] grupp\n"
 
 #: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
-#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
 #, c-format
 msgid "%s: error adding new group entry\n"
 msgstr "%s: gick inte att lägga till en ny gruppnotering\n"
 
-#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948
-#: src/usermod.c:557 src/usermod.c:693
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
 #, c-format
 msgid "%s: cannot add new dbm group entry\n"
 msgstr "%s: kan inte lägga till en ny dbm-gruppnotering\n"
 
-#: src/groupadd.c:264 src/useradd.c:1002
+#: src/groupadd.c:264 src/useradd.c:1014
 #, c-format
 msgid "%s: name %s is not unique\n"
 msgstr "%s: namnet %s är inte unikt\n"
@@ -931,19 +931,19 @@ msgstr "%s: %s 
 msgid "%s: invalid group %s\n"
 msgstr "%s: ogiltig grupp %s\n"
 
-#: src/groupadd.c:373 src/useradd.c:1278
+#: src/groupadd.c:373 src/useradd.c:1290
 #, c-format
 msgid "%s: -O requires NAME=VALUE\n"
 msgstr "%s: -O kräver NAME=VÄRDE\n"
 
-#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387
-#: src/userdel.c:309 src/usermod.c:569
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
 #, c-format
 msgid "%s: cannot rewrite group file\n"
 msgstr "%s: kan inte skriva om gruppfilen\n"
 
-#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395
-#: src/userdel.c:315 src/usermod.c:706
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
 #, c-format
 msgid "%s: cannot rewrite shadow group file\n"
 msgstr "%s: kan inte skriva om skuggruppfilen\n"
@@ -1015,11 +1015,50 @@ msgstr "%s: grupp %s existerar inte\n"
 msgid "%s: group %s is a NIS group\n"
 msgstr "%s: grupp %s är en NIS-grupp\n"
 
-#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
 #, c-format
 msgid "%s: %s is the NIS master\n"
 msgstr "%s: %s är NIS-mästeren\n"
 
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+#, fuzzy
+msgid "Unable to lock group file\n"
+msgstr "%s: kan inte låsa gruppfilen\n"
+
+#: src/groupmems.c:209
+#, fuzzy
+msgid "Unable to open group file\n"
+msgstr "%s: kan inte öppna gruppfilen\n"
+
+#: src/groupmems.c:229
+#, fuzzy
+msgid "Cannot close group file\n"
+msgstr "%s: kan inte öppna gruppfilen\n"
+
 #: src/groupmod.c:111
 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
 msgstr "Användning: groupmod [-g gid [-o]] [-n namn] grupp\n"
@@ -1050,26 +1089,31 @@ msgid "unknown user %s\n"
 msgstr "okänd användare %s\n"
 
 #: src/grpck.c:98
-#, c-format
-msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
 msgstr "Användning: %s [ -r ] [ grupp [ gshadow ] ]\n"
 
 #: src/grpck.c:100
-#, c-format
-msgid "Usage: %s [ -r ] [ group ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group ]\n"
 msgstr "Användning: %s [ -r ] [ grupp ]\n"
 
 #: src/grpck.c:119 src/pwck.c:119
 msgid "No"
 msgstr "Nej"
 
-#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
 #, c-format
 msgid "%s: cannot lock file %s\n"
 msgstr "%s: kan inte låsa filen %s\n"
 
-#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241
-#: src/pwck.c:250
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
 #, c-format
 msgid "%s: cannot open file %s\n"
 msgstr "%s: kan inte öppna filen %s\n"
@@ -1078,13 +1122,13 @@ msgstr "%s: kan inte 
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:298
+#: src/grpck.c:317
 msgid "invalid group file entry\n"
 msgstr "felaktig gruppfilsnotering\n"
 
-#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517
-#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517
-#: src/pwck.c:541
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
 #, c-format
 msgid "delete line `%s'? "
 msgstr "ta bort rad \"%s\"? "
@@ -1093,26 +1137,26 @@ msgstr "ta bort rad \"%s\"? "
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:361
+#: src/grpck.c:380
 msgid "duplicate group entry\n"
 msgstr "dubblett av gruppnotering\n"
 
-#: src/grpck.c:378
+#: src/grpck.c:397
 #, c-format
 msgid "invalid group name `%s'\n"
 msgstr "ogiltigt gruppnamn \"%s\"\n"
 
-#: src/grpck.c:388
+#: src/grpck.c:407
 #, c-format
 msgid "group %s: bad GID (%d)\n"
 msgstr "grupp %s: felaktigt GID (%d)\n"
 
-#: src/grpck.c:414
+#: src/grpck.c:433
 #, c-format
 msgid "group %s: no user %s\n"
 msgstr "grupp %s: användaren %s finns inte\n"
 
-#: src/grpck.c:416 src/grpck.c:585
+#: src/grpck.c:435 src/grpck.c:604
 #, c-format
 msgid "delete member `%s'? "
 msgstr "ta bort medlem \"%s\"? "
@@ -1121,7 +1165,7 @@ msgstr "ta bort medlem \"%s\"? "
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/grpck.c:453
+#: src/grpck.c:472
 msgid "invalid shadow group file entry\n"
 msgstr "felaktig skuggruppfilsnotering\n"
 
@@ -1129,45 +1173,45 @@ msgstr "felaktig skuggruppfilsnotering\n"
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/grpck.c:516
+#: src/grpck.c:535
 msgid "duplicate shadow group entry\n"
 msgstr "dubblett av skuggruppfilsnotering\n"
 
-#: src/grpck.c:533
+#: src/grpck.c:552
 msgid "no matching group file entry\n"
 msgstr "inga matchande gruppfilsnoteringar\n"
 
-#: src/grpck.c:553
+#: src/grpck.c:572
 #, c-format
 msgid "shadow group %s: no administrative user %s\n"
 msgstr "skuggrupp %s: finns ingen administrativ användare %s\n"
 
-#: src/grpck.c:555
+#: src/grpck.c:574
 #, c-format
 msgid "delete administrative member `%s'? "
 msgstr "ta bort administrativa medlemmen \"%s\"? "
 
-#: src/grpck.c:583
+#: src/grpck.c:602
 #, c-format
 msgid "shadow group %s: no user %s\n"
 msgstr "skuggrupp %s: finns ingen användare %s\n"
 
-#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
 #, c-format
 msgid "%s: cannot update file %s\n"
 msgstr "%s: kan inte uppdatera filen %s\n"
 
-#: src/grpck.c:640 src/pwck.c:606
+#: src/grpck.c:660 src/pwck.c:626
 #, c-format
 msgid "%s: the files have been updated; run mkpasswd\n"
 msgstr "%s: filerna är uppdaterade; kör mkpasswd\n"
 
-#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
 #, c-format
 msgid "%s: no changes\n"
 msgstr "%s: inga ändringar\n"
 
-#: src/grpck.c:644 src/pwck.c:610
+#: src/grpck.c:664 src/pwck.c:630
 #, c-format
 msgid "%s: the files have been updated\n"
 msgstr "%s: filerna är uppdaterade\n"
@@ -1238,42 +1282,42 @@ msgstr "Anv
 msgid "usage: id\n"
 msgstr "Användning: id\n"
 
-#: src/id.c:118
+#: src/id.c:127
 #, c-format
 msgid "uid=%d(%s)"
 msgstr "uid=%d(%s)"
 
-#: src/id.c:120
+#: src/id.c:129
 #, c-format
 msgid "uid=%d"
 msgstr "uid=%d"
 
-#: src/id.c:124
+#: src/id.c:133
 #, c-format
 msgid " gid=%d(%s)"
 msgstr " gid=%d(%s)"
 
-#: src/id.c:126
+#: src/id.c:135
 #, c-format
 msgid " gid=%d"
 msgstr " gid=%d"
 
-#: src/id.c:136
+#: src/id.c:145
 #, c-format
 msgid " euid=%d(%s)"
 msgstr " euid=%d(%s)"
 
-#: src/id.c:138
+#: src/id.c:147
 #, c-format
 msgid " euid=%d"
 msgstr " euid=%d"
 
-#: src/id.c:143
+#: src/id.c:152
 #, c-format
 msgid " egid=%d(%s)"
 msgstr " egid=%d(%s)"
 
-#: src/id.c:145
+#: src/id.c:154
 #, c-format
 msgid " egid=%d"
 msgstr " egid=%d"
@@ -1286,42 +1330,47 @@ msgstr " egid=%d"
 #. * where "###" is a numerical value and "aaa" is the
 #. * corresponding name for each respective numerical value.
 #.
-#: src/id.c:166
+#: src/id.c:175
 msgid " groups="
 msgstr " grupper="
 
-#: src/lastlog.c:167
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
 msgid "Username         Port     From             Latest\n"
 msgstr "Användarnamn     Port     Från             Senaste\n"
 
-#: src/lastlog.c:169
+#: src/lastlog.c:186
 msgid "Username                Port     Latest\n"
 msgstr "Användarnamn            Port     Senaste\n"
 
-#: src/lastlog.c:183
+#: src/lastlog.c:200
 msgid "**Never logged in**"
 msgstr "**Aldrig inloggad**"
 
-#: src/login.c:198
+#: src/login.c:201
 #, c-format
 msgid "usage: %s [-p] [name]\n"
 msgstr "Användning: %s [-p] [namn]\n"
 
-#: src/login.c:201
+#: src/login.c:204
 #, c-format
 msgid "       %s [-p] [-h host] [-f name]\n"
 msgstr "       %s [-p] [-h värd] [-f namn]\n"
 
-#: src/login.c:203
+#: src/login.c:206
 #, c-format
 msgid "       %s [-p] -r host\n"
 msgstr "       %s [-p] -r värd\n"
 
-#: src/login.c:286
+#: src/login.c:289
 msgid "Invalid login time\n"
 msgstr "Felaktig inloggningstid\n"
 
-#: src/login.c:341
+#: src/login.c:344
 msgid ""
 "\n"
 "System closed for routine maintenance\n"
@@ -1329,7 +1378,7 @@ msgstr ""
 "\n"
 "Systemet är stängt för rutinunderhåll\n"
 
-#: src/login.c:351
+#: src/login.c:354
 msgid ""
 "\n"
 "[Disconnect bypassed -- root login allowed.]\n"
@@ -1337,7 +1386,7 @@ msgstr ""
 "\n"
 "[Nerkoppling kringgicks -- root inloggning tillåten.]\n"
 
-#: src/login.c:390
+#: src/login.c:393
 #, c-format
 msgid ""
 "\n"
@@ -1346,17 +1395,17 @@ msgstr ""
 "\n"
 "Inloggningen avbröts efter %d sekunders inaktivitet.\n"
 
-#: src/login.c:692
+#: src/login.c:695
 #, c-format
 msgid " on `%.100s' from `%.200s'"
 msgstr " på \"%.100s\" från \"%.200s\""
 
-#: src/login.c:694
+#: src/login.c:697
 #, c-format
 msgid " on `%.100s'"
 msgstr " på \"%.100s\""
 
-#: src/login.c:834
+#: src/login.c:837
 #, c-format
 msgid ""
 "\n"
@@ -1365,34 +1414,34 @@ msgstr ""
 "\n"
 "%s användare: "
 
-#: src/login.c:836
+#: src/login.c:839
 msgid "login: "
 msgstr "användare: "
 
-#: src/login.c:1026 src/sulogin.c:231
+#: src/login.c:1029 src/sulogin.c:231
 msgid "Login incorrect"
 msgstr "Felaktig inloggning"
 
-#: src/login.c:1213
+#: src/login.c:1217
 msgid "Warning: login re-enabled after temporary lockout.\n"
 msgstr "Varning: inloggning på nytt aktiv efter den temporära utelåsningen.\n"
 
-#: src/login.c:1223
+#: src/login.c:1227
 #, c-format
 msgid "Last login: %s on %s"
 msgstr "Senaste inloggning: %s på %s"
 
-#: src/login.c:1226
+#: src/login.c:1230
 #, c-format
 msgid "Last login: %.19s on %s"
 msgstr "Senaste inloggning: %.19s på %s"
 
-#: src/login.c:1231
+#: src/login.c:1235
 #, c-format
 msgid " from %.*s"
 msgstr " från %.*s"
 
-#: src/login.c:1303
+#: src/login.c:1307
 msgid "Starting rad_login\n"
 msgstr "Startar rad_login\n"
 
@@ -1401,6 +1450,21 @@ msgstr "Startar rad_login\n"
 msgid "%s: no DBM database on system - no action performed\n"
 msgstr "%s: ingen DBM-databas på systemet - ingen åtgärd genomfördes\n"
 
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr "Användning: %s [ -vf ] [ -p|g|sp|sg ] fil\n"
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr "Användning: %s [ -vf ] [ -p|g|sp ] fil\n"
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr "Användning: %s [ -vf ] [ -p|g ] fil\n"
+
 #: src/mkpasswd.c:245 src/mkpasswd.c:249
 #, c-format
 msgid "%s: cannot overwrite file %s\n"
@@ -1416,6 +1480,11 @@ msgstr "%s: kan inte 
 msgid "%s: the beginning with "
 msgstr "%s: början med "
 
+#: src/mkpasswd.c:296
+#, fuzzy
+msgid " is too long\n"
+msgstr "%s: för långa fält\n"
+
 #: src/mkpasswd.c:321
 #, c-format
 msgid "%s: error parsing line \"%s\"\n"
@@ -1425,6 +1494,11 @@ msgstr "%s: fel under analysering av rad \"%s\"\n"
 msgid "adding record for name "
 msgstr "lägger till notering för namn "
 
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
 #: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
 #, c-format
 msgid "%s: error adding record for "
@@ -1435,21 +1509,6 @@ msgstr "%s: fel under till
 msgid "added %d entries, longest was %d\n"
 msgstr "lade till %d noteringar, den längsta var %d\n"
 
-#: src/mkpasswd.c:382
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
-msgstr "Användning: %s [ -vf ] [ -p|g|sp|sg ] fil\n"
-
-#: src/mkpasswd.c:384
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
-msgstr "Användning: %s [ -vf ] [ -p|g|sp ] fil\n"
-
-#: src/mkpasswd.c:387
-#, c-format
-msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
-msgstr "Användning: %s [ -vf ] [ -p|g ] fil\n"
-
 #: src/newgrp.c:66
 msgid "usage: newgrp [ - ] [ group ]\n"
 msgstr "Användning: newgrp [ - ] [ grupp ]\n"
@@ -1680,20 +1739,20 @@ msgid "Password changed.\n"
 msgstr "Lösenordet ändrat.\n"
 
 #: src/pwck.c:98
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
 msgstr "Användning: %s [ -qr ] [ passwd [ shadow ] ]\n"
 
 #: src/pwck.c:100
-#, c-format
-msgid "Usage: %s [ -qr ] [ passwd ]\n"
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
 msgstr "Användning: %s [ -qr ] [ passwd ]\n"
 
 #.
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:285
+#: src/pwck.c:304
 msgid "invalid password file entry\n"
 msgstr "felaktig notering i lösenordsfilen\n"
 
@@ -1701,16 +1760,16 @@ msgstr "felaktig notering i l
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:347
+#: src/pwck.c:366
 msgid "duplicate password entry\n"
 msgstr "dubblett av lösenords notering\n"
 
-#: src/pwck.c:363
+#: src/pwck.c:382
 #, c-format
 msgid "invalid user name `%s'\n"
 msgstr "ogiltigt användarnamn \"%s\"\n"
 
-#: src/pwck.c:373
+#: src/pwck.c:392
 #, c-format
 msgid "user %s: bad UID (%d)\n"
 msgstr "användare %s: felaktigt UID (%d)\n"
@@ -1718,7 +1777,7 @@ msgstr "anv
 #.
 #. * No primary group, just give a warning
 #.
-#: src/pwck.c:388
+#: src/pwck.c:407
 #, c-format
 msgid "user %s: no group %d\n"
 msgstr "användare %s: ingen grupp %d\n"
@@ -1726,7 +1785,7 @@ msgstr "anv
 #.
 #. * Home directory doesn't exist, give a warning
 #.
-#: src/pwck.c:403
+#: src/pwck.c:422
 #, c-format
 msgid "user %s: directory %s does not exist\n"
 msgstr "användare %s: katalogen %s finns inte\n"
@@ -1734,7 +1793,7 @@ msgstr "anv
 #.
 #. * Login shell doesn't exist, give a warning
 #.
-#: src/pwck.c:418
+#: src/pwck.c:437
 #, c-format
 msgid "user %s: program %s does not exist\n"
 msgstr "användare %s: programmet %s finns inte\n"
@@ -1743,7 +1802,7 @@ msgstr "anv
 #. * Tell the user this entire line is bogus and
 #. * ask them to delete it.
 #.
-#: src/pwck.c:454
+#: src/pwck.c:473
 msgid "invalid shadow password file entry\n"
 msgstr "felaktig notering i skugglösenordsfilen\n"
 
@@ -1751,7 +1810,7 @@ msgstr "felaktig notering i skuggl
 #. * Tell the user this entry is a duplicate of
 #. * another and ask them to delete it.
 #.
-#: src/pwck.c:516
+#: src/pwck.c:535
 msgid "duplicate shadow password entry\n"
 msgstr "dubblett av notering i skugglösenordsfilen\n"
 
@@ -1759,21 +1818,21 @@ msgstr "dubblett av notering i skuggl
 #. * Tell the user this entry has no matching
 #. * /etc/passwd entry and ask them to delete it.
 #.
-#: src/pwck.c:540
+#: src/pwck.c:559
 msgid "no matching password file entry\n"
 msgstr "ingen matchande notering i lösenordsfilen\n"
 
-#: src/pwck.c:557
+#: src/pwck.c:576
 #, c-format
 msgid "user %s: last password change in the future\n"
 msgstr "användare %s: senaste lösenordsändring i framtiden\n"
 
-#: src/pwconv.c:94 src/pwunconv.c:108
+#: src/pwconv.c:94 src/pwunconv.c:99
 #, c-format
 msgid "%s: can't lock passwd file\n"
 msgstr "%s: kan inte låsa lösenordsfilen\n"
 
-#: src/pwconv.c:99 src/pwunconv.c:113
+#: src/pwconv.c:99 src/pwunconv.c:104
 #, c-format
 msgid "%s: can't open passwd file\n"
 msgstr "%s: kan inte öppna lösenordsfilen\n"
@@ -1798,17 +1857,17 @@ msgstr "%s: kan inte uppdatera skuggfilen\n"
 msgid "%s: can't update passwd file\n"
 msgstr "%s: kan inte uppdatera lösenordsfilen\n"
 
-#: src/pwunconv.c:62
+#: src/pwunconv.c:53
 #, c-format
 msgid "%s: Shadow passwords are not configured.\n"
 msgstr "%s: Shadowlösenord är inte konfigurerade.\n"
 
-#: src/pwunconv.c:171
+#: src/pwunconv.c:162
 #, c-format
 msgid "%s: can't update entry for user %s\n"
 msgstr "%s: kan inte uppdatera noteringen för användaren %s\n"
 
-#: src/pwunconv.c:188
+#: src/pwunconv.c:179
 #, c-format
 msgid "%s: can't delete shadow password file\n"
 msgstr "%s: kan inte ta bort skugglösenordsfilen\n"
@@ -1822,33 +1881,28 @@ msgstr "Tyv
 msgid "%s: must be run from a terminal\n"
 msgstr "%s: måste köras från en terminal\n"
 
-#: src/su.c:311
+#: src/su.c:310
 #, c-format
 msgid "%s: pam_start: error %d\n"
 msgstr "%s: pam_start: fel %d\n"
 
-#: src/su.c:337
+#: src/su.c:336
 #, c-format
 msgid "Unknown id: %s\n"
 msgstr "Okänt id: %s\n"
 
 #. access denied (-1) or unexpected value
-#: src/su.c:372 src/su.c:387
+#: src/su.c:371 src/su.c:386
 #, c-format
 msgid "You are not authorized to su %s\n"
 msgstr "Du har inte tillåtelse att köra su till %s\n"
 
 #. require own password
-#: src/su.c:383
+#: src/su.c:382
 msgid "(Enter your own password.)"
 msgstr "(Skriv in ditt eget lösenord.)"
 
-#: src/su.c:404
-#, c-format
-msgid "%s: permission denied (shell).\n"
-msgstr "%s: tillåtelse nekas (skal).\n"
-
-#: src/su.c:428
+#: src/su.c:413
 #, c-format
 msgid ""
 "%s: %s\n"
@@ -1857,7 +1911,7 @@ msgstr ""
 "%s: %s\n"
 "(Ignorerad)\n"
 
-#: src/su.c:628
+#: src/su.c:615
 msgid "No shell\n"
 msgstr "Inget skal\n"
 
@@ -1893,275 +1947,280 @@ msgstr ""
 msgid "Entering System Maintenance Mode\n"
 msgstr "Går in i systemunderhållsläge\n"
 
-#: src/useradd.c:249
+#: src/useradd.c:251
 #, c-format
 msgid "%s: rebuild the group database\n"
 msgstr "%s: bygg om gruppdatabasen\n"
 
-#: src/useradd.c:256
+#: src/useradd.c:258
 #, c-format
 msgid "%s: rebuild the shadow group database\n"
 msgstr "%s: bygg om skuggruppdatabasen\n"
 
-#: src/useradd.c:293 src/usermod.c:973
+#: src/useradd.c:295 src/usermod.c:974
 #, c-format
 msgid "%s: invalid numeric argument `%s'\n"
 msgstr "%s: ogiltigt numeriskt argument \"%s\"\n"
 
-#: src/useradd.c:349
+#: src/useradd.c:351
 #, c-format
 msgid "%s: unknown gid %s\n"
 msgstr "%s: okänt gid %s\n"
 
-#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260
-#: src/usermod.c:1104
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
 #, c-format
 msgid "%s: unknown group %s\n"
 msgstr "%s: okänd grupp %s\n"
 
-#: src/useradd.c:424
+#: src/useradd.c:426
 #, c-format
 msgid "group=%s,%ld  basedir=%s  skel=%s\n"
 msgstr "grupp=%s,%ld  baskatalog=%s  skel=%s\n"
 
-#: src/useradd.c:427
+#: src/useradd.c:429
 #, c-format
 msgid "shell=%s  "
 msgstr "skal=%s  "
 
-#: src/useradd.c:429
+#: src/useradd.c:431
 #, c-format
 msgid "inactive=%ld  expire=%s"
 msgstr "inaktiv=%ld  upphör=%s"
 
-#: src/useradd.c:433
+#: src/useradd.c:435
 #, c-format
 msgid "GROUP=%ld\n"
 msgstr "GRUPP=%ld\n"
 
-#: src/useradd.c:434
+#: src/useradd.c:436
 #, c-format
 msgid "HOME=%s\n"
 msgstr "HEM=%s\n"
 
-#: src/useradd.c:436
+#: src/useradd.c:438
 #, c-format
 msgid "INACTIVE=%ld\n"
 msgstr "INAKTIV=%ld\n"
 
-#: src/useradd.c:437
+#: src/useradd.c:439
 #, c-format
 msgid "EXPIRE=%s\n"
 msgstr "UPPHÖR=%s\n"
 
-#: src/useradd.c:439
+#: src/useradd.c:441
 #, c-format
 msgid "SHELL=%s\n"
 msgstr "SKAL=%s\n"
 
-#: src/useradd.c:440
+#: src/useradd.c:442
 #, c-format
 msgid "SKEL=%s\n"
 msgstr "SKEL=%s\n"
 
-#: src/useradd.c:476
+#: src/useradd.c:482
 #, c-format
 msgid "%s: cannot create new defaults file\n"
 msgstr "%s: kan inte skapa en ny standardfil\n"
 
-#: src/useradd.c:570 src/useradd.c:581
+#: src/useradd.c:488
+#, fuzzy, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr "%s: kan inte skapa en ny standardfil\n"
+
+#: src/useradd.c:582 src/useradd.c:593
 #, c-format
 msgid "%s: rename: %s"
 msgstr "%s: rename: %s"
 
-#: src/useradd.c:668 src/usermod.c:280
+#: src/useradd.c:680 src/usermod.c:281
 #, c-format
 msgid "%s: group `%s' is a NIS group.\n"
 msgstr "%s: grupp \"%s\" är en NIS-grupp.\n"
 
-#: src/useradd.c:676 src/usermod.c:288
+#: src/useradd.c:688 src/usermod.c:289
 #, c-format
 msgid "%s: too many groups specified (max %d).\n"
 msgstr "%s: för många grupper speciferade (max %d).\n"
 
-#: src/useradd.c:708 src/usermod.c:320
+#: src/useradd.c:720 src/usermod.c:321
 #, c-format
 msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
 msgstr "Användning: %s\t[-u uid [-o]] [-g grupp] [-G grupp,...] \n"
 
-#: src/useradd.c:711
+#: src/useradd.c:723
 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
 msgstr "\t\t[-d hem] [-s skal] [-c kommentar] [-m [-k mall]]\n"
 
-#: src/useradd.c:714 src/usermod.c:326
+#: src/useradd.c:726 src/usermod.c:327
 msgid "[-f inactive] [-e expire ] "
 msgstr "[-f inaktiv] [-e upphör ] "
 
-#: src/useradd.c:717
+#: src/useradd.c:729
 msgid "[-A program] "
 msgstr "[-A program] "
 
-#: src/useradd.c:719
+#: src/useradd.c:731
 msgid "[-p passwd] name\n"
 msgstr "[-p passwd] namn\n"
 
-#: src/useradd.c:721
+#: src/useradd.c:733
 #, c-format
 msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
 msgstr "       %s\t-D [-g grupp] [-b bas] [-s skal]\n"
 
-#: src/useradd.c:724
+#: src/useradd.c:736
 msgid "\t\t[-f inactive] [-e expire ]\n"
 msgstr "\t\t[-f inaktiv] [-e utgång ]\n"
 
-#: src/useradd.c:821 src/usermod.c:478
+#: src/useradd.c:833 src/usermod.c:479
 #, c-format
 msgid "%s: error locking group file\n"
 msgstr "%s: fel under låsning av gruppfilen\n"
 
-#: src/useradd.c:825 src/usermod.c:483
+#: src/useradd.c:837 src/usermod.c:484
 #, c-format
 msgid "%s: error opening group file\n"
 msgstr "%s: fel under öppning av gruppfilen\n"
 
-#: src/useradd.c:830 src/usermod.c:590
+#: src/useradd.c:842 src/usermod.c:591
 #, c-format
 msgid "%s: error locking shadow group file\n"
 msgstr "%s: fel under låsning av skuggruppfilen\n"
 
-#: src/useradd.c:835 src/usermod.c:596
+#: src/useradd.c:847 src/usermod.c:597
 #, c-format
 msgid "%s: error opening shadow group file\n"
 msgstr "%s: fel under öppning av skuggruppfilen\n"
 
-#: src/useradd.c:1007
+#: src/useradd.c:1019
 #, c-format
 msgid "%s: uid %d is not unique\n"
 msgstr "%s: uid %d är inte unikt\n"
 
-#: src/useradd.c:1037
+#: src/useradd.c:1049
 #, c-format
 msgid "%s: can't get unique uid\n"
 msgstr "%s: kan inte hitta ett unikt uid\n"
 
-#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063
-#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
 #, c-format
 msgid "%s: invalid field `%s'\n"
 msgstr "%s: felaktigt fält \"%s\"\n"
 
-#: src/useradd.c:1159
+#: src/useradd.c:1171
 #, c-format
 msgid "%s: invalid base directory `%s'\n"
 msgstr "%s: felaktig baskatalog \"%s\"\n"
 
-#: src/useradd.c:1169
+#: src/useradd.c:1181
 #, c-format
 msgid "%s: invalid comment `%s'\n"
 msgstr "%s: felaktig kommentar \"%s\"\n"
 
-#: src/useradd.c:1179
+#: src/useradd.c:1191
 #, c-format
 msgid "%s: invalid home directory `%s'\n"
 msgstr "%s: felaktig hemkatalog \"%s\"\n"
 
-#: src/useradd.c:1197 src/usermod.c:1086
+#: src/useradd.c:1209 src/usermod.c:1087
 #, c-format
 msgid "%s: invalid date `%s'\n"
 msgstr "%s: felaktigt datum \"%s\"\n"
 
-#: src/useradd.c:1209
+#: src/useradd.c:1221
 #, c-format
 msgid "%s: shadow passwords required for -e\n"
 msgstr "%s: skugglösenord krävs för -e\n"
 
-#: src/useradd.c:1224
+#: src/useradd.c:1236
 #, c-format
 msgid "%s: shadow passwords required for -f\n"
 msgstr "%s: skugglösenord krävs för -f\n"
 
-#: src/useradd.c:1298
+#: src/useradd.c:1310
 #, c-format
 msgid "%s: invalid shell `%s'\n"
 msgstr "%s: felaktigt skal \"%s\"\n"
 
-#: src/useradd.c:1339
+#: src/useradd.c:1351
 #, c-format
 msgid "%s: invalid user name `%s'\n"
 msgstr "%s: felaktigt användar namn \"%s\"\n"
 
-#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
 #, c-format
 msgid "%s: cannot rewrite password file\n"
 msgstr "%s: kan inte skriva om lösenordsfilen\n"
 
-#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
 #, c-format
 msgid "%s: cannot rewrite shadow password file\n"
 msgstr "%s: kan inte skriva om skugglösenordsfilen\n"
 
-#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
 #, c-format
 msgid "%s: unable to lock password file\n"
 msgstr "%s: kan inte låsa lösenordsfilen\n"
 
-#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
 #, c-format
 msgid "%s: unable to open password file\n"
 msgstr "%s: kan inte öppna lösenordsfilen\n"
 
-#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
 #, c-format
 msgid "%s: cannot lock shadow password file\n"
 msgstr "%s: kan inte låsa skugglösenordsfilen\n"
 
-#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
 #, c-format
 msgid "%s: cannot open shadow password file\n"
 msgstr "%s: kan inte öppna skugglösenordsfilen\n"
 
-#: src/useradd.c:1535 src/usermod.c:1372
+#: src/useradd.c:1547 src/usermod.c:1373
 #, c-format
 msgid "%s: error adding authentication method\n"
 msgstr "%s: fel under tillägning av metod för äkthetsbevisning\n"
 
-#: src/useradd.c:1558
+#: src/useradd.c:1570
 #, c-format
 msgid "%s: error adding new password entry\n"
 msgstr "%s: fel under tilläggning av ny lösenordsnotering\n"
 
-#: src/useradd.c:1573
+#: src/useradd.c:1585
 #, c-format
 msgid "%s: error updating password dbm entry\n"
 msgstr "%s: fel under uppdatering av dbm-lösenordsnotering\n"
 
-#: src/useradd.c:1589 src/usermod.c:1431
+#: src/useradd.c:1601 src/usermod.c:1432
 #, c-format
 msgid "%s: error adding new shadow password entry\n"
 msgstr "%s: fel under tilläggning av ny skugglösenordsnotering\n"
 
-#: src/useradd.c:1605 src/usermod.c:1446
+#: src/useradd.c:1617 src/usermod.c:1447
 #, c-format
 msgid "%s: error updating shadow passwd dbm entry\n"
 msgstr "%s: fel under uppdatering av dbm-skugglösenordsnotering\n"
 
-#: src/useradd.c:1637
+#: src/useradd.c:1649
 #, c-format
 msgid "%s: cannot create directory %s\n"
 msgstr "%s: kan inte skapa katalog %s\n"
 
-#: src/useradd.c:1758 src/usermod.c:1209
+#: src/useradd.c:1772 src/usermod.c:1210
 #, c-format
 msgid "%s: user %s exists\n"
 msgstr "%s: användare %s existerar\n"
 
-#: src/useradd.c:1770
+#: src/useradd.c:1784
 #, c-format
 msgid ""
 "%s: group %s exists - if you want to add this user to that group, use -g.\n"
 msgstr ""
 
-#: src/useradd.c:1801
+#: src/useradd.c:1815
 #, c-format
 msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
 msgstr "%s: varning: CREATE_HOME stöds inte, använd -m istället.\n"
@@ -2256,12 +2315,12 @@ msgstr "%s: varning: %s 
 msgid "%s: warning: can't remove "
 msgstr "%s: varning: kan inte ta bort "
 
-#: src/userdel.c:791 src/usermod.c:1000
+#: src/userdel.c:791 src/usermod.c:1001
 #, c-format
 msgid "%s: user %s does not exist\n"
 msgstr "%s: användare %s finns inte\n"
 
-#: src/userdel.c:805 src/usermod.c:1016
+#: src/userdel.c:805 src/usermod.c:1017
 #, c-format
 msgid "%s: user %s is a NIS user\n"
 msgstr "%s: användare %s är en NIS-användare\n"
@@ -2281,115 +2340,115 @@ msgstr "%s: tar inte bort katalogen %s (skulle ta bort hemkatalogen f
 msgid "%s: error removing directory %s\n"
 msgstr "%s: fel under borttagning av katalogen %s\n"
 
-#: src/usermod.c:323
+#: src/usermod.c:324
 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
 msgstr "\t\t[-d hem [-m]] [-s skal] [-c kommentar] [-l nytt_namn]\n"
 
-#: src/usermod.c:329
+#: src/usermod.c:330
 msgid "[-A {DEFAULT|program},... ] "
 msgstr "[-A {DEFAULT|program},... ] "
 
-#: src/usermod.c:331
+#: src/usermod.c:332
 #, fuzzy
 msgid "[-p passwd] [-L|-U] name\n"
 msgstr "[-p passwd] namn\n"
 
-#: src/usermod.c:510
+#: src/usermod.c:511
 #, c-format
 msgid "%s: out of memory in update_group\n"
 msgstr "%s: slut på minne i update_group\n"
 
-#: src/usermod.c:633
+#: src/usermod.c:634
 #, c-format
 msgid "%s: out of memory in update_gshadow\n"
 msgstr "%s: slut på minne i update_gshadow\n"
 
-#: src/usermod.c:1186
+#: src/usermod.c:1187
 #, c-format
 msgid "%s: no flags given\n"
 msgstr "%s: inga flaggor givna\n"
 
-#: src/usermod.c:1193
+#: src/usermod.c:1194
 #, c-format
 msgid "%s: shadow passwords required for -e and -f\n"
 msgstr "%s: skugglösenord krävs för -e och -f\n"
 
-#: src/usermod.c:1214
+#: src/usermod.c:1215
 #, c-format
 msgid "%s: uid %ld is not unique\n"
 msgstr "%s: uid %ld är inte unikt\n"
 
-#: src/usermod.c:1362
+#: src/usermod.c:1363
 #, c-format
 msgid "%s: error deleting authentication method\n"
 msgstr "%s: fel under borttagning av metod för äkthetsbevisning\n"
 
-#: src/usermod.c:1382
+#: src/usermod.c:1383
 #, c-format
 msgid "%s: error changing authentication method\n"
 msgstr "%s: fel under ändring av metod för äkthetsbevisning\n"
 
-#: src/usermod.c:1399
+#: src/usermod.c:1400
 #, c-format
 msgid "%s: error changing password entry\n"
 msgstr "%s: fel under ändring av lösenordsnotering\n"
 
-#: src/usermod.c:1405
+#: src/usermod.c:1406
 #, c-format
 msgid "%s: error removing password entry\n"
 msgstr "%s: fel under borttagning av lösenordsnotering\n"
 
-#: src/usermod.c:1413
+#: src/usermod.c:1414
 #, c-format
 msgid "%s: error adding password dbm entry\n"
 msgstr "%s: fel under tilläggning av dbm-lösenordsnotering\n"
 
-#: src/usermod.c:1420
+#: src/usermod.c:1421
 #, c-format
 msgid "%s: error removing passwd dbm entry\n"
 msgstr "%s: fel under borttagning av dbm-lösenordsnotering\n"
 
-#: src/usermod.c:1437
+#: src/usermod.c:1438
 #, c-format
 msgid "%s: error removing shadow password entry\n"
 msgstr "%s: fel under borttagning av skugglösenordsnotering\n"
 
-#: src/usermod.c:1452
+#: src/usermod.c:1453
 #, c-format
 msgid "%s: error removing shadow passwd dbm entry\n"
 msgstr "%s: fel under borttagning av dbm-skugglösenordsnotering\n"
 
-#: src/usermod.c:1483
+#: src/usermod.c:1484
 #, c-format
 msgid "%s: directory %s exists\n"
 msgstr "%s: katalogen %s existerar\n"
 
-#: src/usermod.c:1490
+#: src/usermod.c:1491
 #, c-format
 msgid "%s: can't create %s\n"
 msgstr "%s: kan inte skapa %s\n"
 
-#: src/usermod.c:1496
+#: src/usermod.c:1497
 #, c-format
 msgid "%s: can't chown %s\n"
 msgstr "%s: kan inte byta ägare på %s\n"
 
-#: src/usermod.c:1512
+#: src/usermod.c:1513
 #, c-format
 msgid "%s: cannot rename directory %s to %s\n"
 msgstr "%s: kan inte byta namn på katalogen %s till %s\n"
 
 #. better leave it alone
-#: src/usermod.c:1609
+#: src/usermod.c:1610
 #, c-format
 msgid "%s: warning: %s not owned by %s\n"
 msgstr "%s: varning: %s ägs inte av %s\n"
 
-#: src/usermod.c:1615
+#: src/usermod.c:1616
 msgid "failed to change mailbox owner"
 msgstr "kunde inte byta ägare av brevlådan"
 
-#: src/usermod.c:1622
+#: src/usermod.c:1623
 msgid "failed to rename mailbox"
 msgstr "kunde inte byta namn på brevlådan"
 
@@ -2424,3 +2483,6 @@ msgstr ""
 "Användning:\n"
 "\"vipw\" editerar /etc/passwd   \"vipw -w\" editerar /etc/shadow\n"
 "\"vipg\" editerar /etc/group    \"vipg -w\" editerar /etc/gshadow\n"
+
+#~ msgid "%s: permission denied (shell).\n"
+#~ msgstr "%s: tillåtelse nekas (skal).\n"
diff --git a/po/uk.gmo b/po/uk.gmo
new file mode 100644 (file)
index 0000000..e379842
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..18153c4
--- /dev/null
+++ b/po/uk.po
@@ -0,0 +1,2503 @@
+# shadow.pot Ukrainian translation.
+# Roman Festchook <roma@orta.zt.ua>, 2001.
+# Comments and bug-reports are welcomed
+msgid ""
+msgstr ""
+"Project-Id-Version: shadow-20001016\n"
+"POT-Creation-Date: 2001-09-08 07:36+0200\n"
+"PO-Revision-Date: 2001-08-04 19:45+0200\n"
+"Last-Translator: Roman Festchook <roma@orta.zt.ua>\n"
+"Language-Team: Roman Festchook <roma@orta.zt.ua>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=koi8-u\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: libmisc/addgrps.c:60
+#, c-format
+msgid "Warning: unknown group %s\n"
+msgstr "úÁÓÔÅÒÅÖÅÎÎÑ: ÎÅצÄÏÍÁ ÇÒÕÐÁ %s\n"
+
+#: libmisc/addgrps.c:71
+msgid "Warning: too many groups\n"
+msgstr "úÁÓÔÅÒÅÖÅÎÎÑ: ÚÁÎÁÄÔÏ ÂÁÇÁÔÏ ÇÒÕÐ\n"
+
+#: libmisc/age.c:104
+msgid "Your password has expired."
+msgstr "÷ÁÛ ÐÁÒÏÌØ ÐÒÏÓÔÒÏÞÅÎÏ."
+
+#: libmisc/age.c:107
+msgid "Your password is inactive."
+msgstr "÷ÁÛ ÐÁÒÏÌØ ¤ ÎÅÁËÔÉ×ÎÉÍ."
+
+#: libmisc/age.c:110
+msgid "Your login has expired."
+msgstr "÷ÁÛ ÌÏǦΠÐÒÏÓÔÒÏÞÅÎÏ."
+
+#: libmisc/age.c:127
+msgid "  Contact the system administrator.\n"
+msgstr "  ú'×ÑÖ¦ÔØÓÑ Ú ÓÉÓÔÅÍÎÉÍ ÁÄͦΦÓÔÒÁÔÏÒÏÍ.\n"
+
+#: libmisc/age.c:130
+msgid "  Choose a new password.\n"
+msgstr "  ÷ÉÂÅÒ¦ÔØ ÎÏ×ÉÊ ÐÁÒÏÌØ.\n"
+
+#: libmisc/age.c:228
+#, c-format
+msgid "Your password will expire in %ld days.\n"
+msgstr "÷ÁÛ ÐÁÒÏÌØ ÂÕÄÅ ÐÒÏÓÔÏÒÏÞÅÎÏ ÚÁ %ld ÄΦ×.\n"
+
+#: libmisc/age.c:230
+msgid "Your password will expire tomorrow.\n"
+msgstr "÷ÁÛ ÐÁÒÏÌØ ÂÕÄÅ ÐÒÏÓÔÒÏÞÅÎÏ ÚÁ×ÔÒÁ.\n"
+
+#: libmisc/age.c:232
+msgid "Your password will expire today.\n"
+msgstr "÷ÁÛ ÐÁÒÏÌØ ÂÕÄÅ ÐÒÏÓÔÒÏÞÅÎÏ ÓØÏÇÏÄΦ.\n"
+
+#: libmisc/chowntty.c:113
+#, c-format
+msgid "Unable to change tty %s"
+msgstr "îÅ ÍÏÖÕ ÚͦÎÉÔÉ tty %s"
+
+#: libmisc/env.c:160
+msgid "Environment overflow\n"
+msgstr "ðÅÒÅÐÏ×ÎÅÎÎÑ ÏÔÏÞÅÎÎÑ\n"
+
+#: libmisc/env.c:200
+#, c-format
+msgid "You may not change $%s\n"
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚͦÎÉÔÉ $%s\n"
+
+#: libmisc/failure.c:238
+#, c-format
+msgid "%d %s since last login.  Last was %s on %s.\n"
+msgstr "%d %s Ú ÞÁÓÕ ÏÓÔÁÎÎØÇÏ ×ÈÏÄÕ.  ïÓÔÁÎΦʠ×ȦÄ: %s Ú %s.\n"
+
+#: libmisc/failure.c:239
+msgid "failures"
+msgstr "ÐÏÍÉÌËÉ"
+
+#: libmisc/failure.c:239
+msgid "failure"
+msgstr "ÐÏÍÉÌËÁ"
+
+#: libmisc/limits.c:397
+msgid "Too many logins.\n"
+msgstr "úÁÎÁÄÔÏ ÂÁÇÁÔÏ ÓÅÓ¦Ê.\n"
+
+#: libmisc/login_desrpc.c:63
+#, c-format
+msgid "Password does not decrypt secret key for %s.\n"
+msgstr "ðÁÒÏÌØ ÎÅ ÄÅÛÉÆÒÕ¤ ÔÁ¤ÍÎÉÊ ËÌÀÞ ÄÌÑ %s.\n"
+
+#: libmisc/login_desrpc.c:69
+#, c-format
+msgid "Could not set %s's secret key: is the keyserv daemon running?\n"
+msgstr "îÅ ÍÏÖÕ ×ÓÔÁÎÏ×ÉÔÉ ÔÁ¤ÍÎÏÇÏ ËÌÀÞÁ ÄÌÑ %s: ÞÉ ÚÁÐÕÝÅÎÏ ÓÅÒ×ÅÒ ËÌÀÞ¦×?\n"
+
+#: libmisc/mail.c:62 libmisc/mail.c:77
+msgid "You have new mail."
+msgstr "÷É ÍÁ¤ÔÅ ÎÏ×Õ ÐÏÞÔÕ."
+
+#: libmisc/mail.c:73
+msgid "No mail."
+msgstr "ðÏÞÔÉ ÎÅ ÍÁ¤."
+
+#: libmisc/mail.c:75
+msgid "You have mail."
+msgstr "÷É ÍÁ¤ÔÅ ÐÏÞÔÕ."
+
+#: libmisc/obscure.c:281 src/passwd.c:309
+#, c-format
+msgid "Bad password: %s.  "
+msgstr "ðÏÇÁÎÉÊ ÐÁÒÏÌØ: %s.  "
+
+#: libmisc/pam_pass.c:42
+#, c-format
+msgid "passwd: pam_start() failed, error %d\n"
+msgstr "passwd: pam_start() ÎÅ ×ÉËÏÎÁÎÏ, ÐÏÍÉÌËÁ %d\n"
+
+#: libmisc/pam_pass.c:49
+#, c-format
+msgid "passwd: %s\n"
+msgstr "passwd: %s\n"
+
+#: libmisc/setupenv.c:205
+#, c-format
+msgid "Unable to cd to \"%s\"\n"
+msgstr "îÅ ÍÏÖÕ ÐÅÒÅÊÔÉ ÄÏ ÔÅËÉ \"%s\"\n"
+
+#: libmisc/setupenv.c:213
+msgid "No directory, logging in with HOME=/"
+msgstr "îÅÍÁ ÔÅËÉ, ×¦ÄËÒÉ×Á¤ÍÏ ÓÅÓÓ¦À Ú HOME=/"
+
+#: libmisc/shell.c:78
+#, c-format
+msgid "Executing shell %s\n"
+msgstr "÷ÉËÏÎÕÀ shell %s\n"
+
+#.
+#. * Obviously something is really wrong - I can't figure out
+#. * how to execute this stupid shell, so I might as well give
+#. * up in disgust ...
+#.
+#: libmisc/shell.c:122
+#, c-format
+msgid "Cannot execute %s"
+msgstr "îÅ ÍÏÖÕ ×ÉËÏÎÁÔÉ %s"
+
+#: libmisc/suauth.c:99
+msgid "Access to su to that account DENIED.\n"
+msgstr "äÏÓÔÕÐ ÃØÏÇÏ ËÏÒÉÓÔÕ×ÁÞÁ ÄÏ su úáâïòïîåîï.\n"
+
+#: libmisc/suauth.c:106
+msgid "Password authentication bypassed.\n"
+msgstr "áÕÔÅÎÔÉÆ¦ËÁæÀ ÐÒÏÊÄÅÎÏ.\n"
+
+#: libmisc/suauth.c:113
+msgid "Please enter your OWN password as authentication.\n"
+msgstr "âÕÄØÌÁÓËÁ ××ÅÄ¦ÔØ ×ÁÛ ×ÌÁÓÎÉÊ ÐÁÒÏÌØ ÄÌÑ ÁÕÔÅÎÔÉÆ¦ËÁæ§.\n"
+
+#: libmisc/sub.c:61
+#, c-format
+msgid "Invalid root directory \"%s\"\n"
+msgstr "îÅצÒÎÁ ËÏÒÅÎÅ×Á ÔÅËÁ \"%s\"\n"
+
+#: libmisc/sub.c:73
+#, c-format
+msgid "Can't change root directory to \"%s\"\n"
+msgstr "îÅ ÍÏÖÕ ÚͦÎÉÔÉ ËÏÒÅÎÅ×Õ ÔÅËÕ ÎÁ \"%s\"\n"
+
+#: libmisc/xmalloc.c:28
+#, c-format
+msgid "malloc(%d) failed\n"
+msgstr "malloc(%d) ÎÅ ×ÉËÏÎÁÎÏ\n"
+
+#: lib/dialchk.c:71
+msgid "Dialup Password: "
+msgstr "ðÁÒÏÌØ ÎÁ ÍÏÄÅÍΊЦÄËÌÀÞÅÎÎÑ: "
+
+#: lib/getdef.c:253
+msgid "Could not allocate space for config info.\n"
+msgstr "îÅ ÍÏÖÕ ×ÉĦÌÉÔÉ ÒÅÓÕÒÓÉ ÄÌÑ ËÏÎÆ¦ÇÕÒÁæÊÎÉÈ ÄÁÎÎÉÈ.\n"
+
+#.
+#. * Item was never found.
+#.
+#: lib/getdef.c:307
+#, c-format
+msgid "configuration error - unknown item '%s' (notify administrator)\n"
+msgstr ""
+"ÐÏÍÉÌËÁ Õ ËÏÎÆ¦ÇÕÒÁæ§ - ÎÅצÄÏÍÁ ÐÏÚÉæѠ'%s' (ÐÏצÄÏÍÔÅ ÁÄͦΦÓÔÒÁÔÏÒÁ)\n"
+
+#: lib/getdef.c:394
+#, c-format
+msgid "error - lookup '%s' failed\n"
+msgstr "ÐÏÍÉÌËÁ - ÐÏÛÕË '%s' ÎÅ ×ÉËÏÎÁÎÏ\n"
+
+#: lib/getdef.c:402
+#, c-format
+msgid "%s not found\n"
+msgstr "%s ÎÅ ÚÎÁÊÄÅÎÏ\n"
+
+#.
+#. * get the password from her, and set the salt for
+#. * the decryption from the group file.
+#.
+#: lib/pwauth.c:54 src/newgrp.c:305
+msgid "Password: "
+msgstr "ðÁÒÏÌØ: "
+
+#: lib/pwauth.c:56
+#, c-format
+msgid "%s's Password: "
+msgstr "ðÁÒÏÌØ ËÏÒÉÓÔÕ×ÁÞÁ %s: "
+
+#: lib/pwauth.c:270
+msgid "(Echo on) "
+msgstr ""
+
+#: lib/strerror.c:20
+#, c-format
+msgid "Unknown error %d"
+msgstr "îÅצÄÏÍÁ ÐÏÍÉÌËÁ %d"
+
+#: src/chage.c:162
+#, c-format
+msgid ""
+"Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n"
+"  [ -I inactive ] [ -E expire ] [ -d last_day ] user\n"
+msgstr ""
+"÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -l ] [ -m Í¦Î_ÄΦנ] [ -M ÍÁËÓ_ÄΦנ] [ -W "
+"ÚÁÓÔÅÒÅÖÅÎÎÑ ]\n"
+"  [ -I ÎÅÁËÔÉ×ΦÓÔØ ] [ -E ÐÒÏÓÔÒÏÞÅÎÎÏ ] [ -d ÏÓÔÁÎΦÊ_ÄÅÎØ ] ËÏÒÉÓÔÕ×ÁÞ\n"
+
+#: src/chage.c:164
+#, c-format
+msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n"
+msgstr ""
+"÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -l ] [ -m Í¦Î_ÄΦנ] [ -M ÍÁËÓ_ÄΦנ] [ -d "
+"ÏÓÔÁÎΦÊ_ÄÅÎØ ] ËÏÒÉÓÔÕ×ÁÞ\n"
+
+#: src/chage.c:199
+msgid ""
+"Enter the new value, or press return for the default\n"
+"\n"
+msgstr ""
+"÷×ÅÄ¦ÔØ ÎÏ×Å ÚÎÁÞÅÎÎÑ, ÁÂÏ ÎÁÖÍ¦ÔØ Enter, ÄÌÑ ÚÎÁÞÅÎÎÑ ÐÏ ÚÁÍÏ×ÞÕ×ÁÎÎÀ\n"
+"\n"
+
+#: src/chage.c:202
+msgid "Minimum Password Age"
+msgstr "í¦Î¦ÍÁÌØÎÉʠצˠÐÁÒÏÌÑ"
+
+#: src/chage.c:207
+msgid "Maximum Password Age"
+msgstr "íÁËÓ¦ÍÁÌØÎÉʠצˠÐÁÒÏÌÑ"
+
+#: src/chage.c:213
+msgid "Last Password Change (YYYY-MM-DD)"
+msgstr "ïÓÔÁÎÎÑ ÚͦÎÁ ÐÁÒÏÌÑ (òòòò-íí-ää)"
+
+#: src/chage.c:222
+msgid "Password Expiration Warning"
+msgstr "úÁÓÔÅÒÅÖÅÎÎÑ ÐÒÏ ÐÒÏÓÔÒÏÞÅÎÎÑ ÐÁÒÏÌÑ"
+
+#: src/chage.c:227
+msgid "Password Inactive"
+msgstr "ðÁÒÏÌØ ÎÅÁËÔÉ×ÎÉÊ"
+
+#: src/chage.c:233
+msgid "Account Expiration Date (YYYY-MM-DD)"
+msgstr "äÁÔÁ ÐÒÏÓÔÒÏÞÅÎÎÑ ÒÁÈÕÎËÕ (òòòò-íí-ää)"
+
+#.
+#. * Start with the easy numbers - the number of days before the
+#. * password can be changed, the number of days after which the
+#. * password must be chaged, the number of days before the
+#. * password expires that the user is told, and the number of
+#. * days after the password expires that the account becomes
+#. * unusable.
+#.
+#: src/chage.c:287
+#, c-format
+msgid "Minimum:\t%ld\n"
+msgstr "í¦Î¦ÍÕÍ:\t%ld\n"
+
+#: src/chage.c:288
+#, c-format
+msgid "Maximum:\t%ld\n"
+msgstr "íÁËÓ¦ÍÕÍ:\t%ld\n"
+
+#: src/chage.c:290
+#, c-format
+msgid "Warning:\t%ld\n"
+msgstr "úÁÓÔÅÒÅÖÅÎÎÑ:\t%ld\n"
+
+#: src/chage.c:291
+#, c-format
+msgid "Inactive:\t%ld\n"
+msgstr "îÅÁËÔÉ×ÎÉÊ:\t%ld\n"
+
+#.
+#. * The "last change" date is either "Never" or the date the
+#. * password was last modified.  The date is the number of
+#. * days since 1/1/1970.
+#.
+#: src/chage.c:300
+msgid "Last Change:\t\t"
+msgstr "ïÓÔÁÎÎÑ ÚͦÎÁ:\t\t"
+
+#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346
+msgid "Never\n"
+msgstr "î¦ËÏÌÉ\n"
+
+#.
+#. * The password expiration date is determined from the last
+#. * change date plus the number of days the password is valid
+#. * for.
+#.
+#: src/chage.c:314
+msgid "Password Expires:\t"
+msgstr "ðÁÒÏÌØ ÐÒÏÓÔÒÏÞÅÎÎÏ:\t"
+
+#.
+#. * The account becomes inactive if the password is expired
+#. * for more than "inactdays".  The expiration date is calculated
+#. * and the number of inactive days is added.  The resulting date
+#. * is when the active will be disabled.
+#.
+#: src/chage.c:330
+#, fuzzy
+msgid "Password Inactive:\t"
+msgstr "ðÁÒÏÌØ ÎÅÁËÔÉ×ÎÉÊ:\t"
+
+#.
+#. * The account will expire on the given date regardless of the
+#. * password expiring or not.
+#.
+#: src/chage.c:344
+#, fuzzy
+msgid "Account Expires:\t"
+msgstr "òÁÈÕÎÏË ÐÒÏÓÔÒÏÞÅÎÏ:\t"
+
+#: src/chage.c:453 src/chpasswd.c:139 src/groupadd.c:536 src/groupdel.c:322
+#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1721 src/userdel.c:738
+#: src/usermod.c:1687
+#, fuzzy, c-format
+msgid "%s: PAM authentication failed\n"
+msgstr "%s: PAM ÁÕÔÅÎÔÉÆ¦ËÁæѠÎÅ ÐÒÏÊÛÌÁ\n"
+
+#: src/chage.c:536
+#, c-format
+msgid "%s: do not include \"l\" with other flags\n"
+msgstr "%s: ÎÅ ×ÉËÏÒÉÓÔÏ×ÕÊÔÅ \"l\" Ú ¦ÎÛ¦ÍÉ ÆÌÁÇÁÍÉ\n"
+
+#: src/chage.c:548 src/chage.c:660 src/login.c:532
+#, c-format
+msgid "%s: permission denied\n"
+msgstr "%s: Õ ÄÏÓÔÕЦ ×¦ÄÍÏ×ÌÅÎÏ\n"
+
+#: src/chage.c:560 src/chpasswd.c:157
+#, c-format
+msgid "%s: can't lock password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:566 src/chpasswd.c:161
+#, c-format
+msgid "%s: can't open password file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:573
+#, c-format
+msgid "%s: unknown user: %s\n"
+msgstr "%s: ÎÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ: %s\n"
+
+#: src/chage.c:592
+#, c-format
+msgid "%s: can't lock shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:599
+#, c-format
+msgid "%s: can't open shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:681
+#, c-format
+msgid "Changing the aging information for %s\n"
+msgstr "úͦÎÀÀ ×¦ËÏ×Õ ¦ÎÆÏÒÍÁæÀ ÄÌÑ %s\n"
+
+#: src/chage.c:683
+#, c-format
+msgid "%s: error changing fields\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÚÁͦÎÉ ÐÏÌÑ\n"
+
+#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:174
+#, c-format
+msgid "%s: can't update password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:740 src/pwunconv.c:169
+#, c-format
+msgid "%s: can't update shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409
+#: src/passwd.c:825 src/passwd.c:926
+msgid "Error updating the DBM password entry.\n"
+msgstr "ðÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÚÁÐÉÓÕ ÐÁÒÏÌÑ Õ DBM.\n"
+
+#: src/chage.c:821
+#, c-format
+msgid "%s: can't rewrite shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:835
+#, c-format
+msgid "%s: can't rewrite password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/chage.c:853 src/chpasswd.c:333 src/groupadd.c:595 src/groupdel.c:409
+#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1830 src/userdel.c:903
+#: src/usermod.c:1765
+#, fuzzy, c-format
+msgid "%s: PAM chauthtok failed\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÒÁÚÂÌÏËÕ×ÁÔÉ ÆÁÊÌ\n"
+
+#: src/chage.c:905
+#, c-format
+msgid "%s: no aging information present\n"
+msgstr "%s: ÎÅÍÁ¤ ¦ÎÆÏÒÍÁæ§ ÐÒϠצË\n"
+
+#: src/chfn.c:107
+#, c-format
+msgid ""
+"Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ]\n"
+"\t[ -h home_ph ] [ -o other ] [ user ]\n"
+msgstr ""
+"÷ÉËÏÒÉÓÔÏ×ÕÊÔ¤: %s [ -f ÐÏ×ÎÅ_¦Í'Ñ ] [ -r ÎÏÍÅÒ_˦ÍÎÁÔÉ ]\n"
+"\t[ -w ÒÏÂÏÞ¦Ê_ÔÅÌÅÆÏΠ]\n"
+" [ -h ÄÏÍÁÛΦÊ_ÔÅÌÅÆÏΠ] [ -o ¦ÎÛÅ ]\n"
+"\t[ ËÏÒÉÓÔÕ×ÁÞ ]\n"
+
+#: src/chfn.c:111
+#, c-format
+msgid ""
+"Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ] [ -h home_ph ]\n"
+msgstr ""
+"÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -f ÐÏ×ÎÅ_¦Í'Ñ ] [ -r ÎÏÍÅÒ_˦ÍÎÁÔÉ ]\n"
+"\t[ -w ÒÏÂÏÞ¦Ê_ÔÅÌÅÆÏΠ]\n"
+" [ -h ÄÏÍÁÛΦÊ_ÔÅÌÅÆÏΠ]\n"
+
+#: src/chfn.c:163 src/chsh.c:119
+msgid "Enter the new value, or press return for the default\n"
+msgstr ""
+"÷×ÅÄ¦ÔØ ÎÏ×Å ÚÎÁÞÅÎÎÑ, ÁÂÏ ÎÁÖÍ¦ÔØ Enter ÄÌÑ ÚÎÁÞÅÎÎÑ ÐÏ ÚÁÍÏ×ÞÕ×ÁÎÎÀ\n"
+
+#: src/chfn.c:166
+msgid "Full Name"
+msgstr "ðÏ×ÎÅ ¦Í'Ñ"
+
+#: src/chfn.c:168
+#, c-format
+msgid "\tFull Name: %s\n"
+msgstr "\tðÏ×ÎÅ ¦Í'Ñ: %s\n"
+
+#: src/chfn.c:171
+msgid "Room Number"
+msgstr "îÏÍÅҠ˦ÍÎÁÔÉ"
+
+#: src/chfn.c:173
+#, c-format
+msgid "\tRoom Number: %s\n"
+msgstr "\tîÏÍÅҠ˦ÍÎÁÔÉ: %s\n"
+
+#: src/chfn.c:176
+msgid "Work Phone"
+msgstr "òÏÂÏަʠÔÅÌÅÆÏÎ"
+
+#: src/chfn.c:178
+#, c-format
+msgid "\tWork Phone: %s\n"
+msgstr "\tòÏÂÏަʠÔÅÌÅÆÏÎ: %s\n"
+
+#: src/chfn.c:181
+msgid "Home Phone"
+msgstr "äÏÍÁÛΦʠÔÅÌÅÆÏÎ"
+
+#: src/chfn.c:183
+#, c-format
+msgid "\tHome Phone: %s\n"
+msgstr "\täÏÍÁÛΦʠÔÅÌÅÆÏÎ: %s\n"
+
+#: src/chfn.c:186
+msgid "Other"
+msgstr "¶ÎÛÅ"
+
+#: src/chfn.c:298 src/chfn.c:306 src/chfn.c:314 src/chfn.c:322 src/chfn.c:330
+#: src/chfn.c:391 src/passwd.c:1226
+#, c-format
+msgid "%s: Permission denied.\n"
+msgstr "%s: õ ÄÏÓÔÕЦ ×¦ÄÍÏ×ÌÅÎÏ.\n"
+
+#: src/chfn.c:351 src/chsh.c:224 src/passwd.c:1277
+#, c-format
+msgid "%s: Unknown user %s\n"
+msgstr "%s: îÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ %s\n"
+
+#: src/chfn.c:357 src/chsh.c:232 src/passwd.c:1207
+#, c-format
+msgid "%s: Cannot determine your user name.\n"
+msgstr "%s: îÅ ÍÏÖÕ ×ÉÚÎÁÞÉÔÉ ×ÁÛÅ ¦Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ.\n"
+
+#: src/chfn.c:373 src/chsh.c:250
+#, c-format
+msgid "%s: cannot change user `%s' on NIS client.\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚͦÎÉÔÉ ËÏÒÉÓÔÕ×ÁÞÁ `%s' Õ Ë̦¤ÎÔ¦ NIS.\n"
+
+#: src/chfn.c:378 src/chsh.c:257
+#, c-format
+msgid "%s: `%s' is the NIS master for this client.\n"
+msgstr "%s: `%s' ¤ NIS ÓÅÒ×ÅÒ ÄÌÑ ÃØÏÇÏ Ë̦¤ÎÔÁ.\n"
+
+#: src/chfn.c:453
+#, c-format
+msgid "Changing the user information for %s\n"
+msgstr "úͦÎÁ ¦ÎÆÏÒÍÁæ§ ÐÒÏ ËÏÒÉÓÔÕ×ÁÞÁ %s\n"
+
+#: src/chfn.c:462
+#, c-format
+msgid "%s: invalid name: \"%s\"\n"
+msgstr "%s: ÎÅצÒÎÅ ¦Í'Ñ: \"%s\"\n"
+
+#: src/chfn.c:467
+#, c-format
+msgid "%s: invalid room number: \"%s\"\n"
+msgstr "%s: ÎÅצÒÎÉÊ ÎÏÍÅҠ˦ÍÎÁÔÉ: \"%s\"\n"
+
+#: src/chfn.c:472
+#, c-format
+msgid "%s: invalid work phone: \"%s\"\n"
+msgstr "%s: ÎÅצÒÎÉÊ ÒÏÂÏÞÉÊ ÔÅÌÅÆÏÎ: \"%s\"\n"
+
+#: src/chfn.c:477
+#, c-format
+msgid "%s: invalid home phone: \"%s\"\n"
+msgstr "%s: ÎÅצÒÎÉÊ ÄÏÍÁÛΦʠÔÅÌÅÆÏÎ: \"%s\"\n"
+
+#: src/chfn.c:482
+#, c-format
+msgid "%s: \"%s\" contains illegal characters\n"
+msgstr "%s: \"%s\" ×ËÌÀÞÁ¤ ÚÁÂÏÒÏÎÅΦ ÓÉÍ×ÏÌÉ\n"
+
+#: src/chfn.c:494
+#, c-format
+msgid "%s: fields too long\n"
+msgstr "%s: ÐÏÌÑ ÚÁÎÁÄÔÏ ÄÏ×Ǧ\n"
+
+#: src/chfn.c:509 src/chsh.c:347 src/gpasswd.c:582 src/passwd.c:1388
+msgid "Cannot change ID to root.\n"
+msgstr "îÅ ÍÏÖÕ ÚͦÎÉÔÉ ID ÎÁ root.\n"
+
+#: src/chfn.c:522 src/chsh.c:361 src/passwd.c:735 src/passwd.c:880
+msgid "Cannot lock the password file; try again later.\n"
+msgstr "îÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ; ÓÐÒÏÂÕÊÔŠЦÚΦÛÅ.\n"
+
+#: src/chfn.c:528 src/chsh.c:367 src/passwd.c:740 src/passwd.c:885
+msgid "Cannot open the password file.\n"
+msgstr "îÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ.\n"
+
+#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1320
+#, c-format
+msgid "%s: %s not found in /etc/passwd\n"
+msgstr "%s: %s ÎÅ ÚÎÁÊÄÅÎÏ Õ /etc/passwd\n"
+
+#: src/chfn.c:562 src/chsh.c:401 src/passwd.c:819 src/passwd.c:920
+#: src/passwd.c:960
+msgid "Error updating the password entry.\n"
+msgstr "îÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÁÒÏÌÅÊ.\n"
+
+#: src/chfn.c:585 src/chsh.c:424 src/passwd.c:832 src/passwd.c:933
+msgid "Cannot commit password file changes.\n"
+msgstr "îÅ ÍÏÖÕ ÚÁÐÉÓÁÔÉ ÚͦÎÉ ÄÏ ÆÁÊÌÕ ÐÁÒÏÌÅÊ.\n"
+
+#: src/chfn.c:592 src/chsh.c:431
+msgid "Cannot unlock the password file.\n"
+msgstr "îÅ ÍÏÖÕ ÒÁÚÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ.\n"
+
+#: src/chpasswd.c:69
+#, c-format
+msgid "usage: %s [-e]\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [-e]\n"
+
+#: src/chpasswd.c:169 src/pwconv.c:104
+#, c-format
+msgid "%s: can't lock shadow file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ Ú ÐÒÉÈÏ×ÁÎÉÍÉ ÐÁÒÏÌÑÍÉ\n"
+
+#: src/chpasswd.c:174 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:109
+#: src/pwunconv.c:114
+#, c-format
+msgid "%s: can't open shadow file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ Ú ÐÒÉÈÏ×ÁÎÉÍÉ ÐÁÒÏÌÑÍÉ\n"
+
+#: src/chpasswd.c:196 src/newusers.c:465
+#, c-format
+msgid "%s: line %d: line too long\n"
+msgstr "%s: ÒÑÄÏË %d: ÒÑÄÏË ÚÁÎÁÄÔÏ ÄÏ×ÇÉÊ\n"
+
+#: src/chpasswd.c:216
+#, c-format
+msgid "%s: line %d: missing new password\n"
+msgstr "%s: ÒÑÄÏË %d: ÂÒÁËÕ¤ ÎÏ×ÏÇÏ ÐÁÒÏÌÑ\n"
+
+#: src/chpasswd.c:232
+#, c-format
+msgid "%s: line %d: unknown user %s\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ %s\n"
+
+#: src/chpasswd.c:284
+#, c-format
+msgid "%s: line %d: cannot update password entry\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ Õ ÂÁÚ¦ ÐÁÒÏÌÅÊ\n"
+
+#: src/chpasswd.c:300 src/newusers.c:585
+#, c-format
+msgid "%s: error detected, changes ignored\n"
+msgstr "%s: ×ÉÑ×ÌÅÎÏ ÐÏÍÉÌËÕ, ÚͦÎÉ ¦ÇÎÏÒÕÀÔØÓÑ\n"
+
+#: src/chpasswd.c:311
+#, c-format
+msgid "%s: error updating shadow file\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÆÁÊÌÕ Ú ÐÒÉÈÏ×ÁÎÉÍÉ ÐÁÒÏÌÑÍÉ\n"
+
+#: src/chpasswd.c:319
+#, c-format
+msgid "%s: error updating password file\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÆÁÊÌÕ Ú ÐÁÒÏÌÑÍÉ\n"
+
+#: src/chsh.c:105
+#, c-format
+msgid "Usage: %s [ -s shell ] [ name ]\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -s shell ] [ ¦Í'Ñ ]\n"
+
+#: src/chsh.c:120
+msgid "Login Shell"
+msgstr "Login Shell"
+
+#: src/chsh.c:273 src/chsh.c:286
+#, c-format
+msgid "You may not change the shell for %s.\n"
+msgstr "îÅ ÍÏÖÎÁ ÚͦÎÉÔÉ shell ÄÌÑ %s.\n"
+
+#: src/chsh.c:315
+#, c-format
+msgid "Changing the login shell for %s\n"
+msgstr "úͦÎÀÀ shell ÄÌÑ %s\n"
+
+#: src/chsh.c:327
+#, c-format
+msgid "%s: Invalid entry: %s\n"
+msgstr "%s: îÅצÒÎÉÊ ÚÁÐÉÓ: %s\n"
+
+#: src/chsh.c:332
+#, c-format
+msgid "%s is an invalid shell.\n"
+msgstr "%s ¤ ÎÅצÒÎÉÊ shell.\n"
+
+#: src/dpasswd.c:69
+#, c-format
+msgid "Usage: %s [ -(a|d) ] shell\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -(a|d) ] shell\n"
+
+#: src/dpasswd.c:134
+msgid "Shell password: "
+msgstr "Shell ÐÁÒÏÌØ: "
+
+#: src/dpasswd.c:140
+msgid "re-enter Shell password: "
+msgstr "ðÏ×ÔÏÒ¦ÔØ ÐÁÒÏÌØ ÄÌÑ shell: "
+
+#: src/dpasswd.c:147
+#, c-format
+msgid "%s: Passwords do not match, try again.\n"
+msgstr "%s: ðÁÒÏÌØ ÎÅ ÓЦ×ÐÁÄÁ¤, ÓÐÒÏÂÕÊÔÅ ÚÎÏ×Õ.\n"
+
+#: src/dpasswd.c:167
+#, c-format
+msgid "%s: can't create %s"
+msgstr "%s: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ %s"
+
+#: src/dpasswd.c:172
+#, c-format
+msgid "%s: can't open %s"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ %s"
+
+#: src/dpasswd.c:200
+#, c-format
+msgid "%s: Shell %s not found.\n"
+msgstr "%s: Shell %s ÎÅ ÚÎÁÊÄÅÎÏ.\n"
+
+#: src/expiry.c:84
+msgid "Usage: expiry { -f | -c }\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: expiry { -f | -c }\n"
+
+#: src/expiry.c:137
+#, c-format
+msgid "%s: WARNING!  Must be set-UID root!\n"
+msgstr "%s: úáóôåòåöåîîñ! ðÒÏÇÒÁÍÁ ÐÏ×ÉÎÁ ÂÕÔÉ SUID root!\n"
+
+#: src/expiry.c:148
+#, c-format
+msgid "%s: unknown user\n"
+msgstr "%s: ÎÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ\n"
+
+#: src/faillog.c:79
+#, c-format
+msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n"
+msgstr ""
+"×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [-a|-u ËÏÒÉÓÔÕ×ÁÞ] [-m ÍÁËÓ] [-r] [-t ÄΦ×] [-l ÌÏË_ÓÅË]\n"
+
+#: src/faillog.c:134 src/lastlog.c:103
+#, c-format
+msgid "Unknown User: %s\n"
+msgstr "îÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ: %s\n"
+
+#: src/faillog.c:215
+#, fuzzy
+msgid "Username   Failures  Maximum  Latest\n"
+msgstr "ëÏÒÉÓÔÕ×ÁÞ ðÏÍÉÌÏË   íÁËÓ¦ÍÕÍ ïÓÔÁÎÎÑ\n"
+
+#: src/faillog.c:232
+#, c-format
+msgid "  %s on %s"
+msgstr "  %s ÎÁ %s"
+
+#: src/faillog.c:236
+#, c-format
+msgid " [%lds left]"
+msgstr " [%lds ÚÁÌÉÛÉÌÏÓØ]"
+
+#: src/faillog.c:239
+#, c-format
+msgid " [%lds lock]"
+msgstr " [%lds ÂÌÏËÏ×ÁÎÏ]"
+
+#: src/gpasswd.c:89
+#, c-format
+msgid "usage: %s [-r|-R] group\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [-r|-R] ÇÒÕÐÁ\n"
+
+#: src/gpasswd.c:90
+#, c-format
+msgid "       %s [-a user] group\n"
+msgstr "       %s [-a ËÏÒÉÓÔÕ×ÁÞ] ÇÒÕÐÁ\n"
+
+#: src/gpasswd.c:91
+#, c-format
+msgid "       %s [-d user] group\n"
+msgstr "       %s [-d ËÏÒÉÓÔÕ×ÁÞ] ÇÒÕÐÁ\n"
+
+#: src/gpasswd.c:93
+#, c-format
+msgid "       %s [-A user,...] [-M user,...] group\n"
+msgstr "       %s [-A ËÏÒÉÓÔÕ×ÁÞ,...] [-M ËÏÒÉÓÔÕ×ÁÞ,...] ÇÒÕÐÁ\n"
+
+#: src/gpasswd.c:96
+#, c-format
+msgid "       %s [-M user,...] group\n"
+msgstr "       %s [-M ËÏÒÉÓÔÕ×ÁÞ,...] ÇÒÕÐÁ\n"
+
+#: src/gpasswd.c:160 src/gpasswd.c:245
+#, c-format
+msgid "%s: unknown user %s\n"
+msgstr "%s: ÎÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ %s\n"
+
+#: src/gpasswd.c:172
+msgid "Permission denied.\n"
+msgstr "äÏÓÔÕРÚÁÂÏÒÏÎÅÎÏ.\n"
+
+#: src/gpasswd.c:257
+#, c-format
+msgid "%s: shadow group passwords required for -A\n"
+msgstr "%s: ÐÒÉÈÏ×ÁΦ ÐÁÒÏ̦ ÇÒÕРÐÏÔÒ¦ÂΦ ÄÌÑ -A\n"
+
+#: src/gpasswd.c:308
+msgid "Who are you?\n"
+msgstr "÷É ÈÔÏ?\n"
+
+#: src/gpasswd.c:328 src/newgrp.c:251
+#, c-format
+msgid "unknown group: %s\n"
+msgstr "ÎÅצÄÏÍÁ ÇÒÕÐÁ: %s\n"
+
+#: src/gpasswd.c:436
+#, c-format
+msgid "Adding user %s to group %s\n"
+msgstr "äÏÄÁÎÏ ÎÏ×ÏÇÏ ËÏÒÉÓÔÕ×ÁÞÁ %s ÄÏ ÇÒÕÐÉ %s\n"
+
+#: src/gpasswd.c:453
+#, c-format
+msgid "Removing user %s from group %s\n"
+msgstr "÷ÉÄÁÌÅÎÏ ËÏÒÉÓÔÕ×ÁÞÁ %s Ú ÇÒÕÐÉ %s\n"
+
+#: src/gpasswd.c:466
+#, c-format
+msgid "%s: unknown member %s\n"
+msgstr "%s: ÎÅצÄÏÍÉÊ ÞÌÅΠ%s\n"
+
+#: src/gpasswd.c:513
+#, c-format
+msgid "%s: Not a tty\n"
+msgstr "%s: îÅ ¤ tty\n"
+
+#.
+#. * A new password is to be entered and it must be encrypted,
+#. * etc.  The password will be prompted for twice, and both
+#. * entries must be identical.  There is no need to validate
+#. * the old password since the invoker is either the group
+#. * owner, or root.
+#.
+#: src/gpasswd.c:535
+#, c-format
+msgid "Changing the password for group %s\n"
+msgstr "úͦÎÁ ÐÁÒÏÌÑ ÄÌÑ ÇÒÕÐÉ %s\n"
+
+#: src/gpasswd.c:538
+msgid "New Password: "
+msgstr "îÏ×ÉÊ ÐÁÒÏÌØ: "
+
+#: src/gpasswd.c:543 src/passwd.c:422
+msgid "Re-enter new password: "
+msgstr "ðÏ×ÔÏÒ¦ÔØ ÎÏ×ÉÊ ÐÁÒÏÌØ: "
+
+#: src/gpasswd.c:555
+msgid "They don't match; try again"
+msgstr "ÎÅ ÓЦ×ÐÁÄÁ¤; ÓÐÒÏÂÕÊÔÅ ÚÎÏ×Õ"
+
+#: src/gpasswd.c:559
+#, c-format
+msgid "%s: Try again later\n"
+msgstr "%s: óÐÒÏÂÕÊÔÅ ÚÎÏ×ՠЦÚΦÛÅ\n"
+
+#: src/gpasswd.c:590
+#, c-format
+msgid "%s: can't get lock\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ\n"
+
+#: src/gpasswd.c:596
+#, c-format
+msgid "%s: can't get shadow lock\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÂÁÚÕ ÐÒÉÈÏ×ÁÎÉÊ ÐÁÒÏÌÅÊ\n"
+
+#: src/gpasswd.c:602
+#, c-format
+msgid "%s: can't open file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ\n"
+
+#: src/gpasswd.c:614
+#, c-format
+msgid "%s: can't update entry\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ\n"
+
+#: src/gpasswd.c:620
+#, c-format
+msgid "%s: can't update shadow entry\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ Õ ÂÁÚ¦ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/gpasswd.c:626
+#, c-format
+msgid "%s: can't re-write file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ\n"
+
+#: src/gpasswd.c:632
+#, c-format
+msgid "%s: can't re-write shadow file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÊ ÐÁÒÏÌÅÊ\n"
+
+#: src/gpasswd.c:640
+#, c-format
+msgid "%s: can't unlock file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÒÁÚÂÌÏËÕ×ÁÔÉ ÆÁÊÌ\n"
+
+#: src/gpasswd.c:645
+#, c-format
+msgid "%s: can't update DBM files\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ DBM ÆÁÊÌ\n"
+
+#: src/gpasswd.c:652
+#, c-format
+msgid "%s: can't update DBM shadow files\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ DBM ÆÁÊÌ Ú ÐÒÉÈÏ×ÁÎÉÍÉ ÐÁÒÏÌÑÍÉ\n"
+
+#: src/groupadd.c:111
+msgid "usage: groupadd [-g gid [-o]] group\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: groupadd [-g gid [-o]] ÇÒÕÐÁ\n"
+
+#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236
+#: src/useradd.c:949 src/usermod.c:546 src/usermod.c:682
+#, c-format
+msgid "%s: error adding new group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÎÏ×ÏÇÏ ÚÁÐÉÓÕ Õ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:960
+#: src/usermod.c:558 src/usermod.c:694
+#, c-format
+msgid "%s: cannot add new dbm group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÎÏ×ÏÇÏ ÚÁÐÉÓÕ Õ ÆÁÊÌ ÇÒÕРdbm\n"
+
+#: src/groupadd.c:264 src/useradd.c:1014
+#, c-format
+msgid "%s: name %s is not unique\n"
+msgstr "%s: ¦Í'Ñ %s ÎÅ ¤ ÕΦËÁÌØÎÉÍ\n"
+
+#: src/groupadd.c:279
+#, c-format
+msgid "%s: gid %ld is not unique\n"
+msgstr "%s: gid %ld ÎÅ ¤ ÕΦËÁÌØÎÉÍ\n"
+
+#: src/groupadd.c:303
+#, c-format
+msgid "%s: can't get unique gid\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÔÒÉÍÁÔÉ ÕΦËÁÌØÎÉÊ gid\n"
+
+#.
+#. * All invalid group names land here.
+#.
+#: src/groupadd.c:327 src/groupmod.c:347
+#, c-format
+msgid "%s: %s is a not a valid group name\n"
+msgstr "%s: %s: ÔÏ ÎÅ ¤ ×¦ÒÎÅ ¦Í'Ñ ÇÒÕÐÉ\n"
+
+#: src/groupadd.c:356 src/groupmod.c:373
+#, c-format
+msgid "%s: invalid group %s\n"
+msgstr "%s: ÎÅצÒÎÁ ÇÒÕÐÁ %s\n"
+
+#: src/groupadd.c:373 src/useradd.c:1290
+#, c-format
+msgid "%s: -O requires NAME=VALUE\n"
+msgstr "%s: -O ×ÉÍÁÇÁ¤ úí¶îîá=úîáþåîîñ\n"
+
+#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1399
+#: src/userdel.c:309 src/usermod.c:570
+#, c-format
+msgid "%s: cannot rewrite group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1407
+#: src/userdel.c:315 src/usermod.c:707
+#, c-format
+msgid "%s: cannot rewrite shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395
+#, c-format
+msgid "%s: unable to lock group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438
+#, c-format
+msgid "%s: unable to open group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404
+#, c-format
+msgid "%s: unable to lock shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448
+#, c-format
+msgid "%s: unable to open shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/groupadd.c:568
+#, c-format
+msgid "%s: group %s exists\n"
+msgstr "%s: ÇÒÕÐÁ %s ¦ÓÎÕ¤\n"
+
+#: src/groupdel.c:92
+msgid "usage: groupdel group\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: groupdel ÇÒÕÐÁ\n"
+
+#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240
+#, c-format
+msgid "%s: error removing group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×¦ÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÇÒÕÐ\n"
+
+#: src/groupdel.c:122 src/groupmod.c:212
+#, c-format
+msgid "%s: error removing group dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×¦ÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÇÒÕРdbm\n"
+
+#: src/groupdel.c:137
+#, c-format
+msgid "%s: error removing shadow group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×¦ÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/groupdel.c:150 src/groupmod.c:258
+#, c-format
+msgid "%s: error removing shadow group dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×¦ÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕРdbm\n"
+
+#.
+#. * Can't remove the group.
+#.
+#: src/groupdel.c:254
+#, c-format
+msgid "%s: cannot remove user's primary group.\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ×ÉÄÁÌÉÔÉ ÇÏÌÏ×ÎÕ ÇÒÕÐÕ ËÏÒÉÓÔÕ×ÁÞÁ.\n"
+
+#: src/groupdel.c:355 src/groupmod.c:551
+#, c-format
+msgid "%s: group %s does not exist\n"
+msgstr "%s: ÇÒÕÐÁ %s ÎÅ ¦ÓÎÕ¤\n"
+
+#: src/groupdel.c:369 src/groupmod.c:567
+#, c-format
+msgid "%s: group %s is a NIS group\n"
+msgstr "%s: ÇÒÕÐÁ %s ¤ ÇÒÕÐÏÀ NIS\n"
+
+#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1023
+#, c-format
+msgid "%s: %s is the NIS master\n"
+msgstr "%s: %s ¤ ÓÅÒ×ÅÒ NIS\n"
+
+#: src/groupmems.c:92
+msgid "Member already exists\n"
+msgstr ""
+
+#: src/groupmems.c:121
+msgid "Member to remove could not be found\n"
+msgstr ""
+
+#: src/groupmems.c:151
+msgid "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n"
+msgstr ""
+
+#: src/groupmems.c:191
+msgid "Only root can add members to different groups\n"
+msgstr ""
+
+#: src/groupmems.c:196
+msgid "Group access is required\n"
+msgstr ""
+
+#: src/groupmems.c:199
+msgid "Not primary owner of current group\n"
+msgstr ""
+
+#: src/groupmems.c:204
+#, fuzzy
+msgid "Unable to lock group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupmems.c:209
+#, fuzzy
+msgid "Unable to open group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupmems.c:229
+#, fuzzy
+msgid "Cannot close group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/groupmod.c:111
+msgid "usage: groupmod [-g gid [-o]] [-n name] group\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: groupmod [-g gid [-o]] [-n ¦Í'Ñ] ÇÒÕÐÁ\n"
+
+#: src/groupmod.c:171
+#, fuzzy, c-format
+msgid "%s: %s not found in /etc/group\n"
+msgstr "%s: %s ÎÅ ÚÎÁÊÄÅÎÏ Õ /etc/passwd\n"
+
+#: src/groupmod.c:252
+#, c-format
+msgid "%s: cannot add new dbm shadow group entry\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÄÏÄÁÔÉ ÚÁÐÉÓ Õ ÂÁÚÕ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕРdbm\n"
+
+#: src/groupmod.c:305
+#, c-format
+msgid "%s: %ld is not a unique gid\n"
+msgstr "%s: %ld ÎÅ ¤ ÕΦËÁÌØÎÉÊ gid\n"
+
+#: src/groupmod.c:336
+#, c-format
+msgid "%s: %s is not a unique name\n"
+msgstr "%s: %s ÎÅ ¤ ÕΦËÁÌØÎÅ ¦Í'Ñ\n"
+
+#: src/groups.c:62
+#, c-format
+msgid "unknown user %s\n"
+msgstr "ÎÅצÄÏÍÉÊ ËÏÒÉÓÔÕ×ÁÞ %s\n"
+
+#: src/grpck.c:98
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group [ gshadow ] ]\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -r ] [ ÇÒÕÐÁ [ gshadow ] ]\n"
+
+#: src/grpck.c:100
+#, fuzzy, c-format
+msgid "Usage: %s [ -sr ] [ group ]\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -r ] [ ÇÒÕÐÁ ]\n"
+
+#: src/grpck.c:119 src/pwck.c:119
+msgid "No"
+msgstr "î¦"
+
+#: src/grpck.c:204 src/pwck.c:186
+#, c-format
+msgid "%s: -s and -r are incompatibile\n"
+msgstr ""
+
+#: src/grpck.c:244 src/grpck.c:252 src/pwck.c:226 src/pwck.c:235
+#, c-format
+msgid "%s: cannot lock file %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ %s\n"
+
+#: src/grpck.c:267 src/grpck.c:275 src/mkpasswd.c:216 src/pwck.c:251
+#: src/pwck.c:260
+#, c-format
+msgid "%s: cannot open file %s\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ %s\n"
+
+#.
+#. * Tell the user this entire line is bogus and
+#. * ask them to delete it.
+#.
+#: src/grpck.c:317
+msgid "invalid group file entry\n"
+msgstr "ÎÅצÒÎÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÇÒÕÐ\n"
+
+#: src/grpck.c:318 src/grpck.c:381 src/grpck.c:473 src/grpck.c:536
+#: src/grpck.c:553 src/pwck.c:305 src/pwck.c:367 src/pwck.c:474 src/pwck.c:536
+#: src/pwck.c:560
+#, c-format
+msgid "delete line `%s'? "
+msgstr "×ÉÄÁÌÉÔÉ ÚÁÐÉÓ `%s'? "
+
+#.
+#. * Tell the user this entry is a duplicate of
+#. * another and ask them to delete it.
+#.
+#: src/grpck.c:380
+msgid "duplicate group entry\n"
+msgstr "ÐÏ×ÔÏÒÀÀÞÉÓÑ ÚÁÐÉÓÉ Õ ÂÁÚ¦ ÇÒÕÐ\n"
+
+#: src/grpck.c:397
+#, c-format
+msgid "invalid group name `%s'\n"
+msgstr "ÎÅצÒÎÅ ¦Í'Ñ ÇÒÕÐÉ `%s'\n"
+
+#: src/grpck.c:407
+#, c-format
+msgid "group %s: bad GID (%d)\n"
+msgstr "ÇÒÕÐÁ %s: ÍÁ¤ ÎÅצÒÎÉÊ GID (%d)\n"
+
+#: src/grpck.c:433
+#, c-format
+msgid "group %s: no user %s\n"
+msgstr "ÇÒÕÐÁ %s: ÎÅ ÍÁ¤ ËÏÒÉÓÔÕ×Áަנ%s\n"
+
+#: src/grpck.c:435 src/grpck.c:604
+#, c-format
+msgid "delete member `%s'? "
+msgstr "×ÉÄÁÌÉÔÉ ÞÌÅÎÁ `%s'? "
+
+#.
+#. * Tell the user this entire line is bogus and
+#. * ask them to delete it.
+#.
+#: src/grpck.c:472
+msgid "invalid shadow group file entry\n"
+msgstr "ÎÅצÒÎÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#.
+#. * Tell the user this entry is a duplicate of
+#. * another and ask them to delete it.
+#.
+#: src/grpck.c:535
+msgid "duplicate shadow group entry\n"
+msgstr "ÐÏ×ÔÏÒÀÀÞÉÊÓÑ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/grpck.c:552
+msgid "no matching group file entry\n"
+msgstr "צÄÓÕÔΦʠצÄÐÏצÄÎÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÇÒÕÐ\n"
+
+#: src/grpck.c:572
+#, c-format
+msgid "shadow group %s: no administrative user %s\n"
+msgstr "ÐÒÉÈÏ×ÁÎÁ ÇÒÕÐÁ %s: ÎÅ ÍÁ¤ ÁÄͦΦÓÔÒÁÔÏÒÁ %s\n"
+
+#: src/grpck.c:574
+#, c-format
+msgid "delete administrative member `%s'? "
+msgstr "×ÉÄÁÌÉÔÉ ÁÄͦΦÓÔÒÁÔÏÒÁ `%s'? "
+
+#: src/grpck.c:602
+#, c-format
+msgid "shadow group %s: no user %s\n"
+msgstr "ÐÒÉÈÏ×ÁÎÁ ÇÒÕÐÁ %s: ÎÅ ÍÁ¤ ËÏÒÉÓÔÕ×Áަנ%s\n"
+
+#: src/grpck.c:630 src/grpck.c:636 src/pwck.c:592 src/pwck.c:600
+#, c-format
+msgid "%s: cannot update file %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ %s\n"
+
+#: src/grpck.c:660 src/pwck.c:626
+#, c-format
+msgid "%s: the files have been updated; run mkpasswd\n"
+msgstr "%s: ÆÁÊÌÉ ÂÕÌÏ ÏÎÏ×ÌÅÎÏ; ×ÉËÏÎÁÊÔÅ mkpasswd\n"
+
+#: src/grpck.c:661 src/grpck.c:665 src/pwck.c:627 src/pwck.c:631
+#, c-format
+msgid "%s: no changes\n"
+msgstr "%s: ÂÅÚ ÚͦÎ\n"
+
+#: src/grpck.c:664 src/pwck.c:630
+#, c-format
+msgid "%s: the files have been updated\n"
+msgstr "%s: ÆÁÊÌÉ ÂÕÌÏ ÏÎÏ×ÌÅÎÏ\n"
+
+#: src/grpconv.c:62 src/grpunconv.c:63
+#, c-format
+msgid "%s: can't lock group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/grpconv.c:67 src/grpunconv.c:68
+#, c-format
+msgid "%s: can't open group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/grpconv.c:72 src/grpunconv.c:73
+#, c-format
+msgid "%s: can't lock shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/grpconv.c:77 src/grpunconv.c:78
+#, c-format
+msgid "%s: can't open shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#.
+#. * This shouldn't happen (the entry exists) but...
+#.
+#: src/grpconv.c:93
+#, c-format
+msgid "%s: can't remove shadow group %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ×ÉÄÁÌÉÔÉ ÐÒÉÈÏ×ÁÎÕ ÇÒÕÐÕ %s\n"
+
+#: src/grpconv.c:134 src/pwconv.c:160
+#, c-format
+msgid "%s: can't update shadow entry for %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÐÒÉÈÏ×ÁÎÉÊ ÚÁÐÉÓ ÄÌÑ %s\n"
+
+#: src/grpconv.c:143 src/grpunconv.c:94
+#, c-format
+msgid "%s: can't update entry for group %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ ÄÌÑ ÇÒÕÐÉ %s\n"
+
+#: src/grpconv.c:150 src/grpunconv.c:102
+#, c-format
+msgid "%s: can't update shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/grpconv.c:154 src/grpunconv.c:107
+#, c-format
+msgid "%s: can't update group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/grpconv.c:169 src/grpunconv.c:128
+#, c-format
+msgid "%s: not configured for shadow group support.\n"
+msgstr "%s: ÎÅ ÚËÏÎÆ¦ÇÕÒÏ×ÁÎÏ ÄÌѠЦÄÔÒÉÍËÉ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ.\n"
+
+#: src/grpunconv.c:112
+#, c-format
+msgid "%s: can't delete shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ×ÉÄÁÌÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/id.c:56
+msgid "usage: id [ -a ]\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: id [ -a ]\n"
+
+#: src/id.c:58
+msgid "usage: id\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: id\n"
+
+#: src/id.c:127
+#, c-format
+msgid "uid=%d(%s)"
+msgstr "uid=%d(%s)"
+
+#: src/id.c:129
+#, c-format
+msgid "uid=%d"
+msgstr "uid=%d"
+
+#: src/id.c:133
+#, c-format
+msgid " gid=%d(%s)"
+msgstr " gid=%d(%s)"
+
+#: src/id.c:135
+#, c-format
+msgid " gid=%d"
+msgstr " gid=%d"
+
+#: src/id.c:145
+#, c-format
+msgid " euid=%d(%s)"
+msgstr " euid=%d(%s)"
+
+#: src/id.c:147
+#, c-format
+msgid " euid=%d"
+msgstr " euid=%d"
+
+#: src/id.c:152
+#, c-format
+msgid " egid=%d(%s)"
+msgstr " egid=%d(%s)"
+
+#: src/id.c:154
+#, c-format
+msgid " egid=%d"
+msgstr " egid=%d"
+
+#.
+#. * Start off the group message.  It will be of the format
+#. *
+#. *   groups=###(aaa),###(aaa),###(aaa)
+#. *
+#. * where "###" is a numerical value and "aaa" is the
+#. * corresponding name for each respective numerical value.
+#.
+#: src/id.c:175
+msgid " groups="
+msgstr " ÇÒÕÐÉ="
+
+#: src/lastlog.c:116 src/lastlog.c:120
+#, c-format
+msgid "Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"
+msgstr ""
+
+#: src/lastlog.c:184
+msgid "Username         Port     From             Latest\n"
+msgstr "ëÏÒÉÓÔÕ×ÁÞ       ëÏÎÓÏÌØ  úצÄËÉ           ïÓÔÁÎΦʠ×ȦÄ\n"
+
+#: src/lastlog.c:186
+msgid "Username                Port     Latest\n"
+msgstr "ëÏÒÉÓÔÕ×ÁÞ             ðÏÒÔ     ïÓÔÁÎΦʠ×ȦÄ\n"
+
+#: src/lastlog.c:200
+msgid "**Never logged in**"
+msgstr "**î¦ËÏÌÉ ÎÅ ×ÈÏÄÉ×**"
+
+#: src/login.c:201
+#, c-format
+msgid "usage: %s [-p] [name]\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [-p] [¦Í'Ñ]\n"
+
+#: src/login.c:204
+#, c-format
+msgid "       %s [-p] [-h host] [-f name]\n"
+msgstr "       %s [-p] [-h ÈÏÓÔ] [-f ¦Í'Ñ]\n"
+
+#: src/login.c:206
+#, c-format
+msgid "       %s [-p] -r host\n"
+msgstr "       %s [-p] -r ÈÏÓÔ\n"
+
+#: src/login.c:289
+msgid "Invalid login time\n"
+msgstr "îÅצÒÎÉÊ ÞÁÓ ÄÌÑ ×ÈÏÄÕ\n"
+
+#: src/login.c:344
+msgid ""
+"\n"
+"System closed for routine maintenance\n"
+msgstr ""
+"\n"
+"óÉÓÔÅÍÕ ÚÁËÒÉÔÏ ÄÌÑ ÐÒÏÆ¦ÌÁËÔÉËÉ.\n"
+
+#: src/login.c:354
+msgid ""
+"\n"
+"[Disconnect bypassed -- root login allowed.]\n"
+msgstr ""
+"\n"
+"[ðÒÏÊÛÌϠצÄËÌÀÞÅÎÎÑ -- ÄÏÚ×ÏÌÅÎÏ ÌÉÛÅ ×ȦĠroot-a.]\n"
+
+#: src/login.c:393
+#, c-format
+msgid ""
+"\n"
+"Login timed out after %d seconds.\n"
+msgstr ""
+"\n"
+"þÁÓ ÌÏǦÎÕ ×ÉÞÅÒÐÁÎÏ ÚÁ %d ÓÅËÕÎÄ.\n"
+
+#: src/login.c:695
+#, c-format
+msgid " on `%.100s' from `%.200s'"
+msgstr " ÎÁ `%s.100s' Ú `%.200s'"
+
+#: src/login.c:697
+#, c-format
+msgid " on `%.100s'"
+msgstr " ÎÁ `%.100s'"
+
+#: src/login.c:837
+#, c-format
+msgid ""
+"\n"
+"%s login: "
+msgstr ""
+"\n"
+"%s login: "
+
+#: src/login.c:839
+msgid "login: "
+msgstr "login: "
+
+#: src/login.c:1029 src/sulogin.c:231
+msgid "Login incorrect"
+msgstr "îÅצÒÎÉÊ ÌÏǦÎ"
+
+#: src/login.c:1217
+msgid "Warning: login re-enabled after temporary lockout.\n"
+msgstr "úÁÓÔÅÒÅÖÅÎÎÑ: login ÐÏÎÏ×ÌÅÎϠЦÓÌÑ ÔÉÍÞÁÓÏ×ÏÇÏ ÂÌÏËÕ×ÁÎÎÑ.\n"
+
+#: src/login.c:1227
+#, c-format
+msgid "Last login: %s on %s"
+msgstr "ïÓÔÁÎΦʠ×ȦĠנÓÉÓÔÅÍÕ: %s ÎÁ %s"
+
+#: src/login.c:1230
+#, c-format
+msgid "Last login: %.19s on %s"
+msgstr "ïÓÔÁÎΦʠ×ȦĠנÓÉÓÔÅÍÕ: %s ÎÁ %s"
+
+#: src/login.c:1235
+#, c-format
+msgid " from %.*s"
+msgstr " Ú %.*s"
+
+#: src/login.c:1307
+msgid "Starting rad_login\n"
+msgstr "óÔÁÒÔÕ¤ÍÏ rad_login\n"
+
+#: src/mkpasswd.c:49
+#, c-format
+msgid "%s: no DBM database on system - no action performed\n"
+msgstr "%s: ÎÅ ÍÁ¤ DBM ÂÁÚÉ ÄÁÎÎÉÈ Õ ÓÉÓÔÅͦ - Î¦ÑËÉȠĦʠÎÅ ×ÉËÏÎÁÎÏ\n"
+
+#: src/mkpasswd.c:74 src/mkpasswd.c:382
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -vf ] [ -p|g|sp|sg ] ÆÁÊÌ\n"
+
+#: src/mkpasswd.c:76 src/mkpasswd.c:384
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -vf ] [ -p|g|sp ] ÆÁÊÌ\n"
+
+#: src/mkpasswd.c:79 src/mkpasswd.c:387
+#, c-format
+msgid "Usage: %s [ -vf ] [ -p|g ] file\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -vf ] [ -p|g ] ÆÁÊÌ\n"
+
+#: src/mkpasswd.c:245 src/mkpasswd.c:249
+#, c-format
+msgid "%s: cannot overwrite file %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÚÁÐÉÓÁÔÉ ÆÁÊÌ %s\n"
+
+#: src/mkpasswd.c:263
+#, c-format
+msgid "%s: cannot open DBM files for %s\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌÉ DBM ÄÌÑ %s\n"
+
+#: src/mkpasswd.c:296
+#, c-format
+msgid "%s: the beginning with "
+msgstr "%s: ÒÏÚÐÏÞÉÎÁ¤ÍÏ Ú "
+
+#: src/mkpasswd.c:296
+#, fuzzy
+msgid " is too long\n"
+msgstr "%s: ÐÏÌÑ ÚÁÎÁÄÔÏ ÄÏ×Ǧ\n"
+
+#: src/mkpasswd.c:321
+#, c-format
+msgid "%s: error parsing line \"%s\"\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÂÒÏÂËÉ ÒÑÄËÕ \"%s\"\n"
+
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+msgid "adding record for name "
+msgstr "ÄÏÄÁÎÏ ÚÁÐÉÓ ÄÌÑ ¦ÍÅΦ "
+
+#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+msgid "\n"
+msgstr ""
+
+#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349
+#, c-format
+msgid "%s: error adding record for "
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÚÁÐÉÓÕ "
+
+#: src/mkpasswd.c:367
+#, c-format
+msgid "added %d entries, longest was %d\n"
+msgstr "ÄÏÄÁÎÏ %d ÚÁÐÉÓ¦×, ÄÏ×ÖÉÎÏÀ %d\n"
+
+#: src/newgrp.c:66
+msgid "usage: newgrp [ - ] [ group ]\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: newgrp [ - ] [ ÇÒÕÐÁ ]\n"
+
+#: src/newgrp.c:68
+#, fuzzy
+msgid "usage: sg group [[-c] command ]\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: sg ÇÒÕÐÁ [ ËÏÍÁÎÄÁ ]\n"
+
+#: src/newgrp.c:125
+#, c-format
+msgid "unknown uid: %d\n"
+msgstr "ÎÅצÄÏÍÉÊ uid: %d\n"
+
+#: src/newgrp.c:201
+#, c-format
+msgid "unknown gid: %ld\n"
+msgstr "ÎÅצÄÏÍÉÊ gid: %ld\n"
+
+#: src/newgrp.c:245
+#, c-format
+msgid "unknown gid: %d\n"
+msgstr "ÎÅצÄÏÍÉÊ gid: %d\n"
+
+#: src/newgrp.c:323 src/newgrp.c:332
+msgid "Sorry.\n"
+msgstr "÷ÉÂÁÞÔÅ.\n"
+
+#: src/newgrp.c:364
+msgid "too many groups\n"
+msgstr "ÚÁÎÁÄÔÏ ÂÁÇÁÔÏ ÇÒÕÐ\n"
+
+#: src/newusers.c:82
+#, c-format
+msgid "Usage: %s [ input ]\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ input ]\n"
+
+#: src/newusers.c:414
+#, c-format
+msgid "%s: can't lock /etc/passwd.\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ /etc/passwd.\n"
+
+#: src/newusers.c:425
+#, c-format
+msgid "%s: can't lock files, try again later\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌÉ, ÓÐÒÏÂÕÊÔŠЦÚΦÛÅ\n"
+
+#: src/newusers.c:440
+#, c-format
+msgid "%s: can't open files\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ\n"
+
+#: src/newusers.c:485
+#, c-format
+msgid "%s: line %d: invalid line\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅצÒÎÉÊ ÒÑÄÏË\n"
+
+#: src/newusers.c:503
+#, c-format
+msgid "%s: line %d: can't create GID\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ GID\n"
+
+#: src/newusers.c:519
+#, c-format
+msgid "%s: line %d: can't create UID\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ UID\n"
+
+#: src/newusers.c:531
+#, c-format
+msgid "%s: line %d: cannot find user %s\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅ ÍÏÖÕ ÚÎÁÊÔÉ ËÏÒÉÓÔÕ×ÁÞÁ %s\n"
+
+#: src/newusers.c:539
+#, c-format
+msgid "%s: line %d: can't update password\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÐÁÒÏÌØ\n"
+
+#: src/newusers.c:556
+#, c-format
+msgid "%s: line %d: mkdir failed\n"
+msgstr "%s: ÒÑÄÏË %d: mkdir ÎÅ ×ÉËÏÎÁ×ÓÑ\n"
+
+#: src/newusers.c:560
+#, c-format
+msgid "%s: line %d: chown failed\n"
+msgstr "%s: ÒÑÄÏË %d: chown ÎÅ ×ÉËÏÎÁ×ÓÑ\n"
+
+#: src/newusers.c:569
+#, c-format
+msgid "%s: line %d: can't update entry\n"
+msgstr "%s: ÒÑÄÏË %d: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ\n"
+
+#: src/newusers.c:600
+#, c-format
+msgid "%s: error updating files\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÆÁÊÌÕ\n"
+
+#: src/passwd.c:239
+#, c-format
+msgid "usage: %s [ -f | -s ] [ name ]\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -f | -s ] [ ¦Í'Ñ ]\n"
+
+#: src/passwd.c:242
+#, c-format
+msgid "       %s [ -x max ] [ -n min ] [ -w warn ] [ -i inact ] name\n"
+msgstr ""
+"       %s [ -x ÍÁËÓ ] [ -n ÍÉΠ] [ -w ÚÁÓÔÅÒÅÖÅÎÎÑ ] [ -i ÎÅÁËÔÉ×ÎÉÊ ] ¦Í'Ñ\n"
+
+#: src/passwd.c:245
+#, c-format
+msgid "       %s { -l | -u | -d | -S | -e } name\n"
+msgstr "       %s { -l | -u | -d | -S | -e } ¦Í'Ñ\n"
+
+#: src/passwd.c:347
+#, c-format
+msgid "User %s has a TCFS key, his old password is required.\n"
+msgstr "ëÏÒÉÓÔÕ×ÁÞ %s ÍÁ¤ TCFS ËÌÀÞ, ÐÏÔÒ¦ÂÅΠÊÏÇÏ ÓÔÁÒÉÊ ÐÁÒÏÌØ.\n"
+
+#: src/passwd.c:348
+msgid "You can use -t option to force the change.\n"
+msgstr "÷É ÍÁ¤ÔÅ ÚÍÏÇÕ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ËÌÀÞ -t ÄÌÑ ÐÒÉÓËÏÒÅÎÎÑ ÚͦÎ.\n"
+
+#: src/passwd.c:354
+msgid "Old password: "
+msgstr "óÔÁÒÉÊ ÐÁÒÏÌØ: "
+
+#: src/passwd.c:361
+#, c-format
+msgid "Incorrect password for `%s'\n"
+msgstr "îÅצÒÎÉÊ ÐÁÒÏÌØ ÄÌÑ `%s'\n"
+
+#: src/passwd.c:374
+#, c-format
+msgid "Warning: user %s has a TCFS key.\n"
+msgstr "úÁÓÔÅÒÅÖÅÎÎÑ: ËÏÒÉÓÔÕ×ÁÞ %s ÍÁ¤ TCFS ËÌÀÞ.\n"
+
+#: src/passwd.c:392
+#, c-format
+msgid ""
+"Enter the new password (minimum of %d, maximum of %d characters)\n"
+"Please use a combination of upper and lower case letters and numbers.\n"
+msgstr ""
+"÷×ÅÄ¦ÔØ ÎÏ×ÉÊ ÐÁÒÏÌØ (צĠ%d ÄÏ %d ÚÎÁ˦×)\n"
+"úͦÛÕÊÔÅ ×ÅÌÉ˦ ÔÁ ÍÁ̦ Ì¦ÔÅÒÉ ÔÁ ÃÉÆÒÉ.\n"
+
+#: src/passwd.c:399
+msgid "New password: "
+msgstr "îÏ×ÉÊ ÐÁÒÏÌØ: "
+
+#: src/passwd.c:409
+msgid "Try again.\n"
+msgstr "óÐÒÏÂÕÊ ÝÅ.\n"
+
+#: src/passwd.c:418
+msgid ""
+"\n"
+"Warning: weak password (enter it again to use it anyway).\n"
+msgstr ""
+"\n"
+"úÁÓÔÅÒÅÖÅÎÎÑ: ðÏÇÁÎÉÊ ÐÁÒÏÌØ (××ÅÄ¦ÔØ ÊÏÇÏ ÚÎÏ×Õ, ÑËÝÏ ×ÓÅ ÏÄÎÏ ÂÁÖÁ¤ÔÅ ÊÏÇÏ "
+"×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ).\n"
+
+#: src/passwd.c:427
+msgid "They don't match; try again.\n"
+msgstr "îÅ ÓЦ×ÐÁÄÁ¤; ÓÐÒÏÂÕÊÔÅ ÚÎÏ×Õ.\n"
+
+#: src/passwd.c:512 src/passwd.c:528
+#, c-format
+msgid "The password for %s cannot be changed.\n"
+msgstr "ðÁÒÏÌØ ÄÌÑ %s ÎÅ ÍÏÖÅ ÂÕÔÉ ÚͦÎÅÎÉÊ.\n"
+
+#: src/passwd.c:556
+#, c-format
+msgid "Sorry, the password for %s cannot be changed yet.\n"
+msgstr "÷ÉÂÁÞÔÅ, ÐÁÒÏÌØ ÄÌÑ %s ÎÇÅ ÍÏÖÅ ÂÕÔÉ ÚͦÎÅÎÏ ÚÁÒÁÚ.\n"
+
+#: src/passwd.c:693
+#, c-format
+msgid "%s: out of memory\n"
+msgstr "%s: ÂÒÁË ÐÁÍ'ÑÔ¦\n"
+
+#: src/passwd.c:845
+msgid "Cannot lock the TCFS key database; try again later\n"
+msgstr "îÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÂÁÚÕ ËÌÀÞÅÊ TCFS; ÓÐÒÏÂÕÊÔŠЦÚΦÛÅ\n"
+
+#: src/passwd.c:851
+msgid "Cannot open the TCFS key database.\n"
+msgstr "îÅ ÍÏÖՠצÄËÒÉÔÉ ÂÁÚÕ ËÌÀÞÅÊ TCFS.\n"
+
+#: src/passwd.c:857
+msgid "Error updating the TCFS key database.\n"
+msgstr "îÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÂÁÚÕ ËÌÀÞÅÊ TCFS.\n"
+
+#: src/passwd.c:862
+msgid "Cannot commit TCFS changes.\n"
+msgstr "îÅ ÍÏÖÕ ×ÎÅÓÔÉ ÚͦÎÉ Õ ÂÁÚÕ ËÌÀÞÅÊ TCFS.\n"
+
+#: src/passwd.c:1069
+#, c-format
+msgid "%s: Cannot execute %s"
+msgstr "%s: îÅ ÍÏÖÕ ×ÉËÏÎÁÔÉ %s"
+
+#: src/passwd.c:1176
+#, c-format
+msgid "%s: repository %s not supported\n"
+msgstr "%s: ÒÅÐÏÚÉÔÏҦʠ%s ÎŠЦÄÔÒÉÍÕ¤ÔØÓÑ\n"
+
+#: src/passwd.c:1263
+#, c-format
+msgid "%s: Permission denied\n"
+msgstr "%s: äÏÓÔÕРÚÁÂÏÒÏÎÅÎÏ\n"
+
+#: src/passwd.c:1287
+#, c-format
+msgid "You may not change the password for %s.\n"
+msgstr "÷É ÎÅ ÍÏÖÅÔÅ ÚͦÎÉÔÉ ÐÁÒÏÌØ ÄÌÑ %s.\n"
+
+#: src/passwd.c:1352
+#, c-format
+msgid "Changing password for %s\n"
+msgstr "úͦÎÁ ÐÁÒÏÌÑ ÄÌÑ %s\n"
+
+#: src/passwd.c:1356
+#, c-format
+msgid "The password for %s is unchanged.\n"
+msgstr "ðÁÒÏÌØ ÄÌÑ %s ÎÅ ÚͦÎÅÎÏ.\n"
+
+#: src/passwd.c:1412
+msgid "Password changed.\n"
+msgstr "ðÁÒÏÌØ ÚͦÎÅÎÏ.\n"
+
+#: src/pwck.c:98
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -qr ] [ ÐÁÒÏÌØ [ shadow ] ]\n"
+
+#: src/pwck.c:100
+#, fuzzy, c-format
+msgid "Usage: %s [ -sqr ] [ passwd ]\n"
+msgstr "÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [ -qr ] [ ÐÁÒÏÌØ ]\n"
+
+#.
+#. * Tell the user this entire line is bogus and
+#. * ask them to delete it.
+#.
+#: src/pwck.c:304
+msgid "invalid password file entry\n"
+msgstr "ÎÅצÒÎÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÁÒÏÌÅÊ\n"
+
+#.
+#. * Tell the user this entry is a duplicate of
+#. * another and ask them to delete it.
+#.
+#: src/pwck.c:366
+msgid "duplicate password entry\n"
+msgstr "ÄÕÂÌÀÀÞÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÁÒÏÌÅÊ\n"
+
+#: src/pwck.c:382
+#, c-format
+msgid "invalid user name `%s'\n"
+msgstr "ÎÅצÒÎÅ ¦Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ `%s'\n"
+
+#: src/pwck.c:392
+#, c-format
+msgid "user %s: bad UID (%d)\n"
+msgstr "ËÏÒÉÓÔÕ×ÁÞ %s: ÐÏÇÁÎÉÊ UID (%d)\n"
+
+#.
+#. * No primary group, just give a warning
+#.
+#: src/pwck.c:407
+#, c-format
+msgid "user %s: no group %d\n"
+msgstr "ËÏÒÉÓÔÕ×ÁÞ %s: ÎÅ ÍÁ¤ ÇÒÕÐÉ %d\n"
+
+#.
+#. * Home directory doesn't exist, give a warning
+#.
+#: src/pwck.c:422
+#, c-format
+msgid "user %s: directory %s does not exist\n"
+msgstr "ËÏÒÉÓÔÕ×ÁÞ %s: ÔÅËÁ %s ÎÅ ¦ÓÎÕ¤\n"
+
+#.
+#. * Login shell doesn't exist, give a warning
+#.
+#: src/pwck.c:437
+#, c-format
+msgid "user %s: program %s does not exist\n"
+msgstr "ËÏÒÉÓÔÕ×ÁÞ %s: ÐÒÏÇÒÁÍÁ %s ÎÅ ¦ÓÎÕ¤\n"
+
+#.
+#. * Tell the user this entire line is bogus and
+#. * ask them to delete it.
+#.
+#: src/pwck.c:473
+msgid "invalid shadow password file entry\n"
+msgstr "ÎÅצÒÎÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#.
+#. * Tell the user this entry is a duplicate of
+#. * another and ask them to delete it.
+#.
+#: src/pwck.c:535
+msgid "duplicate shadow password entry\n"
+msgstr "ÄÕÂÌÀÀÞÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#.
+#. * Tell the user this entry has no matching
+#. * /etc/passwd entry and ask them to delete it.
+#.
+#: src/pwck.c:559
+msgid "no matching password file entry\n"
+msgstr "צÄÓÕÔΦʠצÄÐÏצÄÎÉÊ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÁÒÏÌÅÊ\n"
+
+#: src/pwck.c:576
+#, c-format
+msgid "user %s: last password change in the future\n"
+msgstr "ËÏÒÉÓÔÕ×ÁÞ %s: ÏÓÔÁÎÎÑ ÚͦÎÁ ÐÁÒÏÌÑ Õ ÍÁÊÂÕÔÎØÏÍÕ\n"
+
+#: src/pwconv.c:94 src/pwunconv.c:99
+#, c-format
+msgid "%s: can't lock passwd file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/pwconv.c:99 src/pwunconv.c:104
+#, c-format
+msgid "%s: can't open passwd file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/pwconv.c:126
+#, c-format
+msgid "%s: can't remove shadow entry for %s\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄÁÌÉÔÉ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ ÄÌÑ %s\n"
+
+#: src/pwconv.c:169
+#, c-format
+msgid "%s: can't update passwd entry for %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ Õ ÆÁÊ̦ ÐÁÒÏÌÅÊ ÄÌÑ %s\n"
+
+#: src/pwconv.c:176
+#, c-format
+msgid "%s: can't update shadow file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/pwconv.c:180
+#, c-format
+msgid "%s: can't update passwd file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/pwunconv.c:53
+#, c-format
+msgid "%s: Shadow passwords are not configured.\n"
+msgstr "%s: ðÒÉÈÏ×ÁΦ ÐÁÒÏ̦ ÎÅ ÚËÏÎÆ¦ÇÕÒÏ×ÁÎÏ.\n"
+
+#: src/pwunconv.c:162
+#, c-format
+msgid "%s: can't update entry for user %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÎÏ×ÉÔÉ ÚÁÐÉÓ ÄÌÑ ËÏÒÉÓÔÕ×ÁÞÁ %s\n"
+
+#: src/pwunconv.c:179
+#, c-format
+msgid "%s: can't delete shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ×ÉÄÁÌÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/su.c:140
+msgid "Sorry."
+msgstr "÷ÉÂÁÞÔÅ."
+
+#: src/su.c:222
+#, c-format
+msgid "%s: must be run from a terminal\n"
+msgstr "%s: ÐÏ×ÉÎÏ ÂÕÔÉ ÚÁÐÕÝÅÎÏ Ú ÔÅÒͦÎÁÌÕ\n"
+
+#: src/su.c:310
+#, c-format
+msgid "%s: pam_start: error %d\n"
+msgstr "%s: pam_start: ÐÏÍÉÌËÁ %d\n"
+
+#: src/su.c:336
+#, c-format
+msgid "Unknown id: %s\n"
+msgstr "îÅצÄÏÍÉÊ id: %s\n"
+
+#. access denied (-1) or unexpected value
+#: src/su.c:371 src/su.c:386
+#, c-format
+msgid "You are not authorized to su %s\n"
+msgstr "÷É ÎÅ Á×ÔÏÒÉÚÏ×ÁΦ ÄÌÑ su %s\n"
+
+#. require own password
+#: src/su.c:382
+msgid "(Enter your own password.)"
+msgstr "(÷×ÅÄ¦ÔØ ×ÁÛ ÐÁÒÏÌØ.)"
+
+#: src/su.c:413
+#, c-format
+msgid ""
+"%s: %s\n"
+"(Ignored)\n"
+msgstr ""
+"%s: %s\n"
+"(¶ÇÎÏÒÕÀ)\n"
+
+#: src/su.c:615
+msgid "No shell\n"
+msgstr "îÅÍÁ¤ shell\n"
+
+#. must be a password file!
+#: src/sulogin.c:136
+msgid "No password file\n"
+msgstr "îÅÍÁ¤ ÆÁÊÌÁ ÐÁÒÏÌÅÊ\n"
+
+#.
+#. * Fail secure
+#.
+#: src/sulogin.c:178
+msgid "No password entry for 'root'\n"
+msgstr "âÒÁËÕ¤ ÚÁÐÉÓÕ Õ ÂÁÚ¦ ÐÁÒÏÌÅÊ ÄÌÑ 'root'\n"
+
+#.
+#. * Here we prompt for the root password, or if no password is
+#. * given we just exit.
+#.
+#. get a password for root
+#: src/sulogin.c:192
+msgid ""
+"\n"
+"Type control-d to proceed with normal startup,\n"
+"(or give root password for system maintenance):"
+msgstr ""
+"\n"
+"îÁÔÉÓÎ¦ÔØ control-d ÄÌÑ ×ÉËÏÎÁÎÎÑ Ú×ÉÞÁÊÎÏÇÏ ÚÁ×ÁÎÔÁÖÅÎÎÑ,\n"
+"(ÁÂÏ ××ÅÄ¦ÔØ ÐÁÒÏÌØ ÁÄͦΦÓÔÒÁÔÏÒÁ ÄÌѠצÄÎÏ×ÌÅÎÎÑ ÓÉÓÔÅÍÉ):"
+
+#. make new environment active
+#: src/sulogin.c:241
+msgid "Entering System Maintenance Mode\n"
+msgstr "÷ÈÏÄÉÍÏ Õ ÒÅÖÉ͠צÄÎÏ×ÌÅÎÎÑ ÓÉÓÔÅÍÉ\n"
+
+#: src/useradd.c:251
+#, c-format
+msgid "%s: rebuild the group database\n"
+msgstr "%s: ÐÅÒÅÓÔÒÏÀÀ ÂÁÚÕ ÇÒÕÐ\n"
+
+#: src/useradd.c:258
+#, c-format
+msgid "%s: rebuild the shadow group database\n"
+msgstr "%s: ÐÅÒÅÓÔÒÏÀÀ ÂÁÚÕ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/useradd.c:295 src/usermod.c:974
+#, c-format
+msgid "%s: invalid numeric argument `%s'\n"
+msgstr "%s: ÎÅצÒÎÉÊ ÞÉÓÌÏ×ÉÊ ÁÒÇÕÍÅÎÔ `%s'\n"
+
+#: src/useradd.c:351
+#, c-format
+msgid "%s: unknown gid %s\n"
+msgstr "%s: ÎÅצÄÏÍÉÊ gid %s\n"
+
+#: src/useradd.c:358 src/useradd.c:660 src/useradd.c:1246 src/usermod.c:261
+#: src/usermod.c:1105
+#, c-format
+msgid "%s: unknown group %s\n"
+msgstr "%s: ÎÅצÄÏÍÁ ÇÒÕÐÁ %s\n"
+
+#: src/useradd.c:426
+#, c-format
+msgid "group=%s,%ld  basedir=%s  skel=%s\n"
+msgstr "ÇÒÕÐÁ=%s,%ld ÇÏÌÏ×ÎÁ_ÔÅËÁ=%s  skel=%s\n"
+
+#: src/useradd.c:429
+#, c-format
+msgid "shell=%s  "
+msgstr "shell=%s  "
+
+#: src/useradd.c:431
+#, c-format
+msgid "inactive=%ld  expire=%s"
+msgstr "ÎÅÁËÔÉ×ÎÉÊ=%ld  ÐÒÏÓÔÏÒÏÞÅÎÉÊ=%s"
+
+#: src/useradd.c:435
+#, c-format
+msgid "GROUP=%ld\n"
+msgstr "çòõðá=%ld\n"
+
+#: src/useradd.c:436
+#, c-format
+msgid "HOME=%s\n"
+msgstr "äïíáûîñ_ôåëá=%s\n"
+
+#: src/useradd.c:438
+#, c-format
+msgid "INACTIVE=%ld\n"
+msgstr "îåáëôé÷îéê=%ld\n"
+
+#: src/useradd.c:439
+#, c-format
+msgid "EXPIRE=%s\n"
+msgstr "ðòïóôòïþåîéê=%s\n"
+
+#: src/useradd.c:441
+#, c-format
+msgid "SHELL=%s\n"
+msgstr "SHELL=%s\n"
+
+#: src/useradd.c:442
+#, c-format
+msgid "SKEL=%s\n"
+msgstr "SKEL=%s\n"
+
+#: src/useradd.c:482
+#, c-format
+msgid "%s: cannot create new defaults file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ ÎÏ×ÉÊ ÆÁÊÌ ¦Ú ÚÎÁÞÅÎÎÑÍÉ ÐÏ ÚÁÍÏ×ÞÅ×ÁÎÎÀ\n"
+
+#: src/useradd.c:488
+#, fuzzy, c-format
+msgid "%s: cannot open new defaults file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ ÎÏ×ÉÊ ÆÁÊÌ ¦Ú ÚÎÁÞÅÎÎÑÍÉ ÐÏ ÚÁÍÏ×ÞÅ×ÁÎÎÀ\n"
+
+#: src/useradd.c:582 src/useradd.c:593
+#, c-format
+msgid "%s: rename: %s"
+msgstr "%s: ÐÅÒÅÊÍÅÎÕ×ÁÎÎÑ: %s"
+
+#: src/useradd.c:680 src/usermod.c:281
+#, c-format
+msgid "%s: group `%s' is a NIS group.\n"
+msgstr "%s: ÇÒÕÐÁ `%s' ¤ ÇÒÕÐÏÀ NIS.\n"
+
+#: src/useradd.c:688 src/usermod.c:289
+#, c-format
+msgid "%s: too many groups specified (max %d).\n"
+msgstr "%s: ÚÁÎÁÄÔÏ ÂÁÇÁÔÏ ÇÒÕР×ËÁÚÁÎÎÏ (ÍÁËÓ %d).\n"
+
+#: src/useradd.c:720 src/usermod.c:321
+#, c-format
+msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s\t[-u uid [-o]] [-g ÇÒÕÐÁ] [-G ÇÒÕÐÁ,...] \n"
+
+#: src/useradd.c:723
+msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n"
+msgstr "\t\t[-d ÄÏÍÁÛÎÑ_ÔÅËÁ] [-s shell] [-c ËÏÍÅÎÔÁÒ] [-m [-k wzór]]\n"
+
+#: src/useradd.c:726 src/usermod.c:327
+msgid "[-f inactive] [-e expire ] "
+msgstr "[-f ÎÅÁËÔÉ×ÎÉÊ] [-e ÐÒÏÓÔÒÏÞÅÎÉÊ ]"
+
+#: src/useradd.c:729
+msgid "[-A program] "
+msgstr "[-A ÐÒÏÇÒÁÍÁ] "
+
+#: src/useradd.c:731
+msgid "[-p passwd] name\n"
+msgstr "[-p ÐÁÒÏÌØ] ¦Í'Ñ\n"
+
+#: src/useradd.c:733
+#, c-format
+msgid "       %s\t-D [-g group] [-b base] [-s shell]\n"
+msgstr "       %s\t-D [-g ÇÒÕÐÁ] [-b ÂÁÚÏ×Á_ÔÅËÁ] [-s shell]\n"
+
+#: src/useradd.c:736
+msgid "\t\t[-f inactive] [-e expire ]\n"
+msgstr "\t\t[-f ÎÅÁËÔÉ×ÎÉÊ] [-e ÐÒÏÓÔÒÏÞÅÎÉÊ ]\n"
+
+#: src/useradd.c:833 src/usermod.c:479
+#, c-format
+msgid "%s: error locking group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/useradd.c:837 src/usermod.c:484
+#, c-format
+msgid "%s: error opening group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/useradd.c:842 src/usermod.c:591
+#, c-format
+msgid "%s: error locking shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚÁÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/useradd.c:847 src/usermod.c:597
+#, c-format
+msgid "%s: error opening shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/useradd.c:1019
+#, c-format
+msgid "%s: uid %d is not unique\n"
+msgstr "%s: uid %d ÎÅ ¤ ÕΦËÁÌØÎÉÍ\n"
+
+#: src/useradd.c:1049
+#, c-format
+msgid "%s: can't get unique uid\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÏÔÒÉÍÁÔÉ ÕΦËÁÌØÎ¦Ê uid\n"
+
+#: src/useradd.c:1157 src/useradd.c:1301 src/usermod.c:1053 src/usermod.c:1064
+#: src/usermod.c:1074 src/usermod.c:1120 src/usermod.c:1164
+#, c-format
+msgid "%s: invalid field `%s'\n"
+msgstr "%s: ÎÅצÒÎÅ ÐÏÌÅ `%s'\n"
+
+#: src/useradd.c:1171
+#, c-format
+msgid "%s: invalid base directory `%s'\n"
+msgstr "%s: ÎÅצÒÎÁ ÂÁÚÏ×Á ÔÅËÁ `%s'\n"
+
+#: src/useradd.c:1181
+#, c-format
+msgid "%s: invalid comment `%s'\n"
+msgstr "%s: ÎÅצÒÎÉÊ ËÏÍÅÎÔÁÒ `%s'\n"
+
+#: src/useradd.c:1191
+#, c-format
+msgid "%s: invalid home directory `%s'\n"
+msgstr "%s: ÎÅצÒÎÁ ÄÏÍÁÛÎÑ ÔÅËÁ `%s'\n"
+
+#: src/useradd.c:1209 src/usermod.c:1087
+#, c-format
+msgid "%s: invalid date `%s'\n"
+msgstr "%s: ÎÅצÒÎÁ ÄÁÔÁ `%s'\n"
+
+#: src/useradd.c:1221
+#, c-format
+msgid "%s: shadow passwords required for -e\n"
+msgstr "%s: ÐÒÉÈÏ×ÁΦ ÐÁÒÏ̦ ÐÏÔÒ¦ÂΦ ÄÌÑ -e\n"
+
+#: src/useradd.c:1236
+#, c-format
+msgid "%s: shadow passwords required for -f\n"
+msgstr "%s: ÐÒÉÈÏ×ÁΦ ÐÁÒÏ̦ ÐÏÔÒ¦ÂΦ ÄÌÑ -f\n"
+
+#: src/useradd.c:1310
+#, c-format
+msgid "%s: invalid shell `%s'\n"
+msgstr "%s: ÎÅצÒÎÉÊ shell `%s'\n"
+
+#: src/useradd.c:1351
+#, c-format
+msgid "%s: invalid user name `%s'\n"
+msgstr "%s: ÎÅצÒÎÅ ¦Í'Ñ ËÏÒÉÓÔÕ×ÁÞÁ `%s'\n"
+
+#: src/useradd.c:1387 src/userdel.c:298 src/usermod.c:1232
+#, c-format
+msgid "%s: cannot rewrite password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1392 src/userdel.c:301 src/usermod.c:1237
+#, c-format
+msgid "%s: cannot rewrite shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1432 src/userdel.c:365 src/usermod.c:1272
+#, c-format
+msgid "%s: unable to lock password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1436 src/userdel.c:369 src/usermod.c:1276
+#, c-format
+msgid "%s: unable to open password file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1442 src/userdel.c:374 src/usermod.c:1281
+#, c-format
+msgid "%s: cannot lock shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1448 src/userdel.c:379 src/usermod.c:1286
+#, c-format
+msgid "%s: cannot open shadow password file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1547 src/usermod.c:1373
+#, c-format
+msgid "%s: error adding authentication method\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÍÅÔÏÄÕ ÁÕÔÅÎÔÉÆ¦ËÁæ§\n"
+
+#: src/useradd.c:1570
+#, c-format
+msgid "%s: error adding new password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÎÏ×ÏÇÏ ÚÁÐÉÓÕ Õ ÂÁÚÕ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1585
+#, c-format
+msgid "%s: error updating password dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÚÁÐÉÓÕ Õ ÂÁÚ¦ ÐÁÒÏÌÅÊ dbm\n"
+
+#: src/useradd.c:1601 src/usermod.c:1432
+#, c-format
+msgid "%s: error adding new shadow password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÎÏ×ÏÇÏ ÚÁÐÉÓÕ Õ ÂÁÚÕ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/useradd.c:1617 src/usermod.c:1447
+#, c-format
+msgid "%s: error updating shadow passwd dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÚÁÐÉÓÕ Õ ÂÁÚ¦ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ dbm\n"
+
+#: src/useradd.c:1649
+#, c-format
+msgid "%s: cannot create directory %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ ÔÅËÕ %s\n"
+
+#: src/useradd.c:1772 src/usermod.c:1210
+#, c-format
+msgid "%s: user %s exists\n"
+msgstr "%s: ËÏÒÉÓÔÕ×ÁÞ %s ¦ÓÎÕ¤\n"
+
+#: src/useradd.c:1784
+#, c-format
+msgid ""
+"%s: group %s exists - if you want to add this user to that group, use -g.\n"
+msgstr ""
+"%s: ÇÒÕÐÁ %s ¦ÓÎÕ¤ - ÑËÝÏ ×É ÂÁÖÁ¤ÔÅ ÄÏÄÁÔÉ ËÏÒÉÓÔÕ×ÁÞÁ ÄϠ椧 ÇÒÕÐÉ, "
+"×ÉËÏÒÉÓÔÏ×ÕÊÔÅ -g.\n"
+
+#: src/useradd.c:1815
+#, c-format
+msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n"
+msgstr "%s: ÚÁÓÔÅÒÅÖÅÎÎÑ: CREATE_HOME ÎŠЦÄÔÒÉÍÕ¤ÔØÓÑ, ËÏÒÉÓÔÕÊÔÅÓØ -m.\n"
+
+#: src/userdel.c:133
+#, c-format
+msgid "usage: %s [-r] name\n"
+msgstr "×ÉËÏÒÉÓÔÏ×ÕÊÔÅ: %s [-r] ¦Í'Ñ\n"
+
+#: src/userdel.c:184 src/userdel.c:266
+#, c-format
+msgid "%s: error updating group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÚÁÐÉÓÕ Õ ÂÁÚ¦ ÇÒÕÐ\n"
+
+#: src/userdel.c:194 src/userdel.c:275
+#, c-format
+msgid "%s: cannot update dbm group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÏÎÏ×ÌÅÎÎÑ ÚÁÐÉÓÕ Õ ÂÁÚ¦ ÇÒÕРdbm\n"
+
+#: src/userdel.c:221
+#, fuzzy, c-format
+msgid "%s: cannot remove dbm group entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Õ ÂÁÚ¦ ÇÒÕРdbm\n"
+
+#: src/userdel.c:306
+#, c-format
+msgid "%s: cannot rewrite TCFS key file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÐÉÓÁÔÉ ÆÁÊÌ ËÌÀÞÅÊ TCFS\n"
+
+#: src/userdel.c:386
+#, c-format
+msgid "%s: cannot lock TCFS key file\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ ËÌÀÞÅÊ TCFS\n"
+
+#: src/userdel.c:390
+#, c-format
+msgid "%s: cannot open TCFS key file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ËÌÀÞÅÊ TCFS\n"
+
+#: src/userdel.c:399
+#, c-format
+msgid "%s: cannot open group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÇÒÕÐ\n"
+
+#: src/userdel.c:409
+#, c-format
+msgid "%s: cannot open shadow group file\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄËÒÉÔÉ ÆÁÊÌ ÐÒÉÈÏ×ÁÎÉÈ ÇÒÕÐ\n"
+
+#: src/userdel.c:440 src/userdel.c:455
+#, c-format
+msgid "%s: error deleting authentication\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÍÅÔÏÄÕ ÁÕÔÅÎÔÉÆ¦ËÁæ§\n"
+
+#: src/userdel.c:464
+#, c-format
+msgid "%s: error deleting password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÐÁÒÏÌÅÊ\n"
+
+#: src/userdel.c:467
+#, c-format
+msgid "%s: error deleting shadow password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/userdel.c:476
+#, c-format
+msgid "%s: error deleting TCFS entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ TCFS\n"
+
+#: src/userdel.c:489
+#, c-format
+msgid "%s: error deleting password dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ dbm Ú ÂÁÚÉ ÐÁÒÏÌÅÊ\n"
+
+#: src/userdel.c:508
+#, c-format
+msgid "%s: error deleting shadow passwd dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ dbm Ú ÂÁÚÉ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/userdel.c:549
+#, c-format
+msgid "%s: user %s is currently logged in\n"
+msgstr "%s: ËÏÒÉÓÔÕ×ÁÞ %s ÎÁ ÄÁÎÎÉÊ ÍÏÍÅÎÔ Õ ÓÉÓÔÅͦ\n"
+
+#: src/userdel.c:666
+#, c-format
+msgid "%s: warning: %s not owned by %s, not removing\n"
+msgstr "%s: ÚÁÓÔÅÒÅÖÅÎÎÑ: %s ÎÅ ÎÁÌÅÖÉÔØ %s, ÎÅ ×ÉÄÁÌÅÎÏ\n"
+
+#: src/userdel.c:672
+#, c-format
+msgid "%s: warning: can't remove "
+msgstr "%s: ÚÁÓÔÅÒÅÖÅÎÎÑ: ÎÅ ÍÏÖÕ ×ÉÄÁÌÉÔÉ "
+
+#: src/userdel.c:791 src/usermod.c:1001
+#, c-format
+msgid "%s: user %s does not exist\n"
+msgstr "%s: ËÏÒÉÔÓÔÕ×ÁÞ %s ÎÅ ¦ÓÎÕ¤\n"
+
+#: src/userdel.c:805 src/usermod.c:1017
+#, c-format
+msgid "%s: user %s is a NIS user\n"
+msgstr "%s: ËÏÒÉÓÔÕ×ÁÞ %s ¤ ËÏÒÉÓÔÕ×ÁÞ NIS\n"
+
+#: src/userdel.c:842
+#, c-format
+msgid "%s: %s not owned by %s, not removing\n"
+msgstr "%s: %s ÎÅ ÎÁÌÅÖÉÔØ %s, ÎÅ ×ÉÄÁÌÅÎÏ\n"
+
+#: src/userdel.c:865
+#, c-format
+msgid "%s: not removing directory %s (would remove home of user %s)\n"
+msgstr "%s: ÎÅ ×ÉÄÁÌÅÎÏ ÔÅËÕ %s (ÍÏÖÎÁ ×ÉÄÁÌÉÔÉ ÄÏÍÁÛÎÀ ÔÅËÕ ËÏÒÉÓÔÕ×ÁÞÁ %s)\n"
+
+#: src/userdel.c:878
+#, c-format
+msgid "%s: error removing directory %s\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÔÅËÉ %s\n"
+
+#: src/usermod.c:324
+msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"
+msgstr "\t\t[-d ÄÏÍÁÛÎÑ_ÔÅËÁ [-m]] [-s shell] [-c ËÏÍÅÎÔÁÒ] [-l ÎÏ×Å_¦Í'Ñ]\n"
+
+#: src/usermod.c:330
+msgid "[-A {DEFAULT|program},... ] "
+msgstr "[-A {DEFAULT|program},... ] "
+
+#: src/usermod.c:332
+#, fuzzy
+msgid "[-p passwd] [-L|-U] name\n"
+msgstr "[-p ÐÁÒÏÌØ] ¦Í'Ñ\n"
+
+#: src/usermod.c:511
+#, c-format
+msgid "%s: out of memory in update_group\n"
+msgstr "%s: ÂÒÁËÕ¤ ÐÁÍÑÔ¦ Õ pdate_group\n"
+
+#: src/usermod.c:634
+#, c-format
+msgid "%s: out of memory in update_gshadow\n"
+msgstr "%s: ÂÒÁËÕ¤ ÐÁÍÑÔ¦ Õ update_gshadow\n"
+
+#: src/usermod.c:1187
+#, c-format
+msgid "%s: no flags given\n"
+msgstr "%s: ÎÅ ÐÏÄÁÎÏ ÆÌÁǦ×\n"
+
+#: src/usermod.c:1194
+#, c-format
+msgid "%s: shadow passwords required for -e and -f\n"
+msgstr "%s: ÐÒÉÈÏ×ÁΦ ÐÁÒÏ̦ ÐÏÔÒ¦ÂΦ ÄÌÑ -e ¦ -f\n"
+
+#: src/usermod.c:1215
+#, c-format
+msgid "%s: uid %ld is not unique\n"
+msgstr "%s: uid %ld ÎÅ ¤ ÕΦËÁÌØÎÉÍ\n"
+
+#: src/usermod.c:1363
+#, c-format
+msgid "%s: error deleting authentication method\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÍÅÔÏÄÕ ÁÕÔÅÎÔÉÆ¦ËÁæ§\n"
+
+#: src/usermod.c:1383
+#, c-format
+msgid "%s: error changing authentication method\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÚÁͦÎÉ ÍÅÔÏÄÕ ÁÕÔÅÎÔÉÆ¦ËÁæ§\n"
+
+#: src/usermod.c:1400
+#, c-format
+msgid "%s: error changing password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÚͦÎÉ ÚÁÐÉÓÕ × ÂÁÚ¦ ÐÁÒÏÌÅÊ\n"
+
+#: src/usermod.c:1406
+#, c-format
+msgid "%s: error removing password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÐÁÒÏÌÅÊ\n"
+
+#: src/usermod.c:1414
+#, c-format
+msgid "%s: error adding password dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ÄÏÄÁÎÎÑ ÚÁÐÉÓÕ dbm Õ ÂÁÚÕ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/usermod.c:1421
+#, c-format
+msgid "%s: error removing passwd dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ dbm Ú ÂÁÚÉ ÐÁÒÏÌÅÊ\n"
+
+#: src/usermod.c:1438
+#, c-format
+msgid "%s: error removing shadow password entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ Ú ÂÁÚÉ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/usermod.c:1453
+#, c-format
+msgid "%s: error removing shadow passwd dbm entry\n"
+msgstr "%s: ÐÏÍÉÌËÁ ×ÉÄÁÌÅÎÎÑ ÚÁÐÉÓÕ dbm Ú ÂÁÚÉ ÐÒÉÈÏ×ÁÎÉÈ ÐÁÒÏÌÅÊ\n"
+
+#: src/usermod.c:1484
+#, c-format
+msgid "%s: directory %s exists\n"
+msgstr "%s: ÔÅËÁ %s ¦ÓÎÕ¤\n"
+
+#: src/usermod.c:1491
+#, c-format
+msgid "%s: can't create %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÓÔ×ÏÒÉÔÉ %s\n"
+
+#: src/usermod.c:1497
+#, c-format
+msgid "%s: can't chown %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÚͦÎÉÔÉ ×ÏÌÏÄÁÒÑ %s\n"
+
+#: src/usermod.c:1513
+#, c-format
+msgid "%s: cannot rename directory %s to %s\n"
+msgstr "%s: ÎÅ ÍÏÖÕ ÐÅÒÅÊÍÅÎÕ×ÁÔÉ ÔÅËÕ Ú %s ÎÁ %s\n"
+
+#. better leave it alone
+#: src/usermod.c:1610
+#, c-format
+msgid "%s: warning: %s not owned by %s\n"
+msgstr "%s: ÚÁÓÔÅÒÅÖÅÎÎÑ: %s ÎÅ ÎÁÌÅÖÉÔØ %s\n"
+
+#: src/usermod.c:1616
+msgid "failed to change mailbox owner"
+msgstr "ÎÅ ÍÏÖÕ ÚͦÎÉÔÉ ×ÏÌÏÄÁÒÑ ÐÏÛÔÏ×ϧ ÓËÒÉÎØËÉ"
+
+#: src/usermod.c:1623
+msgid "failed to rename mailbox"
+msgstr "ÎÅ ÍÏÖÕ ÐÅÒÅÊÍÅÎÕ×ÁÔÉ ÐÏÛÔÏ×Õ ÓËÒÉÎØËÕ"
+
+#: src/vipw.c:102
+#, c-format
+msgid ""
+"\n"
+"%s: %s is unchanged\n"
+msgstr ""
+"\n"
+"%s: %s ¤ ÎÅÚͦÎÅÎÉÊ\n"
+
+#: src/vipw.c:127
+#, fuzzy
+msgid "Couldn't lock file"
+msgstr "%s: îÅ ÍÏÖÕ ÂÌÏËÕ×ÁÔÉ ÆÁÊÌ\n"
+
+#: src/vipw.c:134
+msgid "Couldn't make backup"
+msgstr "îÅ ÍÏÖÕ ÚÒÏÂÉÔÉ ÒÅÚÅÒ×ÎÕ ËÏЦÀ"
+
+#: src/vipw.c:187
+#, c-format
+msgid "%s: can't restore %s: %s (your changes are in %s)\n"
+msgstr "%s: ÎÅ ÍÏÖՠצÄÎÏ×ÉÔÉ %s: %s (×ÁÛ¦ ÚͦÎÉ Õ %s)\n"
+
+#: src/vipw.c:226
+msgid ""
+"Usage:\n"
+"`vipw' edits /etc/passwd        `vipw -s' edits /etc/shadow\n"
+"`vigr' edits /etc/group         `vigr -s' edits /etc/gshadow\n"
+msgstr ""
+"÷ÉËÏÒÉÓÔÏ×ÕÊÔÅ:\n"
+"`vipw' ÒÅÄÁÇÕ¤ /etc/passwd      `vipw -s' ÒÅÄÁÇÕ¤ /etc/shadow\n"
+"`vigr' ÒÅÄÁÇÕ¤ /etc/group       `vigr -s' ÒÅÄÁÇÕ¤ /etc/gshadow\n"
+
+#~ msgid "%s: permission denied (shell).\n"
+#~ msgstr "%s: ÄÏÓÔÕРÚÁÂÏÒÏÎÅÎÏ (shell).\n"
+
+#~ msgid "Incorrect password for %s.\n"
+#~ msgstr "îÅצÒÎÉÊ ÐÁÒÏÌØ ÄÌÑ %s.\n"
+
+#~ msgid "group not found\n"
+#~ msgstr "ÇÒÕÐÁ ÎÅ ÚÎÁÊÄÅÎÁ\n"
index 13a406ac9d483c4b9827a2b068163bcbd5960ee3..9a6c4bd69487fb0546091b87ecbe36144fbfe8ea 100644 (file)
@@ -1,18 +1,14 @@
 
-AUTOMAKE_OPTIONS = 1.0 foreign
+EXTRA_DOST = .indent.pro
 
-# Watch out; note the difference between prefix & exec_prefix.
-# Normally configure sets exec_prefix to root when prefix is /usr.
-
-bindir = ${exec_prefix}/bin
-sbindir = ${exec_prefix}/sbin
 ubindir = ${prefix}/bin
 usbindir = ${prefix}/sbin
-localedir = $(datadir)/locale
 
-noinst_HEADERS = patchlevel.h
+DEFS = -D_HAVE_CONFIG_H -DLOCALEDIR=\"$(datadir)/locale\"
 
-DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
+INCLUDES = -I${top_srcdir} \
+       -I${top_srcdir}/lib \
+       -I$(top_srcdir)/libmisc
 
 # XXX why are login and su in /bin anyway (other than for
 # historical reasons)?
@@ -25,23 +21,38 @@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
 # and installation would be much simpler (just two directories,
 # $prefix/bin and $prefix/sbin, no install-data hacks...)
 
-bin_PROGRAMS = login su
+bin_PROGRAMS = groups login su
 ubin_PROGRAMS = faillog lastlog chage chfn chsh expiry gpasswd newgrp passwd
 usbin_PROGRAMS = chpasswd dpasswd groupadd groupdel groupmod \
        logoutd mkpasswd newusers useradd userdel usermod grpck \
        pwck vipw grpconv grpunconv pwconv pwunconv
 
-EXTRA_DIST = shadowconfig.sh
+noinst_PROGRAMS = id sulogin
 
 # id and groups are from gnu, sulogin from sysvinit,
 # also suid programs are installed by hand.
-# XXX installation by hand breaks libtool shared lib support
-# (the wrapper scripts get installed instead of binaries),
-# so we now chmod the programs by hand after normal installation.
 
 suidbins = su
 suidubins = chage chfn chsh expiry gpasswd newgrp passwd
 
+LDADD = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+
+chpasswd_LDADD = $(LDADD) $(LIBPAM)
+chage_LDADD    = $(LDADD) $(LIBPAM)
+chfn_LDADD     = $(LDADD) $(LIBPAM)
+chsh_LDADD     = $(LDADD) $(LIBPAM)
+groupadd_LDADD = $(LDADD) $(LIBPAM)
+groupdel_LDADD = $(LDADD) $(LIBPAM)
+groupmod_LDADD = $(LDADD) $(LIBPAM)
+login_LDADD    = $(LDADD) $(LIBPAM)
+newusers_LDADD = $(LDADD) $(LIBPAM)
+passwd_LDADD   = $(LDADD) $(LIBPAM) $(LIBCRACK)
+su_LDADD       = $(LDADD) $(LIBPAM)
+useradd_LDADD  = $(LDADD) $(LIBPAM)
+userdel_LDADD  = $(LDADD) $(LIBPAM)
+usermod_LDADD  = $(LDADD) $(LIBPAM)
+
 install-exec-hook:
        for i in $(suidbins); do \
                chmod 4755 $(DESTDIR)$(bindir)/$$i; \
@@ -53,43 +64,3 @@ install-data-hook:
        done
        rm -f $(DESTDIR)$(ubindir)/sg
        ln -s newgrp $(DESTDIR)$(ubindir)/sg
-
-noinst_PROGRAMS = groups id sulogin
-
-#install-exec-local:
-#      $(mkinstalldirs) $(bindir)
-#      for i in $(suidbins); do \
-#        $(INSTALL) -m 4755 $$i $(bindir); \
-#      done
-#      $(mkinstalldirs) $(ubindir)
-#      for i in $(suidubins); do \
-#        $(INSTALL) -m 4755 $$i $(ubindir); \
-#      done
-#      rm -f $(bindir)/sg
-#      ln -s $(ubindir)/newgrp $(bindir)/sg
-#
-#noinst_PROGRAMS = id groups \
-# su \
-# chage chfn chsh expiry gpasswd newgrp passwd \
-# sulogin
-
-shlibs = ../lib/libshadow.la
-# With glibc2, almost all programs need libcrypt for some reason,
-# even those that don't actually use crypt().
-LDADD = ${shlibs} ../libmisc/libmisc.a ../lib/libshadow.a @INTLLIBS@ @LIBCRYPT@ @LIBTCFS@ @LIBSKEY@ @LIBMD@
-INCLUDES = -I${top_srcdir}/lib -I$(top_srcdir)/libmisc
-
-chfn_LDADD = $(LDADD) @LIBPAM@
-chsh_LDADD = $(LDADD) @LIBPAM@
-login_LDADD = $(LDADD) @LIBPAM@
-passwd_LDADD = $(LDADD) @LIBCRACK@ @LIBPAM@
-su_LDADD = $(LDADD) @LIBPAM@
-chage_LDADD = $(LDADD) @LIBPAM@
-chpasswd_LDADD = $(LDADD) @LIBPAM@
-groupadd_LDADD = $(LDADD) @LIBPAM@
-groupdel_LDADD = $(LDADD) @LIBPAM@
-groupmod_LDADD = $(LDADD) @LIBPAM@
-newusers_LDADD = $(LDADD) @LIBPAM@
-useradd_LDADD = $(LDADD) @LIBPAM@
-userdel_LDADD = $(LDADD) @LIBPAM@
-usermod_LDADD = $(LDADD) @LIBPAM@
index 609c6885e98757de2f48a20cfeff887dd40d1ddc..ad3b843596f0913eb2e6bd8e403ebeed3a1e9576 100644 (file)
@@ -1,6 +1,7 @@
-# Makefile.in generated automatically by automake 1.4a from Makefile.am
+# Makefile.in generated automatically by automake 1.5 from Makefile.am.
 
-# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
+# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+# 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.
@@ -10,6 +11,7 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
+@SET_MAKE@
 
 SHELL = @SHELL@
 
@@ -18,6 +20,9 @@ top_srcdir = @top_srcdir@
 VPATH = @srcdir@
 prefix = @prefix@
 exec_prefix = @exec_prefix@
+
+bindir = @bindir@
+sbindir = @sbindir@
 libexecdir = @libexecdir@
 datadir = @datadir@
 sysconfdir = @sysconfdir@
@@ -28,13 +33,9 @@ infodir = @infodir@
 mandir = @mandir@
 includedir = @includedir@
 oldincludedir = /usr/include
-
-DESTDIR =
-
 pkgdatadir = $(datadir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
-
 top_builddir = ..
 
 ACLOCAL = @ACLOCAL@
@@ -46,9 +47,8 @@ INSTALL = @INSTALL@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_FLAG =
+INSTALL_HEADER = $(INSTALL_DATA)
 transform = @program_transform_name@
-
 NORMAL_INSTALL = :
 PRE_INSTALL = :
 POST_INSTALL = :
@@ -57,61 +57,68 @@ PRE_UNINSTALL = :
 POST_UNINSTALL = :
 host_alias = @host_alias@
 host_triplet = @host@
+AMTAR = @AMTAR@
 AS = @AS@
+AWK = @AWK@
+BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@
 CATALOGS = @CATALOGS@
 CATOBJEXT = @CATOBJEXT@
 CC = @CC@
 CPP = @CPP@
 DATADIRNAME = @DATADIRNAME@
+DEPDIR = @DEPDIR@
 DLLTOOL = @DLLTOOL@
+ECHO = @ECHO@
+EXEEXT = @EXEEXT@
 GENCAT = @GENCAT@
+GLIBC21 = @GLIBC21@
 GMOFILES = @GMOFILES@
 GMSGFMT = @GMSGFMT@
-GT_NO = @GT_NO@
-GT_YES = @GT_YES@
-INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 INSTOBJEXT = @INSTOBJEXT@
-INTLDEPS = @INTLDEPS@
+INTLBISON = @INTLBISON@
 INTLLIBS = @INTLLIBS@
 INTLOBJS = @INTLOBJS@
+INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@
 LIBCRACK = @LIBCRACK@
 LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
 LIBMD = @LIBMD@
 LIBPAM = @LIBPAM@
 LIBSKEY = @LIBSKEY@
 LIBTCFS = @LIBTCFS@
 LIBTOOL = @LIBTOOL@
 LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAKEINFO = @MAKEINFO@
 MKINSTALLDIRS = @MKINSTALLDIRS@
 MSGFMT = @MSGFMT@
 OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
 PACKAGE = @PACKAGE@
 POFILES = @POFILES@
 POSUB = @POSUB@
 RANLIB = @RANLIB@
+STRIP = @STRIP@
 U = @U@
 USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@
 USE_NLS = @USE_NLS@
 VERSION = @VERSION@
 YACC = @YACC@
-l = @l@
+am__include = @am__include@
+am__quote = @am__quote@
+install_sh = @install_sh@
 
-AUTOMAKE_OPTIONS = 1.0 foreign
+EXTRA_DOST = .indent.pro
 
-# Watch out; note the difference between prefix & exec_prefix.
-# Normally configure sets exec_prefix to root when prefix is /usr.
-
-bindir = ${exec_prefix}/bin
-sbindir = ${exec_prefix}/sbin
 ubindir = ${prefix}/bin
 usbindir = ${prefix}/sbin
-localedir = $(datadir)/locale
 
-noinst_HEADERS = patchlevel.h
+DEFS = -D_HAVE_CONFIG_H -DLOCALEDIR=\"$(datadir)/locale\"
+
+INCLUDES = -I${top_srcdir} \
+       -I${top_srcdir}/lib \
+       -I$(top_srcdir)/libmisc
+
 
-DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
 
 # XXX why are login and su in /bin anyway (other than for
 # historical reasons)?
@@ -123,664 +130,668 @@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
 # also /lib/libshadow.so.x.xx (if any) could be moved to /usr/lib
 # and installation would be much simpler (just two directories,
 # $prefix/bin and $prefix/sbin, no install-data hacks...)
-
-bin_PROGRAMS = login su
+bin_PROGRAMS = groups login su
 ubin_PROGRAMS = faillog lastlog chage chfn chsh expiry gpasswd newgrp passwd
-usbin_PROGRAMS = chpasswd dpasswd groupadd groupdel groupmod   logoutd mkpasswd newusers useradd userdel usermod grpck         pwck vipw grpconv grpunconv pwconv pwunconv
+usbin_PROGRAMS = chpasswd dpasswd groupadd groupdel groupmod \
+       logoutd mkpasswd newusers useradd userdel usermod grpck \
+       pwck vipw grpconv grpunconv pwconv pwunconv
 
 
-EXTRA_DIST = shadowconfig.sh
+noinst_PROGRAMS = id sulogin
+
 
 # id and groups are from gnu, sulogin from sysvinit,
 # also suid programs are installed by hand.
-# XXX installation by hand breaks libtool shared lib support
-# (the wrapper scripts get installed instead of binaries),
-# so we now chmod the programs by hand after normal installation.
-
 suidbins = su
 suidubins = chage chfn chsh expiry gpasswd newgrp passwd
 
-noinst_PROGRAMS = groups id sulogin
-
-#install-exec-local:
-#      $(mkinstalldirs) $(bindir)
-#      for i in $(suidbins); do \
-#        $(INSTALL) -m 4755 $$i $(bindir); \
-#      done
-#      $(mkinstalldirs) $(ubindir)
-#      for i in $(suidubins); do \
-#        $(INSTALL) -m 4755 $$i $(ubindir); \
-#      done
-#      rm -f $(bindir)/sg
-#      ln -s $(ubindir)/newgrp $(bindir)/sg
-#
-#noinst_PROGRAMS = id groups \
-# su \
-# chage chfn chsh expiry gpasswd newgrp passwd \
-# sulogin
-
-shlibs = ../lib/libshadow.la
-# With glibc2, almost all programs need libcrypt for some reason,
-# even those that don't actually use crypt().
-LDADD = ${shlibs} ../libmisc/libmisc.a ../lib/libshadow.a @INTLLIBS@ @LIBCRYPT@ @LIBTCFS@ @LIBSKEY@ @LIBMD@
-INCLUDES = -I${top_srcdir}/lib -I$(top_srcdir)/libmisc
-
-chfn_LDADD = $(LDADD) @LIBPAM@
-chsh_LDADD = $(LDADD) @LIBPAM@
-login_LDADD = $(LDADD) @LIBPAM@
-passwd_LDADD = $(LDADD) @LIBCRACK@ @LIBPAM@
-su_LDADD = $(LDADD) @LIBPAM@
-chage_LDADD = $(LDADD) @LIBPAM@
-chpasswd_LDADD = $(LDADD) @LIBPAM@
-groupadd_LDADD = $(LDADD) @LIBPAM@
-groupdel_LDADD = $(LDADD) @LIBPAM@
-groupmod_LDADD = $(LDADD) @LIBPAM@
-newusers_LDADD = $(LDADD) @LIBPAM@
-useradd_LDADD = $(LDADD) @LIBPAM@
-userdel_LDADD = $(LDADD) @LIBPAM@
-usermod_LDADD = $(LDADD) @LIBPAM@
+LDADD = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+
+
+chpasswd_LDADD = $(LDADD) $(LIBPAM)
+chage_LDADD = $(LDADD) $(LIBPAM)
+chfn_LDADD = $(LDADD) $(LIBPAM)
+chsh_LDADD = $(LDADD) $(LIBPAM)
+groupadd_LDADD = $(LDADD) $(LIBPAM)
+groupdel_LDADD = $(LDADD) $(LIBPAM)
+groupmod_LDADD = $(LDADD) $(LIBPAM)
+login_LDADD = $(LDADD) $(LIBPAM)
+newusers_LDADD = $(LDADD) $(LIBPAM)
+passwd_LDADD = $(LDADD) $(LIBPAM) $(LIBCRACK)
+su_LDADD = $(LDADD) $(LIBPAM)
+useradd_LDADD = $(LDADD) $(LIBPAM)
+userdel_LDADD = $(LDADD) $(LIBPAM)
+usermod_LDADD = $(LDADD) $(LIBPAM)
+subdir = src
 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = ../config.h
-CONFIG_CLEAN_FILES = 
-PROGRAMS =  $(bin_PROGRAMS) $(noinst_PROGRAMS) $(ubin_PROGRAMS) \
-$(usbin_PROGRAMS)
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+bin_PROGRAMS = groups$(EXEEXT) login$(EXEEXT) su$(EXEEXT)
+noinst_PROGRAMS = id$(EXEEXT) sulogin$(EXEEXT)
+ubin_PROGRAMS = faillog$(EXEEXT) lastlog$(EXEEXT) chage$(EXEEXT) \
+       chfn$(EXEEXT) chsh$(EXEEXT) expiry$(EXEEXT) gpasswd$(EXEEXT) \
+       newgrp$(EXEEXT) passwd$(EXEEXT)
+usbin_PROGRAMS = chpasswd$(EXEEXT) dpasswd$(EXEEXT) groupadd$(EXEEXT) \
+       groupdel$(EXEEXT) groupmod$(EXEEXT) logoutd$(EXEEXT) \
+       mkpasswd$(EXEEXT) newusers$(EXEEXT) useradd$(EXEEXT) \
+       userdel$(EXEEXT) usermod$(EXEEXT) grpck$(EXEEXT) pwck$(EXEEXT) \
+       vipw$(EXEEXT) grpconv$(EXEEXT) grpunconv$(EXEEXT) \
+       pwconv$(EXEEXT) pwunconv$(EXEEXT)
+PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(ubin_PROGRAMS) \
+       $(usbin_PROGRAMS)
 
-CPPFLAGS = @CPPFLAGS@
-LDFLAGS = @LDFLAGS@
-LIBS = @LIBS@
-login_SOURCES = login.c
-login_OBJECTS =  login.o
-login_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-login_LDFLAGS = 
-su_SOURCES = su.c
-su_OBJECTS =  su.o
-su_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-su_LDFLAGS = 
-groups_SOURCES = groups.c
-groups_OBJECTS =  groups.o
-groups_LDADD = $(LDADD)
-groups_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-groups_LDFLAGS = 
-id_SOURCES = id.c
-id_OBJECTS =  id.o
-id_LDADD = $(LDADD)
-id_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-id_LDFLAGS = 
-sulogin_SOURCES = sulogin.c
-sulogin_OBJECTS =  sulogin.o
-sulogin_LDADD = $(LDADD)
-sulogin_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-sulogin_LDFLAGS = 
-faillog_SOURCES = faillog.c
-faillog_OBJECTS =  faillog.o
-faillog_LDADD = $(LDADD)
-faillog_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-faillog_LDFLAGS = 
-lastlog_SOURCES = lastlog.c
-lastlog_OBJECTS =  lastlog.o
-lastlog_LDADD = $(LDADD)
-lastlog_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-lastlog_LDFLAGS = 
 chage_SOURCES = chage.c
-chage_OBJECTS =  chage.o
-chage_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-chage_LDFLAGS = 
+chage_OBJECTS = chage.$(OBJEXT)
+chage_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+chage_LDFLAGS =
 chfn_SOURCES = chfn.c
-chfn_OBJECTS =  chfn.o
-chfn_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-chfn_LDFLAGS = 
+chfn_OBJECTS = chfn.$(OBJEXT)
+chfn_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+chfn_LDFLAGS =
+chpasswd_SOURCES = chpasswd.c
+chpasswd_OBJECTS = chpasswd.$(OBJEXT)
+chpasswd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+chpasswd_LDFLAGS =
 chsh_SOURCES = chsh.c
-chsh_OBJECTS =  chsh.o
-chsh_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-chsh_LDFLAGS = 
+chsh_OBJECTS = chsh.$(OBJEXT)
+chsh_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+chsh_LDFLAGS =
+dpasswd_SOURCES = dpasswd.c
+dpasswd_OBJECTS = dpasswd.$(OBJEXT)
+dpasswd_LDADD = $(LDADD)
+dpasswd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+dpasswd_LDFLAGS =
 expiry_SOURCES = expiry.c
-expiry_OBJECTS =  expiry.o
+expiry_OBJECTS = expiry.$(OBJEXT)
 expiry_LDADD = $(LDADD)
-expiry_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-expiry_LDFLAGS = 
+expiry_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+expiry_LDFLAGS =
+faillog_SOURCES = faillog.c
+faillog_OBJECTS = faillog.$(OBJEXT)
+faillog_LDADD = $(LDADD)
+faillog_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+faillog_LDFLAGS =
 gpasswd_SOURCES = gpasswd.c
-gpasswd_OBJECTS =  gpasswd.o
+gpasswd_OBJECTS = gpasswd.$(OBJEXT)
 gpasswd_LDADD = $(LDADD)
-gpasswd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-gpasswd_LDFLAGS = 
-newgrp_SOURCES = newgrp.c
-newgrp_OBJECTS =  newgrp.o
-newgrp_LDADD = $(LDADD)
-newgrp_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-newgrp_LDFLAGS = 
-passwd_SOURCES = passwd.c
-passwd_OBJECTS =  passwd.o
-passwd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-passwd_LDFLAGS = 
-chpasswd_SOURCES = chpasswd.c
-chpasswd_OBJECTS =  chpasswd.o
-chpasswd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-chpasswd_LDFLAGS = 
-dpasswd_SOURCES = dpasswd.c
-dpasswd_OBJECTS =  dpasswd.o
-dpasswd_LDADD = $(LDADD)
-dpasswd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-dpasswd_LDFLAGS = 
+gpasswd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+gpasswd_LDFLAGS =
 groupadd_SOURCES = groupadd.c
-groupadd_OBJECTS =  groupadd.o
-groupadd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-groupadd_LDFLAGS = 
+groupadd_OBJECTS = groupadd.$(OBJEXT)
+groupadd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+groupadd_LDFLAGS =
 groupdel_SOURCES = groupdel.c
-groupdel_OBJECTS =  groupdel.o
-groupdel_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-groupdel_LDFLAGS = 
+groupdel_OBJECTS = groupdel.$(OBJEXT)
+groupdel_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+groupdel_LDFLAGS =
 groupmod_SOURCES = groupmod.c
-groupmod_OBJECTS =  groupmod.o
-groupmod_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-groupmod_LDFLAGS = 
+groupmod_OBJECTS = groupmod.$(OBJEXT)
+groupmod_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+groupmod_LDFLAGS =
+groups_SOURCES = groups.c
+groups_OBJECTS = groups.$(OBJEXT)
+groups_LDADD = $(LDADD)
+groups_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+groups_LDFLAGS =
+grpck_SOURCES = grpck.c
+grpck_OBJECTS = grpck.$(OBJEXT)
+grpck_LDADD = $(LDADD)
+grpck_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+grpck_LDFLAGS =
+grpconv_SOURCES = grpconv.c
+grpconv_OBJECTS = grpconv.$(OBJEXT)
+grpconv_LDADD = $(LDADD)
+grpconv_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+grpconv_LDFLAGS =
+grpunconv_SOURCES = grpunconv.c
+grpunconv_OBJECTS = grpunconv.$(OBJEXT)
+grpunconv_LDADD = $(LDADD)
+grpunconv_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+grpunconv_LDFLAGS =
+id_SOURCES = id.c
+id_OBJECTS = id.$(OBJEXT)
+id_LDADD = $(LDADD)
+id_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+id_LDFLAGS =
+lastlog_SOURCES = lastlog.c
+lastlog_OBJECTS = lastlog.$(OBJEXT)
+lastlog_LDADD = $(LDADD)
+lastlog_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+lastlog_LDFLAGS =
+login_SOURCES = login.c
+login_OBJECTS = login.$(OBJEXT)
+login_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+login_LDFLAGS =
 logoutd_SOURCES = logoutd.c
-logoutd_OBJECTS =  logoutd.o
+logoutd_OBJECTS = logoutd.$(OBJEXT)
 logoutd_LDADD = $(LDADD)
-logoutd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-logoutd_LDFLAGS = 
+logoutd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+logoutd_LDFLAGS =
 mkpasswd_SOURCES = mkpasswd.c
-mkpasswd_OBJECTS =  mkpasswd.o
+mkpasswd_OBJECTS = mkpasswd.$(OBJEXT)
 mkpasswd_LDADD = $(LDADD)
-mkpasswd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-mkpasswd_LDFLAGS = 
+mkpasswd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+mkpasswd_LDFLAGS =
+newgrp_SOURCES = newgrp.c
+newgrp_OBJECTS = newgrp.$(OBJEXT)
+newgrp_LDADD = $(LDADD)
+newgrp_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+newgrp_LDFLAGS =
 newusers_SOURCES = newusers.c
-newusers_OBJECTS =  newusers.o
-newusers_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-newusers_LDFLAGS = 
-useradd_SOURCES = useradd.c
-useradd_OBJECTS =  useradd.o
-useradd_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-useradd_LDFLAGS = 
-userdel_SOURCES = userdel.c
-userdel_OBJECTS =  userdel.o
-userdel_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-userdel_LDFLAGS = 
-usermod_SOURCES = usermod.c
-usermod_OBJECTS =  usermod.o
-usermod_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-usermod_LDFLAGS = 
-grpck_SOURCES = grpck.c
-grpck_OBJECTS =  grpck.o
-grpck_LDADD = $(LDADD)
-grpck_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-grpck_LDFLAGS = 
+newusers_OBJECTS = newusers.$(OBJEXT)
+newusers_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+newusers_LDFLAGS =
+passwd_SOURCES = passwd.c
+passwd_OBJECTS = passwd.$(OBJEXT)
+passwd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+passwd_LDFLAGS =
 pwck_SOURCES = pwck.c
-pwck_OBJECTS =  pwck.o
+pwck_OBJECTS = pwck.$(OBJEXT)
 pwck_LDADD = $(LDADD)
-pwck_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-pwck_LDFLAGS = 
-vipw_SOURCES = vipw.c
-vipw_OBJECTS =  vipw.o
-vipw_LDADD = $(LDADD)
-vipw_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-vipw_LDFLAGS = 
-grpconv_SOURCES = grpconv.c
-grpconv_OBJECTS =  grpconv.o
-grpconv_LDADD = $(LDADD)
-grpconv_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-grpconv_LDFLAGS = 
-grpunconv_SOURCES = grpunconv.c
-grpunconv_OBJECTS =  grpunconv.o
-grpunconv_LDADD = $(LDADD)
-grpunconv_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-grpunconv_LDFLAGS = 
+pwck_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+pwck_LDFLAGS =
 pwconv_SOURCES = pwconv.c
-pwconv_OBJECTS =  pwconv.o
+pwconv_OBJECTS = pwconv.$(OBJEXT)
 pwconv_LDADD = $(LDADD)
-pwconv_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-pwconv_LDFLAGS = 
+pwconv_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+pwconv_LDFLAGS =
 pwunconv_SOURCES = pwunconv.c
-pwunconv_OBJECTS =  pwunconv.o
+pwunconv_OBJECTS = pwunconv.$(OBJEXT)
 pwunconv_LDADD = $(LDADD)
-pwunconv_DEPENDENCIES =  ../lib/libshadow.la ../libmisc/libmisc.a \
-../lib/libshadow.a
-pwunconv_LDFLAGS = 
-CFLAGS = @CFLAGS@
-COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+pwunconv_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+pwunconv_LDFLAGS =
+su_SOURCES = su.c
+su_OBJECTS = su.$(OBJEXT)
+su_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+su_LDFLAGS =
+sulogin_SOURCES = sulogin.c
+sulogin_OBJECTS = sulogin.$(OBJEXT)
+sulogin_LDADD = $(LDADD)
+sulogin_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+sulogin_LDFLAGS =
+useradd_SOURCES = useradd.c
+useradd_OBJECTS = useradd.$(OBJEXT)
+useradd_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+useradd_LDFLAGS =
+userdel_SOURCES = userdel.c
+userdel_OBJECTS = userdel.$(OBJEXT)
+userdel_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+userdel_LDFLAGS =
+usermod_SOURCES = usermod.c
+usermod_OBJECTS = usermod.$(OBJEXT)
+usermod_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+usermod_LDFLAGS =
+vipw_SOURCES = vipw.c
+vipw_OBJECTS = vipw.$(OBJEXT)
+vipw_LDADD = $(LDADD)
+vipw_DEPENDENCIES = $(top_builddir)/libmisc/libmisc.la \
+       $(top_builddir)/lib/libshadow.la
+vipw_LDFLAGS =
+DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
+CPPFLAGS = @CPPFLAGS@
+LDFLAGS = @LDFLAGS@
+LIBS = @LIBS@
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+@AMDEP_TRUE@DEP_FILES = $(DEPDIR)/chage.Po $(DEPDIR)/chfn.Po \
+@AMDEP_TRUE@   $(DEPDIR)/chpasswd.Po $(DEPDIR)/chsh.Po \
+@AMDEP_TRUE@   $(DEPDIR)/dpasswd.Po $(DEPDIR)/expiry.Po \
+@AMDEP_TRUE@   $(DEPDIR)/faillog.Po $(DEPDIR)/gpasswd.Po \
+@AMDEP_TRUE@   $(DEPDIR)/groupadd.Po $(DEPDIR)/groupdel.Po \
+@AMDEP_TRUE@   $(DEPDIR)/groupmod.Po $(DEPDIR)/groups.Po \
+@AMDEP_TRUE@   $(DEPDIR)/grpck.Po $(DEPDIR)/grpconv.Po \
+@AMDEP_TRUE@   $(DEPDIR)/grpunconv.Po $(DEPDIR)/id.Po \
+@AMDEP_TRUE@   $(DEPDIR)/lastlog.Po $(DEPDIR)/login.Po \
+@AMDEP_TRUE@   $(DEPDIR)/logoutd.Po $(DEPDIR)/mkpasswd.Po \
+@AMDEP_TRUE@   $(DEPDIR)/newgrp.Po $(DEPDIR)/newusers.Po \
+@AMDEP_TRUE@   $(DEPDIR)/passwd.Po $(DEPDIR)/pwck.Po \
+@AMDEP_TRUE@   $(DEPDIR)/pwconv.Po $(DEPDIR)/pwunconv.Po \
+@AMDEP_TRUE@   $(DEPDIR)/su.Po $(DEPDIR)/sulogin.Po \
+@AMDEP_TRUE@   $(DEPDIR)/useradd.Po $(DEPDIR)/userdel.Po \
+@AMDEP_TRUE@   $(DEPDIR)/usermod.Po $(DEPDIR)/vipw.Po
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
+       $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
 CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
-HEADERS =  $(noinst_HEADERS)
-
-DIST_COMMON =  Makefile.am Makefile.in
-
-
-DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
+LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+       $(AM_LDFLAGS) $(LDFLAGS) -o $@
+CFLAGS = @CFLAGS@
+DIST_SOURCES = chage.c chfn.c chpasswd.c chsh.c dpasswd.c expiry.c \
+       faillog.c gpasswd.c groupadd.c groupdel.c groupmod.c groups.c \
+       grpck.c grpconv.c grpunconv.c id.c lastlog.c login.c logoutd.c \
+       mkpasswd.c newgrp.c newusers.c passwd.c pwck.c pwconv.c \
+       pwunconv.c su.c sulogin.c useradd.c userdel.c usermod.c vipw.c
+DIST_COMMON = Makefile.am Makefile.in
+SOURCES = chage.c chfn.c chpasswd.c chsh.c dpasswd.c expiry.c faillog.c gpasswd.c groupadd.c groupdel.c groupmod.c groups.c grpck.c grpconv.c grpunconv.c id.c lastlog.c login.c logoutd.c mkpasswd.c newgrp.c newusers.c passwd.c pwck.c pwconv.c pwunconv.c su.c sulogin.c useradd.c userdel.c usermod.c vipw.c
 
-TAR = gtar
-GZIP_ENV = --best
-SOURCES = login.c su.c groups.c id.c sulogin.c faillog.c lastlog.c chage.c chfn.c chsh.c expiry.c gpasswd.c newgrp.c passwd.c chpasswd.c dpasswd.c groupadd.c groupdel.c groupmod.c logoutd.c mkpasswd.c newusers.c useradd.c userdel.c usermod.c grpck.c pwck.c vipw.c grpconv.c grpunconv.c pwconv.c pwunconv.c
-OBJECTS = login.o su.o groups.o id.o sulogin.o faillog.o lastlog.o chage.o chfn.o chsh.o expiry.o gpasswd.o newgrp.o passwd.o chpasswd.o dpasswd.o groupadd.o groupdel.o groupmod.o logoutd.o mkpasswd.o newusers.o useradd.o userdel.o usermod.o grpck.o pwck.o vipw.o grpconv.o grpunconv.o pwconv.o pwunconv.o
+all: all-am
 
-all: all-redirect
 .SUFFIXES:
-.SUFFIXES: .S .c .lo .o .s
-$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) 
-       cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps src/Makefile
-
-Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
-       cd $(top_builddir) \
-         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
-
-mostlyclean-binPROGRAMS:
+.SUFFIXES: .c .lo .o .obj
 
-clean-binPROGRAMS:
-       -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
-
-distclean-binPROGRAMS:
+mostlyclean-libtool:
+       -rm -f *.lo
 
-maintainer-clean-binPROGRAMS:
+clean-libtool:
+       -rm -rf .libs _libs
 
+distclean-libtool:
+       -rm -f libtool
+$(srcdir)/Makefile.in:  Makefile.am  $(top_srcdir)/configure.in $(ACLOCAL_M4)
+       cd $(top_srcdir) && \
+         $(AUTOMAKE) --gnu  src/Makefile
+Makefile:  $(srcdir)/Makefile.in  $(top_builddir)/config.status
+       cd $(top_builddir) && \
+         CONFIG_HEADERS= CONFIG_LINKS= \
+         CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
 install-binPROGRAMS: $(bin_PROGRAMS)
        @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(bindir)
        @list='$(bin_PROGRAMS)'; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
-           $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+            || test -f $$p1 \
+         ; then \
+           f=`echo $$p1|sed '$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$f"; \
+          $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$f; \
          else :; fi; \
        done
 
 uninstall-binPROGRAMS:
        @$(NORMAL_UNINSTALL)
-       list='$(bin_PROGRAMS)'; for p in $$list; do \
-         rm -f $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
+       @list='$(bin_PROGRAMS)'; for p in $$list; do \
+         f=`echo $$p|sed 's/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f $(DESTDIR)$(bindir)/$$f"; \
+         rm -f $(DESTDIR)$(bindir)/$$f; \
        done
 
-mostlyclean-noinstPROGRAMS:
+clean-binPROGRAMS:
+       -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
 
 clean-noinstPROGRAMS:
        -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS)
-
-distclean-noinstPROGRAMS:
-
-maintainer-clean-noinstPROGRAMS:
-
-mostlyclean-ubinPROGRAMS:
-
-clean-ubinPROGRAMS:
-       -test -z "$(ubin_PROGRAMS)" || rm -f $(ubin_PROGRAMS)
-
-distclean-ubinPROGRAMS:
-
-maintainer-clean-ubinPROGRAMS:
-
 install-ubinPROGRAMS: $(ubin_PROGRAMS)
        @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(ubindir)
        @list='$(ubin_PROGRAMS)'; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
-           $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+            || test -f $$p1 \
+         ; then \
+           f=`echo $$p1|sed '$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(ubindir)/$$f"; \
+          $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(ubindir)/$$f; \
          else :; fi; \
        done
 
 uninstall-ubinPROGRAMS:
        @$(NORMAL_UNINSTALL)
-       list='$(ubin_PROGRAMS)'; for p in $$list; do \
-         rm -f $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
+       @list='$(ubin_PROGRAMS)'; for p in $$list; do \
+         f=`echo $$p|sed 's/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f $(DESTDIR)$(ubindir)/$$f"; \
+         rm -f $(DESTDIR)$(ubindir)/$$f; \
        done
 
-mostlyclean-usbinPROGRAMS:
-
-clean-usbinPROGRAMS:
-       -test -z "$(usbin_PROGRAMS)" || rm -f $(usbin_PROGRAMS)
-
-distclean-usbinPROGRAMS:
-
-maintainer-clean-usbinPROGRAMS:
-
+clean-ubinPROGRAMS:
+       -test -z "$(ubin_PROGRAMS)" || rm -f $(ubin_PROGRAMS)
 install-usbinPROGRAMS: $(usbin_PROGRAMS)
        @$(NORMAL_INSTALL)
        $(mkinstalldirs) $(DESTDIR)$(usbindir)
        @list='$(usbin_PROGRAMS)'; for p in $$list; do \
-         if test -f $$p; then \
-           echo " $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \
-           $(LIBTOOL)  --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
+         p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+         if test -f $$p \
+            || test -f $$p1 \
+         ; then \
+           f=`echo $$p1|sed '$(transform);s/$$/$(EXEEXT)/'`; \
+          echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(usbindir)/$$f"; \
+          $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(usbindir)/$$f; \
          else :; fi; \
        done
 
 uninstall-usbinPROGRAMS:
        @$(NORMAL_UNINSTALL)
-       list='$(usbin_PROGRAMS)'; for p in $$list; do \
-         rm -f $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \
+       @list='$(usbin_PROGRAMS)'; for p in $$list; do \
+         f=`echo $$p|sed 's/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+         echo " rm -f $(DESTDIR)$(usbindir)/$$f"; \
+         rm -f $(DESTDIR)$(usbindir)/$$f; \
        done
 
-.c.o:
-       $(COMPILE) -c $<
-
-.s.o:
-       $(COMPILE) -c $<
-
-.S.o:
-       $(COMPILE) -c $<
-
-mostlyclean-compile:
-       -rm -f *.o core *.core
-
-clean-compile:
-
-distclean-compile:
-       -rm -f *.tab.c
-
-maintainer-clean-compile:
-
-.c.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.s.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-.S.lo:
-       $(LIBTOOL) --mode=compile $(COMPILE) -c $<
-
-mostlyclean-libtool:
-       -rm -f *.lo
-
-clean-libtool:
-       -rm -rf .libs _libs
-
-distclean-libtool:
-
-maintainer-clean-libtool:
-
-login: $(login_OBJECTS) $(login_DEPENDENCIES)
-       @rm -f login
-       $(LINK) $(login_LDFLAGS) $(login_OBJECTS) $(login_LDADD) $(LIBS)
-
-su: $(su_OBJECTS) $(su_DEPENDENCIES)
-       @rm -f su
-       $(LINK) $(su_LDFLAGS) $(su_OBJECTS) $(su_LDADD) $(LIBS)
-
-groups: $(groups_OBJECTS) $(groups_DEPENDENCIES)
-       @rm -f groups
-       $(LINK) $(groups_LDFLAGS) $(groups_OBJECTS) $(groups_LDADD) $(LIBS)
-
-id: $(id_OBJECTS) $(id_DEPENDENCIES)
-       @rm -f id
-       $(LINK) $(id_LDFLAGS) $(id_OBJECTS) $(id_LDADD) $(LIBS)
-
-sulogin: $(sulogin_OBJECTS) $(sulogin_DEPENDENCIES)
-       @rm -f sulogin
-       $(LINK) $(sulogin_LDFLAGS) $(sulogin_OBJECTS) $(sulogin_LDADD) $(LIBS)
-
-faillog: $(faillog_OBJECTS) $(faillog_DEPENDENCIES)
-       @rm -f faillog
-       $(LINK) $(faillog_LDFLAGS) $(faillog_OBJECTS) $(faillog_LDADD) $(LIBS)
-
-lastlog: $(lastlog_OBJECTS) $(lastlog_DEPENDENCIES)
-       @rm -f lastlog
-       $(LINK) $(lastlog_LDFLAGS) $(lastlog_OBJECTS) $(lastlog_LDADD) $(LIBS)
-
-chage: $(chage_OBJECTS) $(chage_DEPENDENCIES)
-       @rm -f chage
+clean-usbinPROGRAMS:
+       -test -z "$(usbin_PROGRAMS)" || rm -f $(usbin_PROGRAMS)
+chage$(EXEEXT): $(chage_OBJECTS) $(chage_DEPENDENCIES) 
+       @rm -f chage$(EXEEXT)
        $(LINK) $(chage_LDFLAGS) $(chage_OBJECTS) $(chage_LDADD) $(LIBS)
-
-chfn: $(chfn_OBJECTS) $(chfn_DEPENDENCIES)
-       @rm -f chfn
+chfn$(EXEEXT): $(chfn_OBJECTS) $(chfn_DEPENDENCIES) 
+       @rm -f chfn$(EXEEXT)
        $(LINK) $(chfn_LDFLAGS) $(chfn_OBJECTS) $(chfn_LDADD) $(LIBS)
-
-chsh: $(chsh_OBJECTS) $(chsh_DEPENDENCIES)
-       @rm -f chsh
+chpasswd$(EXEEXT): $(chpasswd_OBJECTS) $(chpasswd_DEPENDENCIES) 
+       @rm -f chpasswd$(EXEEXT)
+       $(LINK) $(chpasswd_LDFLAGS) $(chpasswd_OBJECTS) $(chpasswd_LDADD) $(LIBS)
+chsh$(EXEEXT): $(chsh_OBJECTS) $(chsh_DEPENDENCIES) 
+       @rm -f chsh$(EXEEXT)
        $(LINK) $(chsh_LDFLAGS) $(chsh_OBJECTS) $(chsh_LDADD) $(LIBS)
-
-expiry: $(expiry_OBJECTS) $(expiry_DEPENDENCIES)
-       @rm -f expiry
+dpasswd$(EXEEXT): $(dpasswd_OBJECTS) $(dpasswd_DEPENDENCIES) 
+       @rm -f dpasswd$(EXEEXT)
+       $(LINK) $(dpasswd_LDFLAGS) $(dpasswd_OBJECTS) $(dpasswd_LDADD) $(LIBS)
+expiry$(EXEEXT): $(expiry_OBJECTS) $(expiry_DEPENDENCIES) 
+       @rm -f expiry$(EXEEXT)
        $(LINK) $(expiry_LDFLAGS) $(expiry_OBJECTS) $(expiry_LDADD) $(LIBS)
-
-gpasswd: $(gpasswd_OBJECTS) $(gpasswd_DEPENDENCIES)
-       @rm -f gpasswd
+faillog$(EXEEXT): $(faillog_OBJECTS) $(faillog_DEPENDENCIES) 
+       @rm -f faillog$(EXEEXT)
+       $(LINK) $(faillog_LDFLAGS) $(faillog_OBJECTS) $(faillog_LDADD) $(LIBS)
+gpasswd$(EXEEXT): $(gpasswd_OBJECTS) $(gpasswd_DEPENDENCIES) 
+       @rm -f gpasswd$(EXEEXT)
        $(LINK) $(gpasswd_LDFLAGS) $(gpasswd_OBJECTS) $(gpasswd_LDADD) $(LIBS)
-
-newgrp: $(newgrp_OBJECTS) $(newgrp_DEPENDENCIES)
-       @rm -f newgrp
-       $(LINK) $(newgrp_LDFLAGS) $(newgrp_OBJECTS) $(newgrp_LDADD) $(LIBS)
-
-passwd: $(passwd_OBJECTS) $(passwd_DEPENDENCIES)
-       @rm -f passwd
-       $(LINK) $(passwd_LDFLAGS) $(passwd_OBJECTS) $(passwd_LDADD) $(LIBS)
-
-chpasswd: $(chpasswd_OBJECTS) $(chpasswd_DEPENDENCIES)
-       @rm -f chpasswd
-       $(LINK) $(chpasswd_LDFLAGS) $(chpasswd_OBJECTS) $(chpasswd_LDADD) $(LIBS)
-
-dpasswd: $(dpasswd_OBJECTS) $(dpasswd_DEPENDENCIES)
-       @rm -f dpasswd
-       $(LINK) $(dpasswd_LDFLAGS) $(dpasswd_OBJECTS) $(dpasswd_LDADD) $(LIBS)
-
-groupadd: $(groupadd_OBJECTS) $(groupadd_DEPENDENCIES)
-       @rm -f groupadd
+groupadd$(EXEEXT): $(groupadd_OBJECTS) $(groupadd_DEPENDENCIES) 
+       @rm -f groupadd$(EXEEXT)
        $(LINK) $(groupadd_LDFLAGS) $(groupadd_OBJECTS) $(groupadd_LDADD) $(LIBS)
-
-groupdel: $(groupdel_OBJECTS) $(groupdel_DEPENDENCIES)
-       @rm -f groupdel
+groupdel$(EXEEXT): $(groupdel_OBJECTS) $(groupdel_DEPENDENCIES) 
+       @rm -f groupdel$(EXEEXT)
        $(LINK) $(groupdel_LDFLAGS) $(groupdel_OBJECTS) $(groupdel_LDADD) $(LIBS)
-
-groupmod: $(groupmod_OBJECTS) $(groupmod_DEPENDENCIES)
-       @rm -f groupmod
+groupmod$(EXEEXT): $(groupmod_OBJECTS) $(groupmod_DEPENDENCIES) 
+       @rm -f groupmod$(EXEEXT)
        $(LINK) $(groupmod_LDFLAGS) $(groupmod_OBJECTS) $(groupmod_LDADD) $(LIBS)
-
-logoutd: $(logoutd_OBJECTS) $(logoutd_DEPENDENCIES)
-       @rm -f logoutd
+groups$(EXEEXT): $(groups_OBJECTS) $(groups_DEPENDENCIES) 
+       @rm -f groups$(EXEEXT)
+       $(LINK) $(groups_LDFLAGS) $(groups_OBJECTS) $(groups_LDADD) $(LIBS)
+grpck$(EXEEXT): $(grpck_OBJECTS) $(grpck_DEPENDENCIES) 
+       @rm -f grpck$(EXEEXT)
+       $(LINK) $(grpck_LDFLAGS) $(grpck_OBJECTS) $(grpck_LDADD) $(LIBS)
+grpconv$(EXEEXT): $(grpconv_OBJECTS) $(grpconv_DEPENDENCIES) 
+       @rm -f grpconv$(EXEEXT)
+       $(LINK) $(grpconv_LDFLAGS) $(grpconv_OBJECTS) $(grpconv_LDADD) $(LIBS)
+grpunconv$(EXEEXT): $(grpunconv_OBJECTS) $(grpunconv_DEPENDENCIES) 
+       @rm -f grpunconv$(EXEEXT)
+       $(LINK) $(grpunconv_LDFLAGS) $(grpunconv_OBJECTS) $(grpunconv_LDADD) $(LIBS)
+id$(EXEEXT): $(id_OBJECTS) $(id_DEPENDENCIES) 
+       @rm -f id$(EXEEXT)
+       $(LINK) $(id_LDFLAGS) $(id_OBJECTS) $(id_LDADD) $(LIBS)
+lastlog$(EXEEXT): $(lastlog_OBJECTS) $(lastlog_DEPENDENCIES) 
+       @rm -f lastlog$(EXEEXT)
+       $(LINK) $(lastlog_LDFLAGS) $(lastlog_OBJECTS) $(lastlog_LDADD) $(LIBS)
+login$(EXEEXT): $(login_OBJECTS) $(login_DEPENDENCIES) 
+       @rm -f login$(EXEEXT)
+       $(LINK) $(login_LDFLAGS) $(login_OBJECTS) $(login_LDADD) $(LIBS)
+logoutd$(EXEEXT): $(logoutd_OBJECTS) $(logoutd_DEPENDENCIES) 
+       @rm -f logoutd$(EXEEXT)
        $(LINK) $(logoutd_LDFLAGS) $(logoutd_OBJECTS) $(logoutd_LDADD) $(LIBS)
-
-mkpasswd: $(mkpasswd_OBJECTS) $(mkpasswd_DEPENDENCIES)
-       @rm -f mkpasswd
+mkpasswd$(EXEEXT): $(mkpasswd_OBJECTS) $(mkpasswd_DEPENDENCIES) 
+       @rm -f mkpasswd$(EXEEXT)
        $(LINK) $(mkpasswd_LDFLAGS) $(mkpasswd_OBJECTS) $(mkpasswd_LDADD) $(LIBS)
-
-newusers: $(newusers_OBJECTS) $(newusers_DEPENDENCIES)
-       @rm -f newusers
+newgrp$(EXEEXT): $(newgrp_OBJECTS) $(newgrp_DEPENDENCIES) 
+       @rm -f newgrp$(EXEEXT)
+       $(LINK) $(newgrp_LDFLAGS) $(newgrp_OBJECTS) $(newgrp_LDADD) $(LIBS)
+newusers$(EXEEXT): $(newusers_OBJECTS) $(newusers_DEPENDENCIES) 
+       @rm -f newusers$(EXEEXT)
        $(LINK) $(newusers_LDFLAGS) $(newusers_OBJECTS) $(newusers_LDADD) $(LIBS)
-
-useradd: $(useradd_OBJECTS) $(useradd_DEPENDENCIES)
-       @rm -f useradd
+passwd$(EXEEXT): $(passwd_OBJECTS) $(passwd_DEPENDENCIES) 
+       @rm -f passwd$(EXEEXT)
+       $(LINK) $(passwd_LDFLAGS) $(passwd_OBJECTS) $(passwd_LDADD) $(LIBS)
+pwck$(EXEEXT): $(pwck_OBJECTS) $(pwck_DEPENDENCIES) 
+       @rm -f pwck$(EXEEXT)
+       $(LINK) $(pwck_LDFLAGS) $(pwck_OBJECTS) $(pwck_LDADD) $(LIBS)
+pwconv$(EXEEXT): $(pwconv_OBJECTS) $(pwconv_DEPENDENCIES) 
+       @rm -f pwconv$(EXEEXT)
+       $(LINK) $(pwconv_LDFLAGS) $(pwconv_OBJECTS) $(pwconv_LDADD) $(LIBS)
+pwunconv$(EXEEXT): $(pwunconv_OBJECTS) $(pwunconv_DEPENDENCIES) 
+       @rm -f pwunconv$(EXEEXT)
+       $(LINK) $(pwunconv_LDFLAGS) $(pwunconv_OBJECTS) $(pwunconv_LDADD) $(LIBS)
+su$(EXEEXT): $(su_OBJECTS) $(su_DEPENDENCIES) 
+       @rm -f su$(EXEEXT)
+       $(LINK) $(su_LDFLAGS) $(su_OBJECTS) $(su_LDADD) $(LIBS)
+sulogin$(EXEEXT): $(sulogin_OBJECTS) $(sulogin_DEPENDENCIES) 
+       @rm -f sulogin$(EXEEXT)
+       $(LINK) $(sulogin_LDFLAGS) $(sulogin_OBJECTS) $(sulogin_LDADD) $(LIBS)
+useradd$(EXEEXT): $(useradd_OBJECTS) $(useradd_DEPENDENCIES) 
+       @rm -f useradd$(EXEEXT)
        $(LINK) $(useradd_LDFLAGS) $(useradd_OBJECTS) $(useradd_LDADD) $(LIBS)
-
-userdel: $(userdel_OBJECTS) $(userdel_DEPENDENCIES)
-       @rm -f userdel
+userdel$(EXEEXT): $(userdel_OBJECTS) $(userdel_DEPENDENCIES) 
+       @rm -f userdel$(EXEEXT)
        $(LINK) $(userdel_LDFLAGS) $(userdel_OBJECTS) $(userdel_LDADD) $(LIBS)
-
-usermod: $(usermod_OBJECTS) $(usermod_DEPENDENCIES)
-       @rm -f usermod
+usermod$(EXEEXT): $(usermod_OBJECTS) $(usermod_DEPENDENCIES) 
+       @rm -f usermod$(EXEEXT)
        $(LINK) $(usermod_LDFLAGS) $(usermod_OBJECTS) $(usermod_LDADD) $(LIBS)
+vipw$(EXEEXT): $(vipw_OBJECTS) $(vipw_DEPENDENCIES) 
+       @rm -f vipw$(EXEEXT)
+       $(LINK) $(vipw_LDFLAGS) $(vipw_OBJECTS) $(vipw_LDADD) $(LIBS)
 
-grpck: $(grpck_OBJECTS) $(grpck_DEPENDENCIES)
-       @rm -f grpck
-       $(LINK) $(grpck_LDFLAGS) $(grpck_OBJECTS) $(grpck_LDADD) $(LIBS)
-
-pwck: $(pwck_OBJECTS) $(pwck_DEPENDENCIES)
-       @rm -f pwck
-       $(LINK) $(pwck_LDFLAGS) $(pwck_OBJECTS) $(pwck_LDADD) $(LIBS)
+mostlyclean-compile:
+       -rm -f *.$(OBJEXT) core *.core
 
-vipw: $(vipw_OBJECTS) $(vipw_DEPENDENCIES)
-       @rm -f vipw
-       $(LINK) $(vipw_LDFLAGS) $(vipw_OBJECTS) $(vipw_LDADD) $(LIBS)
+distclean-compile:
+       -rm -f *.tab.c
 
-grpconv: $(grpconv_OBJECTS) $(grpconv_DEPENDENCIES)
-       @rm -f grpconv
-       $(LINK) $(grpconv_LDFLAGS) $(grpconv_OBJECTS) $(grpconv_LDADD) $(LIBS)
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chage.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chfn.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chpasswd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/chsh.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/dpasswd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/expiry.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/faillog.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/gpasswd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/groupadd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/groupdel.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/groupmod.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/groups.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/grpck.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/grpconv.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/grpunconv.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/id.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/lastlog.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/login.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/logoutd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/mkpasswd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/newgrp.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/newusers.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/passwd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwck.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwconv.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/pwunconv.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/su.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/sulogin.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/useradd.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/userdel.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/usermod.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/vipw.Po@am__quote@
+
+distclean-depend:
+       -rm -rf $(DEPDIR)
 
-grpunconv: $(grpunconv_OBJECTS) $(grpunconv_DEPENDENCIES)
-       @rm -f grpunconv
-       $(LINK) $(grpunconv_LDFLAGS) $(grpunconv_OBJECTS) $(grpunconv_LDADD) $(LIBS)
+.c.o:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(COMPILE) -c `test -f $< || echo '$(srcdir)/'`$<
 
-pwconv: $(pwconv_OBJECTS) $(pwconv_DEPENDENCIES)
-       @rm -f pwconv
-       $(LINK) $(pwconv_LDFLAGS) $(pwconv_OBJECTS) $(pwconv_LDADD) $(LIBS)
+.c.obj:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(COMPILE) -c `cygpath -w $<`
 
-pwunconv: $(pwunconv_OBJECTS) $(pwunconv_DEPENDENCIES)
-       @rm -f pwunconv
-       $(LINK) $(pwunconv_LDFLAGS) $(pwunconv_OBJECTS) $(pwunconv_LDADD) $(LIBS)
+.c.lo:
+@AMDEP_TRUE@   source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@   depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
+@AMDEP_TRUE@   $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+       $(LTCOMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$<
+CCDEPMODE = @CCDEPMODE@
+uninstall-info-am:
 
 tags: TAGS
 
-ID: $(HEADERS) $(SOURCES) $(LISP)
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+       list='$(SOURCES) $(HEADERS) $(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; }'`; \
-       here=`pwd` && cd $(srcdir) \
-         && mkid -f$$here/ID $$unique $(LISP)
+       mkid -fID $$unique $(LISP)
 
-TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) $(LISP)
+TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+               $(TAGS_FILES) $(LISP)
        tags=; \
        here=`pwd`; \
-       list='$(SOURCES) $(HEADERS)'; \
-       unique=`for i in $$list; do echo $$i; done | \
-         awk '    { files[$$0] = 1; } \
+       list='$(SOURCES) $(HEADERS) $(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 "$(ETAGS_ARGS)$$unique$(LISP)$$tags" \
-         || (cd $(srcdir) && etags $(ETAGS_ARGS) $$tags  $$unique $(LISP) -o $$here/TAGS)
-
-mostlyclean-tags:
+         || etags $(ETAGS_ARGS) $$tags  $$unique $(LISP)
 
-clean-tags:
+GTAGS:
+       here=`CDPATH=: && cd $(top_builddir) && pwd` \
+         && cd $(top_srcdir) \
+         && gtags -i $(GTAGS_ARGS) $$here
 
 distclean-tags:
-       -rm -f TAGS ID
+       -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH
 
-maintainer-clean-tags:
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
-
-subdir = src
+top_distdir = ..
+distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
 
 distdir: $(DISTFILES)
        @for file in $(DISTFILES); do \
-         d=$(srcdir); \
+         if test -f $$file; then d=.; else d=$(srcdir); fi; \
+         dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+         if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+           $(mkinstalldirs) "$(distdir)/$$dir"; \
+         fi; \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(distdir)/$$file; \
+           cp -pR $$d/$$file $(distdir) \
+           || exit 1; \
          else \
            test -f $(distdir)/$$file \
-           || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
-           || cp -p $$d/$$file $(distdir)/$$file || :; \
+           || cp -p $$d/$$file $(distdir)/$$file \
+           || exit 1; \
          fi; \
        done
-
-info-am:
-info: info-am
-dvi-am:
-dvi: dvi-am
 check-am: all-am
 check: check-am
-installcheck-am:
-installcheck: installcheck-am
-install-exec-am: install-binPROGRAMS
-       @$(NORMAL_INSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
-install-exec: install-exec-am
+all-am: Makefile $(PROGRAMS)
 
-install-data-am: install-ubinPROGRAMS install-usbinPROGRAMS
-       @$(NORMAL_INSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) install-data-hook
-install-data: install-data-am
+installdirs:
+       $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(ubindir) $(DESTDIR)$(usbindir)
 
-install-am: all-am
-       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 install: install-am
-uninstall-am: uninstall-binPROGRAMS uninstall-ubinPROGRAMS \
-               uninstall-usbinPROGRAMS
+install-exec: install-exec-am
+install-data: install-data-am
 uninstall: uninstall-am
-all-am: Makefile $(PROGRAMS) $(HEADERS)
-all-redirect: all-am
-install-strip:
-       $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
-installdirs:
-       $(mkinstalldirs)  $(DESTDIR)$(bindir) $(DESTDIR)$(ubindir) \
-               $(DESTDIR)$(usbindir)
 
+install-am: all-am
+       @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 
+installcheck: installcheck-am
+install-strip:
+       $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+         `test -z '$(STRIP)' || \
+           echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
 mostlyclean-generic:
 
 clean-generic:
 
 distclean-generic:
-       -rm -f Makefile $(CONFIG_CLEAN_FILES)
-       -rm -f config.cache config.log stamp-h stamp-h[0-9]*
+       -rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
 
 maintainer-clean-generic:
-mostlyclean-am:  mostlyclean-binPROGRAMS mostlyclean-noinstPROGRAMS \
-               mostlyclean-ubinPROGRAMS mostlyclean-usbinPROGRAMS \
-               mostlyclean-compile mostlyclean-libtool \
-               mostlyclean-tags mostlyclean-generic
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
 
-mostlyclean: mostlyclean-am
+clean-am: clean-binPROGRAMS clean-generic clean-libtool \
+       clean-noinstPROGRAMS clean-ubinPROGRAMS clean-usbinPROGRAMS \
+       mostlyclean-am
 
-clean-am:  clean-binPROGRAMS clean-noinstPROGRAMS clean-ubinPROGRAMS \
-               clean-usbinPROGRAMS clean-compile clean-libtool \
-               clean-tags clean-generic mostlyclean-am
+distclean: distclean-am
 
-clean: clean-am
+distclean-am: clean-am distclean-compile distclean-depend \
+       distclean-generic distclean-libtool distclean-tags
 
-distclean-am:  distclean-binPROGRAMS distclean-noinstPROGRAMS \
-               distclean-ubinPROGRAMS distclean-usbinPROGRAMS \
-               distclean-compile distclean-libtool distclean-tags \
-               distclean-generic clean-am
-       -rm -f libtool
+dvi: dvi-am
 
-distclean: distclean-am
+dvi-am:
 
-maintainer-clean-am:  maintainer-clean-binPROGRAMS \
-               maintainer-clean-noinstPROGRAMS \
-               maintainer-clean-ubinPROGRAMS \
-               maintainer-clean-usbinPROGRAMS maintainer-clean-compile \
-               maintainer-clean-libtool maintainer-clean-tags \
-               maintainer-clean-generic distclean-am
-       @echo "This command is intended for maintainers to use;"
-       @echo "it deletes files that may require special tools to rebuild."
+info: info-am
+
+info-am:
+
+install-data-am: install-ubinPROGRAMS install-usbinPROGRAMS
+       @$(NORMAL_INSTALL)
+       $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+
+install-exec-am: install-binPROGRAMS
+       @$(NORMAL_INSTALL)
+       $(MAKE) $(AM_MAKEFLAGS) install-exec-hook
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
 
 maintainer-clean: maintainer-clean-am
 
-.PHONY: mostlyclean-binPROGRAMS distclean-binPROGRAMS clean-binPROGRAMS \
-maintainer-clean-binPROGRAMS uninstall-binPROGRAMS install-binPROGRAMS \
-mostlyclean-noinstPROGRAMS distclean-noinstPROGRAMS \
-clean-noinstPROGRAMS maintainer-clean-noinstPROGRAMS \
-mostlyclean-ubinPROGRAMS distclean-ubinPROGRAMS clean-ubinPROGRAMS \
-maintainer-clean-ubinPROGRAMS uninstall-ubinPROGRAMS \
-install-ubinPROGRAMS mostlyclean-usbinPROGRAMS distclean-usbinPROGRAMS \
-clean-usbinPROGRAMS maintainer-clean-usbinPROGRAMS \
-uninstall-usbinPROGRAMS install-usbinPROGRAMS mostlyclean-compile \
-distclean-compile clean-compile maintainer-clean-compile \
-mostlyclean-libtool distclean-libtool clean-libtool \
-maintainer-clean-libtool tags mostlyclean-tags distclean-tags \
-clean-tags maintainer-clean-tags distdir info-am info dvi-am dvi check \
-check-am installcheck-am installcheck install-exec-am install-exec \
-install-data-am install-data install-am install uninstall-am uninstall \
-all-redirect all-am all installdirs mostlyclean-generic \
-distclean-generic clean-generic maintainer-clean-generic clean \
-mostlyclean distclean maintainer-clean
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+       mostlyclean-libtool
+
+uninstall-am: uninstall-binPROGRAMS uninstall-info-am \
+       uninstall-ubinPROGRAMS uninstall-usbinPROGRAMS
+
+.PHONY: GTAGS all all-am check check-am clean clean-binPROGRAMS \
+       clean-generic clean-libtool clean-noinstPROGRAMS \
+       clean-ubinPROGRAMS clean-usbinPROGRAMS distclean \
+       distclean-compile distclean-depend distclean-generic \
+       distclean-libtool distclean-tags distdir dvi dvi-am info \
+       info-am install install-am install-binPROGRAMS install-data \
+       install-data-am install-exec install-exec-am install-info \
+       install-info-am install-man install-strip install-ubinPROGRAMS \
+       install-usbinPROGRAMS installcheck installcheck-am installdirs \
+       maintainer-clean maintainer-clean-generic mostlyclean \
+       mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+       tags uninstall uninstall-am uninstall-binPROGRAMS \
+       uninstall-info-am uninstall-ubinPROGRAMS \
+       uninstall-usbinPROGRAMS
 
 
 install-exec-hook:
@@ -794,7 +805,6 @@ install-data-hook:
        done
        rm -f $(DESTDIR)$(ubindir)/sg
        ln -s newgrp $(DESTDIR)$(ubindir)/sg
-
 # 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 72f748ea6fae0a37757ae8da31c56b1c268a57da..a423fd491b1acfaa19a2216dbf443234ba51690f 100644 (file)
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- *
- * chpasswd - update passwords in batch
- *
- *     chpasswd reads standard input for a list of colon separated
- *     user names and new passwords.  the appropriate password
- *     files are updated to reflect the changes.  because the
- *     changes are made in a batch fashion, the user must run
- *     the mkpasswd command after this command terminates since
- *     no password updates occur until the very end.
- *
- * 1997/07/29: Modified to take "-e" argument which specifies that
- *             the passwords have already been encrypted.
- *             -- Jay Soffian <jay@lw.net>
  */
 
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: chpasswd.c,v 1.12 2000/10/09 19:02:20 kloczek Exp $")
+RCSID(PKG_VER "$Id: chpasswd.c,v 1.13 2001/01/25 10:36:07 kloczek Exp $")
 
 #include <stdio.h>
 #include "prototypes.h"
index 875272c8704c0a168d9e5d99444a9a56f38d0277..68c82f2242f5fe3c09f0b487ac86a699902e6d29 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: groups.c,v 1.6 2000/08/26 18:27:18 marekm Exp $")
+RCSID(PKG_VER "$Id: groups.c,v 1.7 2001/09/01 04:19:16 kloczek Exp $")
 
 #include <stdio.h>
 #include <pwd.h>
@@ -89,9 +89,10 @@ print_groups(const char *member)
 int
 main(int argc, char **argv)
 {
+       long sys_ngroups;
 #ifdef HAVE_GETGROUPS
        int     ngroups;
-       GETGROUPS_T groups[NGROUPS_MAX];
+       GETGROUPS_T *groups;
        int     pri_grp;
        int     i;
        struct  group   *gr;
@@ -100,6 +101,10 @@ main(int argc, char **argv)
        char    *getlogin();
 #endif
 
+       sys_ngroups=sysconf(_SC_NGROUPS_MAX);
+#ifdef HAVE_GETGROUPS
+       groups=malloc(sys_ngroups*sizeof(GETGROUPS_T));
+#endif
        setlocale(LC_ALL, "");
        bindtextdomain(PACKAGE, LOCALEDIR);
        textdomain(PACKAGE);
@@ -118,7 +123,7 @@ main(int argc, char **argv)
                 * currently set for this process.
                 */
 
-               ngroups = getgroups(NGROUPS_MAX, groups);
+               ngroups = getgroups(sys_ngroups, groups);
                if (ngroups < 0) {
                        perror("getgroups");
                        exit(1);
index 50fc2eab1def3bdbf67af2a4df83221f8d892835..1cad547fabe1864a9843eb368270dd4c312c69fb 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: grpck.c,v 1.14 2000/09/02 18:40:44 marekm Exp $")
+RCSID(PKG_VER "$Id: grpck.c,v 1.16 2001/08/18 09:28:16 malekith Exp $")
 
 #include <stdio.h>
 #include <fcntl.h>
@@ -95,9 +95,9 @@ static void
 usage(void)
 {
 #ifdef SHADOWGRP
-       fprintf(stderr, _("Usage: %s [ -r ] [ group [ gshadow ] ]\n"), Prog);
+       fprintf(stderr, _("Usage: %s [ -sr ] [ group [ gshadow ] ]\n"), Prog);
 #else
-       fprintf(stderr, _("Usage: %s [ -r ] [ group ]\n"), Prog);
+       fprintf(stderr, _("Usage: %s [ -sr ] [ group ]\n"), Prog);
 #endif
        exit(E_USAGE);
 }
@@ -161,6 +161,7 @@ main(int argc, char **argv)
        int     i;
        struct  commonio_entry  *gre, *tgre;
        struct  group   *grp;
+       int     sort_mode = 0;
 #ifdef SHADOWGRP
        struct  commonio_entry  *sge, *tsge;
        struct  sgrp    *sgr;
@@ -183,7 +184,7 @@ main(int argc, char **argv)
         * Parse the command line arguments
         */
 
-       while ((arg = getopt(argc, argv, "qr")) != EOF) {
+       while ((arg = getopt(argc, argv, "qrs")) != EOF) {
                switch (arg) {
                case 'q':
                        /* quiet - ignored for now */
@@ -191,11 +192,20 @@ main(int argc, char **argv)
                case 'r':
                        read_only = 1;
                        break;
+               case 's':
+                       sort_mode = 1;
+                       break;
                default:
                        usage();
                }
        }
 
+       if (sort_mode && read_only) {
+               fprintf(stderr, _("%s: -s and -r are incompatibile\n"),
+                       Prog);
+               exit(E_USAGE);
+       }
+       
        /*
         * Make certain we have the right number of arguments
         */
@@ -270,6 +280,15 @@ main(int argc, char **argv)
        }
 #endif
 
+       if (sort_mode) {
+               gr_sort();
+#ifdef SHADOWGRP
+               if (is_shadow)
+                       sgr_sort();
+#endif
+               goto write_and_bye;
+       }
+
        /*
         * Loop through the entire group file.
         */
@@ -606,6 +625,7 @@ shadow_done:
         */
 
        if (deleted) {
+write_and_bye:
                if (!gr_close()) {
                        fprintf(stderr, _("%s: cannot update file %s\n"),
                                Prog, grp_file);
index 28839a024b7e21b211e7d79accad752b4c70ec33..c33c58cfae611f2e1028de085718f10775400f8e 100644 (file)
--- a/src/id.c
+++ b/src/id.c
@@ -38,7 +38,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: id.c,v 1.6 2000/08/26 18:27:18 marekm Exp $")
+RCSID(PKG_VER "$Id: id.c,v 1.7 2001/09/01 04:19:16 kloczek Exp $")
 
 #include <sys/types.h>
 #include <stdio.h>
@@ -67,6 +67,7 @@ main(int argc, char **argv)
        uid_t ruid, euid;
        gid_t rgid, egid;
        int i;
+       long sys_ngroups;
 /*
  * This block of declarations is particularly strained because of several
  * different ways of doing concurrent groups.  Old BSD systems used int
@@ -75,7 +76,7 @@ main(int argc, char **argv)
  * usually about 16 or 32.  Others use bigger values.
  */
 #ifdef HAVE_GETGROUPS
-       GETGROUPS_T groups[NGROUPS_MAX];
+       GETGROUPS_T *groups;
        int     ngroups;
        int     aflg = 0;
 #endif
@@ -86,7 +87,15 @@ main(int argc, char **argv)
        bindtextdomain(PACKAGE, LOCALEDIR);
        textdomain(PACKAGE);
 
+       /*
+        * Dynamically get the maximum number of groups from system, instead
+        * of using the symbolic constant NGROUPS_MAX. This ensures that the
+        * group limit is not hard coded into the binary, so it will still
+        * work if the system library is recompiled.
+        */
+       sys_ngroups=sysconf(_SC_NGROUPS_MAX);
 #ifdef HAVE_GETGROUPS
+       groups=malloc(sys_ngroups*sizeof(GETGROUPS_T));
        /*
         * See if the -a flag has been given to print out the
         * concurrent group set.
@@ -152,7 +161,7 @@ main(int argc, char **argv)
         * names.
         */
 
-       if (aflg && (ngroups = getgroups (NGROUPS_MAX, groups)) != -1) {
+       if (aflg && (ngroups = getgroups (sys_ngroups, groups)) != -1) {
 
                /*
                 * Start off the group message.  It will be of the format
@@ -175,6 +184,7 @@ main(int argc, char **argv)
                                printf("%d", (int) groups[i]);
                }
        }
+       free(groups);
 #endif
 
        /*
index a7957ac7cc3b3a6c5575f90e4b38e6ab676726a6..833e068e1674b40ea770e26eea9a5cd01d8ae120 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: lastlog.c,v 1.6 2000/08/26 18:27:18 marekm Exp $")
+RCSID(PKG_VER "$Id: lastlog.c,v 1.9 2000/11/29 12:50:09 kloczek Exp $")
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -64,6 +64,15 @@ static struct lastlog lastlog;       /* scratch structure to play with ... */
 static struct stat statbuf;    /* fstat buffer for file size */
 static struct passwd *pwent;
 
+#include <getopt.h> 
+static struct option const longopts[] =
+{
+  {"user", required_argument, 0, 'u'},
+  {"time", required_argument, 0, 't'},
+  {"help", no_argument, 0, 'h'},
+  {0, 0, 0, 0}
+};
+
 extern char    *optarg;
 
 #define        NOW     (time ((time_t *) 0))
@@ -85,7 +94,7 @@ main(int argc, char **argv)
                perror (LASTLOG_FILE);
                exit (1);
        }
-       while ((c = getopt (argc, argv, "u:t:")) != EOF) {
+       while ((c = getopt_long (argc, argv, "u:t:h", longopts, NULL)) != -1) {
                switch (c) {
                        case 'u':
                                pwent = getpwnam (optarg);
@@ -103,6 +112,14 @@ main(int argc, char **argv)
                                seconds = days * DAY;
                                tflg++;
                                break;
+                       case 'h':
+                               fprintf(stdout, _("Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"),
+                                       argv[0]);
+                               exit(0);
+                       default:
+                               fprintf(stdout, _("Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"),
+                                       argv[0]);
+                               exit(1);
                }
        }
        print ();
index fa5b91702d11252ba97b0345bac04fb41b8295b9..e63316d018872c7cd82dccf197c81fb0a673b19a 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: login.c,v 1.18 2000/09/02 18:40:44 marekm Exp $")
+RCSID(PKG_VER "$Id: login.c,v 1.21 2001/06/28 20:47:06 kloczek Exp $")
 
 #include "prototypes.h"
 #include "defines.h"
@@ -89,8 +89,8 @@ static const struct pam_conv conv = {
 static pam_handle_t *pamh = NULL;
 
 #define PAM_FAIL_CHECK if (retcode != PAM_SUCCESS) { \
-       fprintf(stderr,"\n%s\n",PAM_STRERROR(pamh, retcode)); \
-       syslog(LOG_ERR,"%s",PAM_STRERROR(pamh, retcode)); \
+       fprintf(stderr,"\n%s\n",pam_strerror(pamh, retcode)); \
+       syslog(LOG_ERR,"%s",pam_strerror(pamh, retcode)); \
        pam_end(pamh, retcode); exit(1); \
    }
 #define PAM_END { retcode = pam_close_session(pamh,0); \
@@ -146,7 +146,10 @@ extern     int     optind;
 extern char    *optarg;
 extern char    **environ;
 
+#ifndef USE_PAM
 extern int login_access(const char *, const char *);
+#endif
+
 extern void login_fbtab(const char *, uid_t, gid_t);
 
 #ifndef        ALARM
@@ -708,9 +711,9 @@ top:
        retcode = pam_start("login", username, &conv, &pamh);
        if(retcode != PAM_SUCCESS) {
                fprintf(stderr,"login: PAM Failure, aborting: %s\n",
-               PAM_STRERROR(pamh, retcode));
+               pam_strerror(pamh, retcode));
                syslog(LOG_ERR,"Couldn't initialize PAM: %s",
-                       PAM_STRERROR(pamh, retcode));
+                       pam_strerror(pamh, retcode));
                exit(99);
        }
        /* hostname & tty are either set to NULL or their correct values,
@@ -726,7 +729,7 @@ top:
 #endif
        /* if fflg == 1, then the user has already been authenticated */
        if (!fflg || (getuid() != 0)) {
-               int failcount;
+               int failcount = 0;
                char hostn[256];
                char login_prompt[256]; /* That's one hell of a prompt :) */
 
@@ -763,7 +766,7 @@ top:
                        pam_get_item(pamh, PAM_USER, (const void **) &pam_user);
                        syslog(LOG_NOTICE,"FAILED LOGIN %d FROM %s FOR %s, %s",
                                failcount, hostname, pam_user,
-                               PAM_STRERROR(pamh, retcode));
+                               pam_strerror(pamh, retcode));
 #ifdef HAVE_PAM_FAIL_DELAY
                        pam_fail_delay(pamh, 1000000*delay);
 #endif
@@ -779,12 +782,12 @@ top:
                                syslog(LOG_NOTICE,
                                        "TOO MANY LOGIN TRIES (%d) FROM %s FOR %s, %s",
                                        failcount, hostname, pam_user,
-                                       PAM_STRERROR(pamh, retcode));
+                                       pam_strerror(pamh, retcode));
                        else
                                syslog(LOG_NOTICE,
                                        "FAILED LOGIN SESSION FROM %s FOR %s, %s",
                                        hostname, pam_user,
-                                       PAM_STRERROR(pamh, retcode));
+                                       pam_strerror(pamh, retcode));
 
                        fprintf(stderr, "\nLogin incorrect\n");
                        pam_end(pamh, retcode);
@@ -1059,6 +1062,7 @@ auth_ok:
        setutmp(username, tty, hostname); /* make entry in utmp & wtmp files */
 #endif
        if (pwent.pw_shell[0] == '*') { /* subsystem root */
+               pwent.pw_shell++;       /* skip the '*' */
                subsystem (&pwent);     /* figure out what to execute */
                subroot++;              /* say i was here again */
                endpwent ();            /* close all of the file which were */
index 7d5ee566bdf5a0a06980e2a04dda8f31ad0db5b3..47f421cb2425a03e383b6b51b5e7a9f9a188c764 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: logoutd.c,v 1.16 2000/09/02 18:40:44 marekm Exp $")
+RCSID(PKG_VER "$Id: logoutd.c,v 1.17 2001/08/06 06:23:26 kloczek Exp $")
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -279,7 +279,7 @@ main(int argc, char **argv)
                        close (tty_fd);
 #endif  /* BSD || SUN || SUN4 */
 
-                       strncpy(user, ut->ut_line, sizeof(user) - 1);
+                       strncpy(user, ut->ut_user, sizeof(user) - 1);
                        user[sizeof(user) - 1] = '\0';
 
                        SYSLOG((LOG_NOTICE, "logged off user `%s' on `%s'\n",
index 9eb2c5bf4800cbe12766c11abfd664b0a796a641..1f8eda7d8af68cb3e6c220858c1e34b2d9dc9cd9 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: newgrp.c,v 1.16 2000/09/02 18:40:44 marekm Exp $")
+RCSID(PKG_VER "$Id: newgrp.c,v 1.17 2001/09/01 04:19:16 kloczek Exp $")
 
 #include <stdio.h>
 #include <errno.h>
@@ -360,7 +360,7 @@ main(int argc, char **argv)
                        break;
        }
        if (i == ngroups) {
-               if (ngroups >= NGROUPS_MAX) {
+               if (ngroups >= sysconf(_SC_NGROUPS_MAX)) {
                        fprintf (stderr, _("too many groups\n"));
                } else {
                        grouplist[ngroups++] = gid;
diff --git a/src/patchlevel.h b/src/patchlevel.h
deleted file mode 100644 (file)
index 3fb8dce..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright 1991 - 1995, Julianne Frances Haugh
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- *    notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of Julianne F. Haugh nor the names of its contributors
- *    may be used to endorse or promote products derived from this software
- *    without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED.  IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * Revision History
- *     11/25/91        3.1.1   patchlevel 14
- *             Added "login.defs" to Makefile
- *     12/02/91        3.1.2   patchlevel 15
- *             Bugs found by users
- *     12/28/91        3.1.3   patchlevel 16
- *             Changes for SunOS 4.1.1
- *     02/08/92        3.1.4   patchlevel 17
- *             Changes for SVR4, plus bug fixes
- *     04/03/92        3.2.1   patchlevel 18
- *             Minor bug fixes, new baseline
- *     07/07/92        3.2.2   patchlevel 20
- *             Added administrator defined authentication
- *     11/04/92        3.2.3   patchlevel 21
- *             Bug fixes for SVR4
- *     07/23/93        3.3.0   patchlevel 23
- *             New baseline release
- *     08/23/93        3.3.1   patchlevel 24
- *             Bug fixes for SunOS 4.1.1
- *     08/27/93        3.3.2   patchlevel 25
- *             Initial NIS support changes
- *     12/03/95        3.3.3   patchlevel 26
- *             This is the Linux beta baseline.  Marek will
- *             change the name some other day. -- jfh
- *     $Id: patchlevel.h,v 1.2 1997/05/01 23:07:16 marekm Exp $
- */
-
-#define        RELEASE         3
-#define        PATCHLEVEL      26
-#define        VERSION         "3.3.3"
index 005517946cf779b8c94bd7a05508ab797c101fc8..18edad4d2e642a3ba88d56a1569667d05c80af76 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: pwck.c,v 1.15 2000/09/02 18:40:44 marekm Exp $")
+RCSID(PKG_VER "$Id: pwck.c,v 1.16 2001/08/14 21:10:58 malekith Exp $")
 
 #include <stdio.h>
 #include <fcntl.h>
@@ -95,9 +95,9 @@ static void
 usage(void)
 {
 #ifdef SHADOWPWD
-       fprintf(stderr, _("Usage: %s [ -qr ] [ passwd [ shadow ] ]\n"), Prog);
+       fprintf(stderr, _("Usage: %s [ -sqr ] [ passwd [ shadow ] ]\n"), Prog);
 #else
-       fprintf(stderr, _("Usage: %s [ -qr ] [ passwd ]\n"), Prog);
+       fprintf(stderr, _("Usage: %s [ -sqr ] [ passwd ]\n"), Prog);
 #endif
        exit(E_USAGE);
 }
@@ -142,6 +142,7 @@ main(int argc, char **argv)
        int     deleted = 0;
        struct  commonio_entry  *pfe, *tpfe;
        struct  passwd  *pwd;
+       int     sort_mode = 0;
 #ifdef SHADOWPWD
        struct  commonio_entry  *spe, *tspe;
        struct  spwd    *spw;
@@ -164,7 +165,7 @@ main(int argc, char **argv)
         * Parse the command line arguments
         */
 
-       while ((arg = getopt(argc, argv, "eqr")) != EOF) {
+       while ((arg = getopt(argc, argv, "eqrs")) != EOF) {
                switch (arg) {
                case 'e': /* added for Debian shadow-961025-2 compatibility */
                case 'q':
@@ -173,11 +174,20 @@ main(int argc, char **argv)
                case 'r':
                        read_only = 1;
                        break;
+               case 's':
+                       sort_mode = 1;
+                       break;
                default:
                        usage();
                }
        }
 
+       if (sort_mode && read_only) {
+               fprintf(stderr, _("%s: -s and -r are incompatibile\n"),
+                       Prog);
+               exit(E_USAGE);
+       }
+       
        /*
         * Make certain we have the right number of arguments
         */
@@ -256,6 +266,15 @@ main(int argc, char **argv)
        }
 #endif
 
+       if (sort_mode) {
+               pw_sort();
+#ifdef SHADOWPWD
+               if (is_shadow)
+                       spw_sort();
+#endif
+               goto write_and_bye;
+       }
+       
        /*
         * Loop through the entire password file.
         */
@@ -568,6 +587,7 @@ shadow_done:
         */
 
        if (deleted) {
+write_and_bye:
                if (!pw_close()) {
                        fprintf(stderr, _("%s: cannot update file %s\n"),
                                Prog, pwd_file);
index 9335a489db96b4dd124a405d3516a3178e29d855..64b7f8cb77311f2e1afc4905c073cbed3d9b6909 100644 (file)
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
- *
- * pwunconv - restore old password file from shadow password file.
- *
- *     Pwunconv copies the password file information from the shadow
- *     password file, merging entries from an optional existing shadow
- *     file.
- *
- *      Modifed by Guy Maor <maor@debian.org> to acquire necessary locks
- *      and modify the files in place.
  */
 
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: pwunconv.c,v 1.9 2000/08/26 18:27:18 marekm Exp $")
+RCSID(PKG_VER "$Id: pwunconv.c,v 1.10 2001/01/25 10:36:07 kloczek Exp $")
 
 #include "defines.h"
 #include <sys/types.h>
index c8b880306810d78513681ae4f5f5277594fb778b..a8d7d00f6dffebb4bf343b5570270f1f69247519 100644 (file)
--- a/src/su.c
+++ b/src/su.c
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: su.c,v 1.15 2000/09/02 18:40:44 marekm Exp $")
+RCSID(PKG_VER "$Id: su.c,v 1.18 2001/06/28 20:47:06 kloczek Exp $")
 
 #include <sys/types.h>
 #include <stdio.h>
@@ -302,9 +302,8 @@ main(int argc, char **argv)
 #endif
        oldpass = xstrdup(pw->pw_passwd);
 #endif  /* SU_ACCESS */
-#endif  /* !USE_PAM */
 
-#ifdef USE_PAM
+#else  /* USE_PAM */
        ret = pam_start("su", name, &conv, &pamh);
        if (ret != PAM_SUCCESS) {
                SYSLOG((LOG_ERR, "pam_start: error %d\n", ret);
@@ -316,8 +315,8 @@ main(int argc, char **argv)
        if (ret == PAM_SUCCESS)
                ret = pam_set_item(pamh, PAM_RUSER, (const void *) oldname);
        if (ret != PAM_SUCCESS) {
-               SYSLOG((LOG_ERR, "pam_set_item: %s\n", PAM_STRERROR(pamh, ret)));
-               fprintf(stderr, "%s: %s\n", Prog, PAM_STRERROR(pamh, ret));
+               SYSLOG((LOG_ERR, "pam_set_item: %s\n", pam_strerror(pamh, ret)));
+               fprintf(stderr, "%s: %s\n", Prog, pam_strerror(pamh, ret));
                pam_end(pamh, ret);
                exit(1);
        }
@@ -394,20 +393,6 @@ top:
        /*
         * Set the default shell.
         */
-#if 0
-       /*
-        * XXX - GNU and *BSD versions of su support the -m option.
-        * Need to add some option parsing code.
-        */
-       if (mflg) {
-               if (!amroot && !check_shell(pwent.pw_shell)) {
-                       fprintf(stderr, _("%s: permission denied (shell).\n"), Prog);
-                       exit(1);
-               }
-               if ((cp = getenv("SHELL")))
-                       pwent.pw_shell = cp;
-       }
-#endif
 
        if (pwent.pw_shell[0] == '\0')
                pwent.pw_shell = "/bin/sh";  /* XXX warning: const */
@@ -416,8 +401,8 @@ top:
        ret = pam_authenticate(pamh, 0);
        if (ret != PAM_SUCCESS) {
                SYSLOG((LOG_ERR, "pam_authenticate: %s\n",
-                       PAM_STRERROR(pamh, ret)));
-               fprintf(stderr, "%s: %s\n", Prog, PAM_STRERROR(pamh, ret));
+                       pam_strerror(pamh, ret)));
+               fprintf(stderr, "%s: %s\n", Prog, pam_strerror(pamh, ret));
                pam_end(pamh, ret);
                su_failure(tty);
        }
@@ -425,11 +410,11 @@ top:
        ret = pam_acct_mgmt(pamh, 0);
        if (ret != PAM_SUCCESS) {
                if (amroot) {
-                       fprintf(stderr, _("%s: %s\n(Ignored)\n"), Prog, PAM_STRERROR(pamh, ret));
+                       fprintf(stderr, _("%s: %s\n(Ignored)\n"), Prog, pam_strerror(pamh, ret));
                } else {
                        SYSLOG((LOG_ERR, "pam_acct_mgmt: %s\n",
-                               PAM_STRERROR(pamh, ret)));
-                       fprintf(stderr, "%s: %s\n", Prog, PAM_STRERROR(pamh, ret));
+                               pam_strerror(pamh, ret)));
+                       fprintf(stderr, "%s: %s\n", Prog, pam_strerror(pamh, ret));
                        pam_end(pamh, ret);
                        su_failure(tty);
                }
@@ -500,6 +485,7 @@ top:
        }
 #endif  /* !USE_PAM */
 
+       signal(SIGINT, SIG_DFL);
        cp = getdef_str((pwent.pw_uid == 0) ? "ENV_SUPATH" : "ENV_PATH");
 #if 0
        addenv(cp ? cp : "PATH=/bin:/usr/bin", NULL);
@@ -520,6 +506,7 @@ top:
                addenv("IFS= \t\n", NULL);      /* ... instead, set a safe IFS */
 
        if (pwent.pw_shell[0] == '*') { /* subsystem root required */
+               pwent.pw_shell++;       /* skip the '*' */
                subsystem (&pwent);     /* figure out what to execute */
                endpwent ();
 #ifdef SHADOWPWD
@@ -550,8 +537,8 @@ top:
           and much more, depending on the configured modules */
        ret = pam_setcred(pamh, PAM_ESTABLISH_CRED);
        if (ret != PAM_SUCCESS) {
-               SYSLOG((LOG_ERR, "pam_setcred: %s\n", PAM_STRERROR(pamh, ret)));
-               fprintf(stderr, "%s: %s\n", Prog, PAM_STRERROR(pamh, ret));
+               SYSLOG((LOG_ERR, "pam_setcred: %s\n", pam_strerror(pamh, ret)));
+               fprintf(stderr, "%s: %s\n", Prog, pam_strerror(pamh, ret));
                pam_end(pamh, ret);
                exit(1);
        }
index fe0885d88818c0ab8556820297a66e77711d7512..af108c0544ad2ace568eafbe81e7c61c336da0e6 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: useradd.c,v 1.21 2000/10/09 20:03:12 kloczek Exp $")
+RCSID(PKG_VER "$Id: useradd.c,v 1.26 2001/09/01 04:19:16 kloczek Exp $")
 
 #include "prototypes.h"
 #include "defines.h"
@@ -106,7 +106,8 @@ static int is_shadow_pwd;
 #ifdef SHADOWGRP
 static int is_shadow_grp;
 #endif
-static char *user_groups[NGROUPS_MAX+1];  /* NULL-terminated list */
+static char **user_groups;  /* NULL-terminated list */
+static long sys_ngroups;
 static int do_grp_update = 0;  /* group files need to be updated */
 
 static char    *Prog;
@@ -124,7 +125,8 @@ static int
        kflg = 0, /* specify a directory to fill new user directory */
        fflg = 0, /* days until account with expired password is locked */
        eflg = 0, /* days since 1970-01-01 when account is locked */
-       Dflg = 0; /* set/show new user default values */
+       Dflg = 0, /* set/show new user default values */
+       nflg = 0; /* create a group having the same name as the user */
 
 #ifdef AUTH_METHODS
 static int Aflg = 0; /* specify authentication method for user */
@@ -457,6 +459,7 @@ set_defaults(void)
        char    buf[1024];
        static  char    new_file[] = NEW_USER_FILE;
        char    *cp;
+       int     ofd;
        int     out_group = 0;
        int     out_home = 0;
        int     out_inactive = 0;
@@ -471,9 +474,18 @@ set_defaults(void)
         * Create a temporary file to copy the new output to.
         */
 
-       mktemp (new_file);
-       if (!(ofp = fopen (new_file, "w"))) {
+#ifdef HAVE_MKSTEMP
+       if ((ofd = mkstemp (new_file)) == -1) {
+#else
+       if ((ofd = mktemp (new_file)) == -1) {
+#endif
                fprintf(stderr, _("%s: cannot create new defaults file\n"),
+                       Prog);
+               return -1;
+       }
+       if (!(ofp = fdopen(ofd, "w"))) {
+               fprintf(stderr, _("%s: cannot open new defaults file\n"),
                        Prog);
                return -1;
        }
@@ -671,7 +683,7 @@ get_groups(char *list)
                }
 #endif
 
-               if (ngroups == NGROUPS_MAX) {
+               if (ngroups == sys_ngroups) {
                        fprintf(stderr,
                                _("%s: too many groups specified (max %d).\n"),
                                Prog, ngroups);
@@ -1671,6 +1683,8 @@ main(int argc, char **argv)
         * Get my name so that I can use it to report errors.
         */
 
+       sys_ngroups=sysconf(_SC_NGROUPS_MAX);
+       user_groups=malloc((1+sys_ngroups)*sizeof(char *));
        Prog = Basename(argv[0]);
 
        setlocale(LC_ALL, "");
@@ -1686,7 +1700,7 @@ main(int argc, char **argv)
        }
 
        if (retval == PAM_SUCCESS) {
-               retval = pam_start("shadow", pampw->pw_name, &conv, &pamh);
+               retval = pam_start("useradd", pampw->pw_name, &conv, &pamh);
        }
 
        if (retval == PAM_SUCCESS) {
@@ -1765,7 +1779,7 @@ main(int argc, char **argv)
         * to that group, use useradd -g username username.
         * --bero
         */
-       if (! (nflg || gflg)) {
+       if (!gflg) {
            if (getgrnam(user_name)) {
                 fprintf(stderr, _("%s: group %s exists - if you want to add this user to that group, use -g.\n"), Prog, user_name);
                exit(E_NAME_IN_USE);
index f038754cd8d7de9dd55db508b5a1ccdd1a016f75..9b13606facdc387413f528ef34492081bf2e5b65 100644 (file)
@@ -30,7 +30,7 @@
 #include <config.h>
 
 #include "rcsid.h"
-RCSID(PKG_VER "$Id: usermod.c,v 1.21 2000/10/09 19:02:20 kloczek Exp $")
+RCSID(PKG_VER "$Id: usermod.c,v 1.22 2001/09/01 04:19:16 kloczek Exp $")
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -95,7 +95,8 @@ static char *user_shell;
 static long user_expire;
 static long user_inactive;
 #endif
-static char *user_groups[NGROUPS_MAX+1];  /* NULL-terminated list */
+static long sys_ngroups;
+static char **user_groups;  /* NULL-terminated list */
 
 static char *Prog;
 
@@ -283,7 +284,7 @@ get_groups(char *list)
                }
 #endif
 
-               if (ngroups == NGROUPS_MAX) {
+               if (ngroups == sys_ngroups) {
                        fprintf(stderr,
                                _("%s: too many groups specified (max %d).\n"),
                                Prog, ngroups);
@@ -1645,6 +1646,8 @@ main(int argc, char **argv)
        int retval;
 #endif
 
+       sys_ngroups=sysconf(_SC_NGROUPS_MAX);
+       user_groups=malloc((1+sys_ngroups)*sizeof(char *));
        /*
         * Get my name so that I can use it to report errors.
         */