summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2000-01-25 07:42:51 +0000
committerPaul Smith <psmith@gnu.org>2000-01-25 07:42:51 +0000
commitde2a8fc730d0b87cd19959ba876ffa34d0853dcd (patch)
tree926e855867dbb2b79b5e5fe6050ec3154f35e50e
parent447c76f601fc1dedfd8e9cc333b8e576b96d1d0c (diff)
downloadgunmake-de2a8fc730d0b87cd19959ba876ffa34d0853dcd.tar.gz
* Updated gettext to use more advanced libit 0.7 version.
* Various cleanups.
-rw-r--r--.cvsignore5
-rw-r--r--ABOUT-NLS226
-rw-r--r--ChangeLog20
-rw-r--r--Makefile.am48
-rw-r--r--NEWS2
-rw-r--r--acconfig.h13
-rw-r--r--acinclude.m4453
-rw-r--r--configure.in8
-rw-r--r--getopt.c11
-rw-r--r--gettext.c2592
-rw-r--r--gettext.h177
-rw-r--r--i18n/.cvsignore3
-rw-r--r--i18n/Makefile.am75
-rw-r--r--i18n/de.po1772
-rw-r--r--i18n/es.po1932
-rw-r--r--i18n/fr.po1445
-rw-r--r--i18n/ko.po1445
-rw-r--r--i18n/nl.po1441
-rw-r--r--i18n/pl.po1467
-rw-r--r--i18n/ru.po1424
-rw-r--r--make.h20
-rw-r--r--po/Makefile.in.in247
-rw-r--r--po/POTFILES.in27
23 files changed, 14155 insertions, 698 deletions
diff --git a/.cvsignore b/.cvsignore
index de4c446..35c5d23 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -12,11 +12,14 @@ makebook*
*.cp *.cps *.fn *.fns *.vr *.vrs *.tp *.tps *.ky *.kys *.pg *.pgs
README README.DOS README.W32
-aclocal.m4 config.h.in config.h configure Makefile.in
+aclocal.m4 config.h.in config.h config.status config.cache configure
+Makefile.in Makefile
build.sh.in build.sh
SMakefile NMakefile Makefile.DOS
config.ami configh.dos config.h.W32 config.h-vms
+loadavg loadavg.c make
+
.deps .dep_segment
_*
diff --git a/ABOUT-NLS b/ABOUT-NLS
new file mode 100644
index 0000000..28d38c7
--- /dev/null
+++ b/ABOUT-NLS
@@ -0,0 +1,226 @@
+Notes on the Free Translation Project
+*************************************
+
+ Free software is going international! The Free Translation Project
+is a way to get maintainers of free software, translators, and users all
+together, so that will gradually become able to speak many languages.
+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*
+need to install GNU `gettext' prior to configuring, installing or using
+this package with messages translated.
+
+ Installers will find here some useful hints. These notes also
+explain how users should proceed for getting the programs to use the
+available translations. They tell how people wanting to contribute and
+work at translations should contact the appropriate team.
+
+ When reporting bugs in the `intl/' directory or bugs which may be
+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
+=====================
+
+ If you want to exploit the full power of internationalization, you
+should configure it using
+
+ ./configure --with-included-gettext
+
+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
+you have installed a recent copy of the GNU gettext package with the
+included `libintl'.
+
+INSTALL Matters
+===============
+
+ Some packages are "localizable" when properly installed; the
+programs they contain can be made to speak your own native language.
+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
+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
+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.
+
+ When you already have GNU `gettext' installed on your system and run
+configure without an option for your new package, `configure' will
+probably detect the previously built and installed `libintl.a' file and
+will decide to use this. This might be not what is desirable. You
+should use the more recent version of the GNU `gettext' library. I.e.
+if the file `intl/VERSION' shows that the library which comes with this
+package is more recent, you should use
+
+ ./configure --with-included-gettext
+
+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.
+
+ Internationalized packages have usually many `po/LL.po' files, where
+LL gives an ISO 639 two-letter code identifying the language. Unless
+translations have been forbidden at `configure' time by using the
+`--disable-nls' switch, all available translations are installed
+together with the package. However, the environment variable `LINGUAS'
+may be set, prior to configuration, to limit the installed set.
+`LINGUAS' should then contain a space separated list of two-letter
+codes, stating which languages are allowed.
+
+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'.
+
+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
+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
+`-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,
+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
+coordinator for all translator teams.
+
+ The English team is special. It works at improving and uniformizing
+the terminology in use. Proven linguistic skill are praised more than
+programming skill, here.
+
+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
+
+ 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
+used for implementing regional variants of languages, or language
+dialects.
+
+ For a PO file in the matrix above to be effective, the package to
+which it applies should also have been internationalized and
+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.
+
diff --git a/ChangeLog b/ChangeLog
index d25de2f..7ed88a7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2000-01-25 Paul D. Smith <psmith@gnu.org>
+
+ Change gettext support to use the simplified version in libit 0.7.
+
+ * getopt.c, make.h: Use gettext.h instead of libintl.h.
+ * ABOUT-NLS, gettext.h, gettext.c: New files from libit 0.7.
+ Modified to remove some static declarations which aren't defined.
+ * acconfig.h: Use new gettext #defines.
+ * acinclude.m4: Add fp_WITH_GETTEXT; remove AM_GNU_GETTEXT.
+ * configure.in: Call fp_WITH_GETTEXT instead.
+ * Makefile.am: New gettext stuff. Also force inclusion of glob
+ files for systems which have LIBC glob.
+
+ * i18n/Makefile.am, i18n/.cvsignore: New dir for translation files.
+ * i18n/de.po, i18n/es.po, i18n/fr.po, i18n/ko.po, i18n/nl.po:
+ * i18n/pl.po, i18n/ru.po: Import translations already done for
+ earlier versions of GNU make. Thanks for that work!!
+
+ * po/Makefile.in.in, po/POTFILES.in: Removed.
+
2000-01-23 Paul D. Smith <psmith@gnu.org>
* main.c (decode_debug_flags): If debug_flag is set, enable all
diff --git a/Makefile.am b/Makefile.am
index 156071a..e70c237 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,35 +2,42 @@
AUTOMAKE_OPTIONS = 1.4
+SUBDIRS = $(GLOBDIR) i18n
+
bin_PROGRAMS = make
-make_SOURCES = main.c commands.c job.c dir.c file.c misc.c read.c remake.c \
- rule.c implicit.c default.c variable.c expand.c function.c \
- vpath.c version.c ar.c arscan.c remote-$(REMOTE).c \
- commands.h dep.h filedef.h job.h make.h rule.h variable.h \
- debug.h signame.c signame.h \
- getopt.c getopt1.c getopt.h
+# These source files also have gettext references
+SRCS = ar.c arscan.c commands.c dir.c expand.c file.c function.c \
+ getopt.c implicit.c job.c main.c misc.c read.c remake.c \
+ rule.c signame.c variable.c vpath.c
+
+make_SOURCES = $(SRCS) default.c remote-$(REMOTE).c version.c \
+ getopt.c getopt1.c
+
+noinst_HEADERS = commands.h dep.h filedef.h job.h make.h rule.h variable.h \
+ debug.h signame.h getopt.h gettext.h
-make_LDADD = $(LIBOBJS) @ALLOCA@ $(GLOBLIB) @INTLLIBS@
+make_LDADD = $(LIBOBJS) @ALLOCA@ $(GLOBLIB)
man_MANS = make.1
info_TEXINFOS = make.texinfo
-localedir = $(datadir)/locale
-DEFS = -DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" @DEFS@
+DEFS = -DALIASPATH=\"$(aliaspath)\" -DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" @DEFS@
-INCLUDES = -I. -I$(srcdir) $(GLOBINC) -I./intl -I$(top_srcdir)/intl
+INCLUDES = -I. -I$(srcdir) $(GLOBINC)
EXTRA_DIST = README build.sh.in $(man_MANS) README.customs remote-cstms.c\
- make-stds.texi texinfo.tex SCOPTIONS SMakefile\
+ make-stds.texi SCOPTIONS SMakefile\
README.Amiga Makefile.ami config.ami make.lnk amiga.c amiga.h\
README.DOS Makefile.DOS configure.bat dosbuild.bat configh.dos\
README.W32 NMakefile config.h.W32 build_w32.bat subproc.bat\
readme.vms makefile.vms makefile.com config.h-vms vmsdir.h\
vmsfunctions.c vmsify.c\
- ABOUT-NLS
-
-SUBDIRS = $(GLOBDIR) intl po
+ gettext.c\
+ glob/COPYING.LIB glob/ChangeLog glob/Makefile.am\
+ glob/Makefile.ami glob/Makefile.in glob/SCOPTIONS\
+ glob/SMakefile glob/configure.bat glob/fnmatch.c\
+ glob/fnmatch.h glob/glob.c glob/glob.h
MOSTLYCLEANFILES = loadavg.c
CLEANFILES = loadavg
@@ -38,6 +45,19 @@ CLEANFILES = loadavg
MAKE_HOST = @MAKE_HOST@
+# --------------- Internationalization Section
+
+POTFILES = $(SRCS) remote-cstms.c
+
+localedir = $(prefix)/share/locale
+aliaspath = $(localedir):.
+
+all-local: $(srcdir)/stamp-pot
+
+$(srcdir)/stamp-pot: $(POTFILES)
+ @echo "$(POTFILES)" > $@
+
+
# --------------- Local INSTALL Section
# If necessary, change the gid of the app and turn on the setgid flag.
diff --git a/NEWS b/NEWS
index 55820a6..0dfc96d 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,6 @@
GNU make NEWS -*-indented-text-*-
History of user-visible changes.
- 21 Jan 2000
+ 25 Jan 2000
Copyright (C) 1992,93,94,95,96,97,98,99,2000 Free Software Foundation, Inc.
See the end for copying conditions.
diff --git a/acconfig.h b/acconfig.h
index a5bd884..ae47fdd 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -7,18 +7,21 @@
/* Define to 1 if NLS is requested. */
#undef ENABLE_NLS
-/* Define as 1 if you have catgets and don't want to use GNU gettext. */
-#undef HAVE_CATGETS
+/* Define as 1 if you have dcgettext. */
+#undef HAVE_DCGETTEXT
/* Define as 1 if you have gettext and don't want to use GNU gettext. */
#undef HAVE_GETTEXT
-/* Define as 1 if you have the stpcpy function. */
-#undef HAVE_STPCPY
-
/* Define if your locale.h file contains LC_MESSAGES. */
#undef HAVE_LC_MESSAGES
+/* Define to the installation directory for locales. */
+#undef LOCALEDIR
+
+/* Define as 1 if you have the stpcpy function. */
+#undef HAVE_STPCPY
+
/* Define to the name of the SCCS `get' command. */
#undef SCCS_GET
diff --git a/acinclude.m4 b/acinclude.m4
index 32edd06..2ce31b7 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -482,390 +482,93 @@ case "x$am_cv_prog_cc_stdc" in
*) CC="$CC $am_cv_prog_cc_stdc" ;;
esac
])
+
dnl ---------------------------------------------------------------------------
-dnl Got these from the gettext 0.10.35 distribution
+dnl Enable internationalization support for GNU make.
+dnl Obtained from the libit 0.7 distribution
dnl
-
-# Macro to add for using GNU gettext.
-# Ulrich Drepper <drepper@cygnus.com>, 1995.
-#
-# This file can be copied and used freely without restrictions. It can
-# be used in projects which are not available under the GNU Public License
-# but which still want to provide support for the GNU gettext functionality.
-# Please note that the actual code is *not* freely available.
-
-# serial 5
-
-AC_DEFUN(AM_WITH_NLS,
- [AC_MSG_CHECKING([whether NLS is requested])
- dnl Default is enabled NLS
- AC_ARG_ENABLE(nls,
- [ --disable-nls do not use Native Language Support],
- USE_NLS=$enableval, USE_NLS=yes)
- AC_MSG_RESULT($USE_NLS)
- AC_SUBST(USE_NLS)
-
- USE_INCLUDED_LIBINTL=no
-
- dnl If we use NLS figure out what method
- if test "$USE_NLS" = "yes"; then
- AC_DEFINE(ENABLE_NLS)
- AC_MSG_CHECKING([whether included gettext is requested])
+AC_DEFUN(fp_WITH_GETTEXT, [
+
+ AC_MSG_CHECKING(whether NLS is wanted)
+ AC_ARG_ENABLE(nls,
+ [ --disable-nls disallow Native Language Support],
+ enable_nls=$enableval, enable_nls=yes)
+ AC_MSG_RESULT($enable_nls)
+ use_nls=$enable_nls
+ AM_CONDITIONAL(USE_NLS, test $use_nls = yes)
+
+ if test $enable_nls = yes; then
+ AC_DEFINE(ENABLE_NLS)
+
+ AC_ARG_WITH(catgets,
+ [ --with-catgets say that catgets is not supported],
+ [AC_MSG_WARN([catgets not supported, --with-catgets ignored])])
+
+ AC_CHECK_FUNCS(gettext)
+ AC_CHECK_LIB(intl, gettext, :)
+ if test $ac_cv_lib_intl_gettext$ac_cv_func_gettext != nono; then
+ AC_MSG_CHECKING(whether the included gettext is preferred)
AC_ARG_WITH(included-gettext,
- [ --with-included-gettext use the GNU gettext library included here],
- nls_cv_force_use_gnu_gettext=$withval,
- nls_cv_force_use_gnu_gettext=no)
- AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
-
- 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=
- CATOBJEXT=NONE
-
- 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)])
- 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
- ])
-
- 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 "$CATOBJEXT" = "NONE"; then
- dnl Neither gettext nor catgets in included in the C library.
- dnl Fall back on GNU gettext library.
- nls_cv_use_gnu_gettext=yes
- fi
+ [ --without-included-gettext avoid our provided version of gettext],
+ with_included_gettext=$withval, with_included_gettext=yes)
+ AC_MSG_RESULT($with_included_gettext)
+ if test $with_included_gettext$ac_cv_func_gettext = nono; then
+ LIBS="$LIBS -lintl"
fi
-
- if test "$nls_cv_use_gnu_gettext" = "yes"; then
- dnl Mark actions used to generate GNU NLS library.
- INTLOBJS="\$(GETTOBJS)"
- AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
- [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], msgfmt)
- 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_SUBST(MSGFMT)
- 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
- fi
-
- dnl Test whether we really found GNU xgettext.
- if test "$XGETTEXT" != ":"; then
- dnl If it is no GNU xgettext we define it as : so that the
- dnl Makefiles still can work.
- if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
- : ;
- else
- AC_MSG_RESULT(
- [found xgettext program is not GNU xgettext; ignore it])
- 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
+ with_included_gettext=yes
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])
-
-
- # 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 $with_included_gettext = yes; then
+ LIBOBJS="$LIBOBJS gettext.o"
+ AC_DEFINE(HAVE_GETTEXT)
+ AC_DEFINE(HAVE_DCGETTEXT)
+ else
+ AC_CHECK_HEADERS(libintl.h)
+ AC_CHECK_FUNCS(dcgettext gettext)
fi
- dnl These rules are solely for the distribution goal. While doing this
- dnl we only have to keep exactly one list of the available catalogs
- dnl in configure.in.
- for lang in $ALL_LINGUAS; do
- GMOFILES="$GMOFILES $lang.gmo"
- POFILES="$POFILES $lang.po"
- done
-
- dnl Make all variables we use known to autoconf.
- 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)
- ])
-
-AC_DEFUN(AM_GNU_GETTEXT,
- [AC_REQUIRE([AC_PROG_MAKE_SET])dnl
- AC_REQUIRE([AC_PROG_CC])dnl
- AC_REQUIRE([AC_PROG_RANLIB])dnl
- AC_REQUIRE([AC_ISC_POSIX])dnl
- AC_REQUIRE([AC_HEADER_STDC])dnl
- AC_REQUIRE([AC_C_CONST])dnl
- AC_REQUIRE([AC_C_INLINE])dnl
- AC_REQUIRE([AC_TYPE_OFF_T])dnl
- AC_REQUIRE([AC_TYPE_SIZE_T])dnl
- AC_REQUIRE([AC_FUNC_ALLOCA])dnl
- AC_REQUIRE([AC_FUNC_MMAP])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
-
- AM_LC_MESSAGES
- AM_WITH_NLS
-
- if test "x$CATOBJEXT" != "x"; then
- if test "x$ALL_LINGUAS" = "x"; then
- LINGUAS=
- 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
- done
- LINGUAS=$NEW_LINGUAS
- AC_MSG_RESULT($LINGUAS)
- fi
-
- dnl Construct list of names of catalog files to be constructed.
- if test -n "$LINGUAS"; then
- for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
- fi
- fi
+ AC_CHECK_HEADERS(locale.h)
+ AC_CHECK_FUNCS(getcwd setlocale stpcpy)
+ AM_LC_MESSAGES
- 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 Try to locate is.
- MKINSTALLDIRS=
- if test -n "$ac_aux_dir"; then
- MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
- fi
- if test -z "$MKINSTALLDIRS"; then
- MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
- 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
- ])
-
-# Check whether LC_MESSAGES is available in <locale.h>.
-# Ulrich Drepper <drepper@cygnus.com>, 1995.
-#
-# This file can be copied and used freely without restrictions. It can
-# be used in projects which are not available under the GNU Public License
-# but which still want to provide support for the GNU gettext functionality.
-# Please note that the actual code is *not* freely available.
-
-# serial 1
-
-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)
+ if test -z "$ALL_LINGUAS"; then
+ AC_MSG_WARN(This package does not install translations yet.)
+ else
+ ac_items="$ALL_LINGUAS"
+ for ac_item in $ac_items; do
+ ALL_POFILES="$ALL_POFILES $ac_item.po"
+ ALL_MOFILES="$ALL_MOFILES $ac_item.mo"
+ done
+ fi
+ AC_SUBST(ALL_LINGUAS)
+ AC_SUBST(ALL_POFILES)
+ AC_SUBST(ALL_MOFILES)
+
+ AC_MSG_CHECKING(which translations to install)
+ if test -z "$LINGUAS"; then
+ ac_print="$ALL_LINGUAS"
+ MOFILES="$ALL_MOFILES"
+ else
+ ac_items="$LINGUAS"
+ for ac_item in $ac_items; do
+ case "$ALL_LINGUAS" in
+ *$ac_item*)
+ ac_print="$ac_print $ac_item"
+ MOFILES="$MOFILES $ac_item.mo"
+ ;;
+ esac
+ done
+ fi
+ AC_SUBST(MOFILES)
+ if test -z "$ac_print"; then
+ AC_MSG_RESULT(none)
+ else
+ AC_MSG_RESULT($ac_print)
fi
- fi])
-# Search path for a program which passes the given test.
-# Ulrich Drepper <drepper@cygnus.com>, 1996.
-#
-# This file can be copied and used freely without restrictions. It can
-# be used in projects which are not available under the GNU Public License
-# but which still want to provide support for the GNU gettext functionality.
-# Please note that the actual code is *not* freely available.
-
-# serial 1
-
-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,
-[# 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])
-AC_CACHE_VAL(ac_cv_path_$1,
-[case "[$]$1" in
- /*)
- ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
- ;;
- *)
- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
- for ac_dir in ifelse([$5], , $PATH, [$5]); do
- test -z "$ac_dir" && ac_dir=.
- if test -f $ac_dir/$ac_word; then
- if [$3]; then
- ac_cv_path_$1="$ac_dir/$ac_word"
- break
- fi
+ if test "x$prefix" = xNONE; then
+ AC_DEFINE_UNQUOTED(LOCALEDIR, "$ac_default_prefix/share/locale")
+ else
+ AC_DEFINE_UNQUOTED(LOCALEDIR, "$prefix/share/locale")
fi
- done
- IFS="$ac_save_ifs"
-dnl If no 4th arg is given, leave the cache variable unset,
-dnl so AC_PATH_PROGS will keep looking.
-ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
-])dnl
- ;;
-esac])dnl
-$1="$ac_cv_path_$1"
-if test -n "[$]$1"; then
- AC_MSG_RESULT([$]$1)
-else
- AC_MSG_RESULT(no)
-fi
-AC_SUBST($1)dnl
-])
+ fi])
diff --git a/configure.in b/configure.in
index 1700fc8..ba54f12 100644
--- a/configure.in
+++ b/configure.in
@@ -3,7 +3,7 @@ AC_REVISION([$Id$])
AC_PREREQ(2.13)dnl dnl Minimum Autoconf version required.
AC_INIT(vpath.c)dnl dnl A distinctive file to look for in srcdir.
-AM_INIT_AUTOMAKE(make, 3.78.90a)
+AM_INIT_AUTOMAKE(make, 3.78.90)
AM_CONFIG_HEADER(config.h)
dnl Regular configure stuff
@@ -108,8 +108,8 @@ AC_DECL_SYS_SIGLIST
dnl Handle internationalization
-ALL_LINGUAS=
-AM_GNU_GETTEXT
+ALL_LINGUAS="de es fr ko nl pl ru"
+fp_WITH_GETTEXT
# The presence of the following is not meant to imply
# that make necessarily works on those systems.
@@ -226,7 +226,7 @@ if test -r "$srcdir/maintMakefile"; then
fi
AC_SUBST_FILE(MAINT_MAKEFILE)
-AC_OUTPUT(build.sh Makefile glob/Makefile intl/Makefile po/Makefile.in)
+AC_OUTPUT(build.sh Makefile glob/Makefile i18n/Makefile)
dnl If we don't yet have build.sh.in, build.sh is a bogus 0-length file
dnl so remove it.
diff --git a/getopt.c b/getopt.c
index 03effcb..cd77419 100644
--- a/getopt.c
+++ b/getopt.c
@@ -79,16 +79,11 @@
# endif
#endif
-#ifndef _
/* This is for other GNU distributions with internationalized messages.
When compiling libc, the _ macro is predefined. */
-# ifdef HAVE_LIBINTL_H
-# include <libintl.h>
-# define _(msgid) gettext (msgid)
-# else
-# define _(msgid) (msgid)
-# endif
-#endif
+#include "gettext.h"
+#define _(msgid) gettext (msgid)
+
/* This version of `getopt' appears to the caller like standard Unix `getopt'
but it behaves differently for the user, since it allows the user
diff --git a/gettext.c b/gettext.c
new file mode 100644
index 0000000..4540b1b
--- /dev/null
+++ b/gettext.c
@@ -0,0 +1,2592 @@
+/* Begin of l10nflist.c */
+
+/* Handle list of needed message catalogs
+ Copyright (C) 1995, 1996, 1997 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
+ 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. */
+
+#if HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#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
+
+#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
+#if !HAVE_STRCHR && !defined _LIBC
+# ifndef strchr
+# define strchr index
+# endif
+#endif
+
+#if defined _LIBC || defined HAVE_ARGZ_H
+# include <argz.h>
+#endif
+#include <ctype.h>
+#include <sys/types.h>
+
+#if defined STDC_HEADERS || defined _LIBC
+# include <stdlib.h>
+#endif
+
+/* Interrupt of l10nflist.c */
+
+/* Begin of loadinfo.h */
+
+/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+ Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. */
+
+#ifndef PARAMS
+# if __STDC__
+# define PARAMS(args) args
+# else
+# define PARAMS(args) ()
+# endif
+#endif
+
+/* Encoding of locale name parts. */
+#define CEN_REVISION 1
+#define CEN_SPONSOR 2
+#define CEN_SPECIAL 4
+#define XPG_NORM_CODESET 8
+#define XPG_CODESET 16
+#define TERRITORY 32
+#define CEN_AUDIENCE 64
+#define XPG_MODIFIER 128
+
+#define CEN_SPECIFIC (CEN_REVISION|CEN_SPONSOR|CEN_SPECIAL|CEN_AUDIENCE)
+#define XPG_SPECIFIC (XPG_CODESET|XPG_NORM_CODESET|XPG_MODIFIER)
+
+struct loaded_l10nfile
+{
+ const char *filename;
+ int decided;
+
+ const void *data;
+
+ struct loaded_l10nfile *next;
+ struct loaded_l10nfile *successor[1];
+};
+
+static const char *_nl_normalize_codeset PARAMS ((const unsigned char *codeset,
+ size_t name_len));
+
+static struct loaded_l10nfile *
+_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list,
+ const char *dirlist, size_t dirlist_len, int mask,
+ const char *language, const char *territory,
+ const char *codeset,
+ const char *normalized_codeset,
+ const char *modifier, const char *special,
+ const char *sponsor, const char *revision,
+ const char *filename, int do_allocate));
+
+static const char *_nl_expand_alias PARAMS ((const char *name));
+
+static int _nl_explode_name PARAMS ((char *name, const char **language,
+ const char **modifier,
+ const char **territory,
+ const char **codeset,
+ const char **normalized_codeset,
+ const char **special,
+ const char **sponsor,
+ const char **revision));
+
+/* End of loadinfo.h */
+
+/* Resume of l10nflist.c */
+
+/* On some strange systems still no definition of NULL is found. Sigh! */
+#ifndef NULL
+# if defined __STDC__ && __STDC__
+# define NULL ((void *) 0)
+# else
+# define NULL 0
+# endif
+#endif
+
+#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. */
+# ifndef stpcpy
+# define stpcpy(dest, src) __stpcpy(dest, src)
+# endif
+#else
+# ifndef HAVE_STPCPY
+static char *stpcpy PARAMS ((char *dest, const char *src));
+# endif
+#endif
+
+/* Define function which are usually not available. */
+
+#if !defined _LIBC && !defined HAVE___ARGZ_COUNT
+/* Returns the number of strings in ARGZ. */
+static size_t argz_count__ PARAMS ((const char *argz, size_t len));
+
+static size_t
+argz_count__ (argz, len)
+ const char *argz;
+ size_t len;
+{
+ size_t count = 0;
+ while (len > 0)
+ {
+ size_t part_len = strlen (argz);
+ argz += part_len + 1;
+ len -= part_len + 1;
+ count++;
+ }
+ return count;
+}
+# undef __argz_count
+# define __argz_count(argz, len) argz_count__ (argz, len)
+#endif /* !_LIBC && !HAVE___ARGZ_COUNT */
+
+#if !defined _LIBC && !defined HAVE___ARGZ_STRINGIFY
+/* Make '\0' separated arg vector ARGZ printable by converting all the '\0's
+ except the last into the character SEP. */
+static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep));
+
+static void
+argz_stringify__ (argz, len, sep)
+ char *argz;
+ size_t len;
+ int sep;
+{
+ while (len > 0)
+ {
+ size_t part_len = strlen (argz);
+ argz += part_len;
+ len -= part_len + 1;
+ if (len > 0)
+ *argz++ = sep;
+ }
+}
+# undef __argz_stringify
+# define __argz_stringify(argz, len, sep) argz_stringify__ (argz, len, sep)
+#endif /* !_LIBC && !HAVE___ARGZ_STRINGIFY */
+
+#if !defined _LIBC && !defined HAVE___ARGZ_NEXT
+static char *argz_next__ PARAMS ((char *argz, size_t argz_len,
+ const char *entry));
+
+static char *
+argz_next__ (argz, argz_len, entry)
+ char *argz;
+ size_t argz_len;
+ const char *entry;
+{
+ if (entry)
+ {
+ if (entry < argz + argz_len)
+ entry = strchr (entry, '\0') + 1;
+
+ return entry >= argz + argz_len ? NULL : (char *) entry;
+ }
+ else
+ if (argz_len > 0)
+ return argz;
+ else
+ return 0;
+}
+# undef __argz_next
+# define __argz_next(argz, len, entry) argz_next__ (argz, len, entry)
+#endif /* !_LIBC && !HAVE___ARGZ_NEXT */
+
+/* Return number of bits set in X. */
+static int pop PARAMS ((int x));
+
+static inline int
+pop (x)
+ int x;
+{
+ /* We assume that no more than 16 bits are used. */
+ x = ((x & ~0x5555) >> 1) + (x & 0x5555);
+ x = ((x & ~0x3333) >> 2) + (x & 0x3333);
+ x = ((x >> 4) + x) & 0x0f0f;
+ x = ((x >> 8) + x) & 0xff;
+
+ return x;
+}
+
+struct loaded_l10nfile *
+_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language,
+ territory, codeset, normalized_codeset, modifier, special,
+ sponsor, revision, filename, do_allocate)
+ struct loaded_l10nfile **l10nfile_list;
+ const char *dirlist;
+ size_t dirlist_len;
+ int mask;
+ const char *language;
+ const char *territory;
+ const char *codeset;
+ const char *normalized_codeset;
+ const char *modifier;
+ const char *special;
+ const char *sponsor;
+ const char *revision;
+ const char *filename;
+ int do_allocate;
+{
+ char *abs_filename;
+ struct loaded_l10nfile *last = NULL;
+ struct loaded_l10nfile *retval;
+ char *cp;
+ size_t entries;
+ int cnt;
+
+ /* Allocate room for the full file name. */
+ abs_filename = (char *) malloc (dirlist_len
+ + strlen (language)
+ + ((mask & TERRITORY) != 0
+ ? strlen (territory) + 1 : 0)
+ + ((mask & XPG_CODESET) != 0
+ ? strlen (codeset) + 1 : 0)
+ + ((mask & XPG_NORM_CODESET) != 0
+ ? strlen (normalized_codeset) + 1 : 0)
+ + (((mask & XPG_MODIFIER) != 0
+ || (mask & CEN_AUDIENCE) != 0)
+ ? strlen (modifier) + 1 : 0)
+ + ((mask & CEN_SPECIAL) != 0
+ ? strlen (special) + 1 : 0)
+ + (((mask & CEN_SPONSOR) != 0
+ || (mask & CEN_REVISION) != 0)
+ ? (1 + ((mask & CEN_SPONSOR) != 0
+ ? strlen (sponsor) + 1 : 0)
+ + ((mask & CEN_REVISION) != 0
+ ? strlen (revision) + 1 : 0)) : 0)
+ + 1 + strlen (filename) + 1);
+
+ if (abs_filename == NULL)
+ return NULL;
+
+ retval = NULL;
+ last = NULL;
+
+ /* Construct file name. */
+ memcpy (abs_filename, dirlist, dirlist_len);
+ __argz_stringify (abs_filename, dirlist_len, ':');
+ cp = abs_filename + (dirlist_len - 1);
+ *cp++ = '/';
+ cp = stpcpy (cp, language);
+
+ if ((mask & TERRITORY) != 0)
+ {
+ *cp++ = '_';
+ cp = stpcpy (cp, territory);
+ }
+ if ((mask & XPG_CODESET) != 0)
+ {
+ *cp++ = '.';
+ cp = stpcpy (cp, codeset);
+ }
+ if ((mask & XPG_NORM_CODESET) != 0)
+ {
+ *cp++ = '.';
+ cp = stpcpy (cp, normalized_codeset);
+ }
+ if ((mask & (XPG_MODIFIER | CEN_AUDIENCE)) != 0)
+ {
+ /* This component can be part of both syntaces but has different
+ leading characters. For CEN we use `+', else `@'. */
+ *cp++ = (mask & CEN_AUDIENCE) != 0 ? '+' : '@';
+ cp = stpcpy (cp, modifier);
+ }
+ if ((mask & CEN_SPECIAL) != 0)
+ {
+ *cp++ = '+';
+ cp = stpcpy (cp, special);
+ }
+ if ((mask & (CEN_SPONSOR | CEN_REVISION)) != 0)
+ {
+ *cp++ = ',';
+ if ((mask & CEN_SPONSOR) != 0)
+ cp = stpcpy (cp, sponsor);
+ if ((mask & CEN_REVISION) != 0)
+ {
+ *cp++ = '_';
+ cp = stpcpy (cp, revision);
+ }
+ }
+
+ *cp++ = '/';
+ stpcpy (cp, filename);
+
+ /* Look in list of already loaded domains whether it is already
+ available. */
+ last = NULL;
+ for (retval = *l10nfile_list; retval != NULL; retval = retval->next)
+ if (retval->filename != NULL)
+ {
+ int compare = strcmp (retval->filename, abs_filename);
+ if (compare == 0)
+ /* We found it! */
+ break;
+ if (compare < 0)
+ {
+ /* It's not in the list. */
+ retval = NULL;
+ break;
+ }
+
+ last = retval;
+ }
+
+ if (retval != NULL || do_allocate == 0)
+ {
+ free (abs_filename);
+ return retval;
+ }
+
+ retval = (struct loaded_l10nfile *)
+ malloc (sizeof (*retval) + (__argz_count (dirlist, dirlist_len)
+ * (1 << pop (mask))
+ * sizeof (struct loaded_l10nfile *)));
+ if (retval == NULL)
+ return NULL;
+
+ retval->filename = abs_filename;
+ retval->decided = (__argz_count (dirlist, dirlist_len) != 1
+ || ((mask & XPG_CODESET) != 0
+ && (mask & XPG_NORM_CODESET) != 0));
+ retval->data = NULL;
+
+ if (last == NULL)
+ {
+ retval->next = *l10nfile_list;
+ *l10nfile_list = retval;
+ }
+ else
+ {
+ retval->next = last->next;
+ last->next = retval;
+ }
+
+ entries = 0;
+ /* If the DIRLIST is a real list the RETVAL entry corresponds not to
+ a real file. So we have to use the DIRLIST separation mechanism
+ of the inner loop. */
+ cnt = __argz_count (dirlist, dirlist_len) == 1 ? mask - 1 : mask;
+ for (; cnt >= 0; --cnt)
+ if ((cnt & ~mask) == 0
+ && ((cnt & CEN_SPECIFIC) == 0 || (cnt & XPG_SPECIFIC) == 0)
+ && ((cnt & XPG_CODESET) == 0 || (cnt & XPG_NORM_CODESET) == 0))
+ {
+ /* Iterate over all elements of the DIRLIST. */
+ char *dir = NULL;
+
+ while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir))
+ != NULL)
+ retval->successor[entries++]
+ = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, cnt,
+ language, territory, codeset,
+ normalized_codeset, modifier, special,
+ sponsor, revision, filename, 1);
+ }
+ retval->successor[entries] = NULL;
+
+ return retval;
+}
+
+/* Normalize codeset name. There is no standard for the codeset
+ names. Normalization allows the user to use any of the common
+ names. */
+static const char *
+_nl_normalize_codeset (codeset, name_len)
+ const unsigned char *codeset;
+ size_t name_len;
+{
+ int len = 0;
+ int only_digit = 1;
+ char *retval;
+ char *wp;
+ size_t cnt;
+
+ for (cnt = 0; cnt < name_len; ++cnt)
+ if (isalnum (codeset[cnt]))
+ {
+ ++len;
+
+ if (isalpha (codeset[cnt]))
+ only_digit = 0;
+ }
+
+ retval = (char *) malloc ((only_digit ? 3 : 0) + len + 1);
+
+ if (retval != NULL)
+ {
+ if (only_digit)
+ wp = stpcpy (retval, "iso");
+ else
+ wp = retval;
+
+ for (cnt = 0; cnt < name_len; ++cnt)
+ if (isalpha (codeset[cnt]))
+ *wp++ = tolower (codeset[cnt]);
+ else if (isdigit (codeset[cnt]))
+ *wp++ = codeset[cnt];
+
+ *wp = '\0';
+ }
+
+ return (const char *) retval;
+}
+
+/* End of l10nflist.c */
+
+/* Begin of explodename.c */
+
+/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
+ Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. */
+
+#if defined STDC_HEADERS || defined _LIBC
+#endif
+
+#if defined HAVE_STRING_H || defined _LIBC
+#else
+#endif
+
+static int
+_nl_explode_name (name, language, modifier, territory, codeset,
+ normalized_codeset, special, sponsor, revision)
+ char *name;
+ const char **language;
+ const char **modifier;
+ const char **territory;
+ const char **codeset;
+ const char **normalized_codeset;
+ const char **special;
+ const char **sponsor;
+ const char **revision;
+{
+ enum { undecided, xpg, cen } syntax;
+ char *cp;
+ int mask;
+
+ *modifier = NULL;
+ *territory = NULL;
+ *codeset = NULL;
+ *normalized_codeset = NULL;
+ *special = NULL;
+ *sponsor = NULL;
+ *revision = NULL;
+
+ /* Now we determine the single parts of the locale name. First
+ look for the language. Termination symbols are `_' and `@' if
+ we use XPG4 style, and `_', `+', and `,' if we use CEN syntax. */
+ mask = 0;
+ syntax = undecided;
+ *language = cp = name;
+ while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@'
+ && cp[0] != '+' && cp[0] != ',')
+ ++cp;
+
+ if (*language == cp)
+ /* This does not make sense: language has to be specified. Use
+ this entry as it is without exploding. Perhaps it is an alias. */
+ cp = strchr (*language, '\0');
+ else if (cp[0] == '_')
+ {
+ /* Next is the territory. */
+ cp[0] = '\0';
+ *territory = ++cp;
+
+ while (cp[0] != '\0' && cp[0] != '.' && cp[0] != '@'
+ && cp[0] != '+' && cp[0] != ',' && cp[0] != '_')
+ ++cp;
+
+ mask |= TERRITORY;
+
+ if (cp[0] == '.')
+ {
+ /* Next is the codeset. */
+ syntax = xpg;
+ cp[0] = '\0';
+ *codeset = ++cp;
+
+ while (cp[0] != '\0' && cp[0] != '@')
+ ++cp;
+
+ mask |= XPG_CODESET;
+
+ if (*codeset != cp && (*codeset)[0] != '\0')
+ {
+ *normalized_codeset = _nl_normalize_codeset (*codeset,
+ cp - *codeset);
+ if (strcmp (*codeset, *normalized_codeset) == 0)
+ free ((char *) *normalized_codeset);
+ else
+ mask |= XPG_NORM_CODESET;
+ }
+ }
+ }
+
+ if (cp[0] == '@' || (syntax != xpg && cp[0] == '+'))
+ {
+ /* Next is the modifier. */
+ syntax = cp[0] == '@' ? xpg : cen;
+ cp[0] = '\0';
+ *modifier = ++cp;
+
+ while (syntax == cen && cp[0] != '\0' && cp[0] != '+'
+ && cp[0] != ',' && cp[0] != '_')
+ ++cp;
+
+ mask |= XPG_MODIFIER | CEN_AUDIENCE;
+ }
+
+ if (syntax != xpg && (cp[0] == '+' || cp[0] == ',' || cp[0] == '_'))
+ {
+ syntax = cen;
+
+ if (cp[0] == '+')
+ {
+ /* Next is special application (CEN syntax). */
+ cp[0] = '\0';
+ *special = ++cp;
+
+ while (cp[0] != '\0' && cp[0] != ',' && cp[0] != '_')
+ ++cp;
+
+ mask |= CEN_SPECIAL;
+ }
+
+ if (cp[0] == ',')
+ {
+ /* Next is sponsor (CEN syntax). */
+ cp[0] = '\0';
+ *sponsor = ++cp;
+
+ while (cp[0] != '\0' && cp[0] != '_')
+ ++cp;
+
+ mask |= CEN_SPONSOR;
+ }
+
+ if (cp[0] == '_')
+ {
+ /* Next is revision (CEN syntax). */
+ cp[0] = '\0';
+ *revision = ++cp;
+
+ mask |= CEN_REVISION;
+ }
+ }
+
+ /* For CEN syntax values it might be important to have the
+ separator character in the file name, not for XPG syntax. */
+ if (syntax == xpg)
+ {
+ if (*territory != NULL && (*territory)[0] == '\0')
+ mask &= ~TERRITORY;
+
+ if (*codeset != NULL && (*codeset)[0] == '\0')
+ mask &= ~XPG_CODESET;
+
+ if (*modifier != NULL && (*modifier)[0] == '\0')
+ mask &= ~XPG_MODIFIER;
+ }
+
+ return mask;
+}
+
+/* End of explodename.c */
+
+/* Begin of loadmsgcat.c */
+
+/* Load needed message catalogs.
+ Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. */
+
+#include <fcntl.h>
+#include <sys/stat.h>
+
+#if defined STDC_HEADERS || defined _LIBC
+#endif
+
+#if defined HAVE_UNISTD_H || defined _LIBC
+# include <unistd.h>
+#endif
+
+#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC
+# include <sys/mman.h>
+#endif
+
+/* Interrupt of loadmsgcat.c */
+
+/* Begin of gettext.h */
+
+/* Internal header for GNU gettext internationalization functions.
+ Copyright (C) 1995, 1997 Free Software Foundation, Inc. */
+
+#ifndef _GETTEXT_H
+#define _GETTEXT_H 1
+
+#include <stdio.h>
+
+#if HAVE_LIMITS_H || _LIBC
+# include <limits.h>
+#endif
+
+/* The magic number of the GNU message catalog format. */
+#define _MAGIC 0x950412de
+#define _MAGIC_SWAPPED 0xde120495
+
+/* Revision number of the currently used .mo (binary) file format. */
+#define MO_REVISION_NUMBER 0
+
+/* 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. */
+
+#if __STDC__
+# define UINT_MAX_32_BITS 4294967295U
+#else
+# define UINT_MAX_32_BITS 0xFFFFFFFF
+#endif
+
+/* If UINT_MAX isn't defined, assume it's a 32-bit type.
+ This should be valid for all systems GNU cares about because
+ that doesn't include 16-bit systems, and only modern systems
+ (that certainly have <limits.h>) have 64+-bit integral types. */
+
+#ifndef UINT_MAX
+# define UINT_MAX UINT_MAX_32_BITS
+#endif
+
+#if UINT_MAX == UINT_MAX_32_BITS
+typedef unsigned nls_uint32;
+#else
+# if USHRT_MAX == UINT_MAX_32_BITS
+typedef unsigned short nls_uint32;
+# else
+# if ULONG_MAX == UINT_MAX_32_BITS
+typedef unsigned long nls_uint32;
+# else
+ /* The following line is intended to throw an error. Using #error is
+ not portable enough. */
+ "Cannot determine unsigned 32-bit data type."
+# endif
+# endif
+#endif
+
+/* Header for binary .mo file format. */
+struct mo_file_header
+{
+ /* The magic number. */
+ nls_uint32 magic;
+ /* The revision number of the file format. */
+ nls_uint32 revision;
+ /* The number of strings pairs. */
+ nls_uint32 nstrings;
+ /* Offset of table with start offsets of original strings. */
+ nls_uint32 orig_tab_offset;
+ /* Offset of table with start offsets of translation strings. */
+ nls_uint32 trans_tab_offset;
+ /* Size of hashing table. */
+ nls_uint32 hash_tab_size;
+ /* Offset of first hashing entry. */
+ nls_uint32 hash_tab_offset;
+};
+
+struct string_desc
+{
+ /* Length of addressed string. */
+ nls_uint32 length;
+ /* Offset of string in file. */
+ nls_uint32 offset;
+};
+
+#endif /* gettext.h */
+
+/* End of gettext.h */
+
+/* Resume of loadmsgcat.c */
+
+/* Interrupt of loadmsgcat.c */
+
+/* Begin of gettextP.h */
+
+/* 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. */
+
+#ifndef _GETTEXTP_H
+#define _GETTEXTP_H
+
+#ifndef PARAMS
+# if __STDC__
+# define PARAMS(args) args
+# else
+# define PARAMS(args) ()
+# endif
+#endif
+
+#ifndef internal_function
+# define internal_function
+#endif
+
+#ifndef W
+# define W(flag, data) ((flag) ? SWAP (data) : (data))
+#endif
+
+#ifdef _LIBC
+# 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;
+{
+ return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24);
+}
+#endif
+
+struct loaded_domain
+{
+ const char *data;
+ int use_mmap;
+ size_t mmap_size;
+ int must_swap;
+ nls_uint32 nstrings;
+ struct string_desc *orig_tab;
+ struct string_desc *trans_tab;
+ nls_uint32 hash_size;
+ nls_uint32 *hash_tab;
+};
+
+struct binding
+{
+ struct binding *next;
+ char *domainname;
+ char *dirname;
+};
+/*
+static struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname,
+ char *__locale,
+ const char *__domainname))
+ internal_function;
+static void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain))
+ internal_function;
+static void _nl_unload_domain PARAMS ((struct loaded_domain *__domain))
+ internal_function;
+*/
+#endif /* gettextP.h */
+
+/* End of gettextP.h */
+
+/* Resume of loadmsgcat.c */
+
+#ifdef _LIBC
+/* Rename the non ISO C functions. This is required by the standard
+ because some ISO C functions will require linking with this object
+ file and the name space must not be polluted. */
+# define open __open
+# define close __close
+# define read __read
+# define mmap __mmap
+# define munmap __munmap
+#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;
+
+/* Load the message catalogs specified by FILENAME. If it is no valid
+ message catalog do nothing. */
+static void
+internal_function
+_nl_load_domain (domain_file)
+ struct loaded_l10nfile *domain_file;
+{
+ int fd;
+ size_t size;
+ struct stat st;
+ 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;
+
+ domain_file->decided = 1;
+ domain_file->data = NULL;
+
+ /* 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
+ syntax. */
+ if (domain_file->filename == NULL)
+ return;
+
+ /* Try to open the addressed file. */
+ fd = open (domain_file->filename, O_RDONLY);
+ 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))
+ {
+ /* Something went wrong. */
+ close (fd);
+ return;
+ }
+
+#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
+ || defined _LIBC
+ /* 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)
+ {
+ /* mmap() call was successful. */
+ close (fd);
+ use_mmap = 1;
+ }
+#endif
+
+ /* If the data is not yet available (i.e. mmap'ed) we try to load
+ it manually. */
+ if (data == (struct mo_file_header *) -1)
+ {
+ size_t to_read;
+ char *read_ptr;
+
+ data = (struct mo_file_header *) malloc (size);
+ if (data == NULL)
+ return;
+
+ to_read = size;
+ read_ptr = (char *) data;
+ do
+ {
+ long int nb = (long int) read (fd, read_ptr, to_read);
+ if (nb == -1)
+ {
+ close (fd);
+ return;
+ }
+
+ read_ptr += nb;
+ to_read -= nb;
+ }
+ while (to_read > 0);
+
+ close (fd);
+ }
+
+ /* Using the magic number we can test whether it really is a message
+ catalog file. */
+ if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED)
+ {
+ /* The magic number is wrong: not a message catalog file. */
+#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
+ || defined _LIBC
+ if (use_mmap)
+ munmap ((caddr_t) data, size);
+ else
+#endif
+ free (data);
+ return;
+ }
+
+ domain_file->data
+ = (struct loaded_domain *) malloc (sizeof (struct loaded_domain));
+ if (domain_file->data == NULL)
+ return;
+
+ 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;
+
+ /* Fill in the information about the available tables. */
+ switch (W (domain->must_swap, data->revision))
+ {
+ case 0:
+ domain->nstrings = W (domain->must_swap, data->nstrings);
+ domain->orig_tab = (struct string_desc *)
+ ((char *) data + W (domain->must_swap, data->orig_tab_offset));
+ domain->trans_tab = (struct string_desc *)
+ ((char *) data + W (domain->must_swap, data->trans_tab_offset));
+ domain->hash_size = W (domain->must_swap, data->hash_tab_size);
+ domain->hash_tab = (nls_uint32 *)
+ ((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
+ if (use_mmap)
+ munmap ((caddr_t) data, size);
+ else
+#endif
+ free (data);
+ free (domain);
+ domain_file->data = NULL;
+ return;
+ }
+
+ /* Show that one domain is changed. This might make some cached
+ translations invalid. */
+ ++_nl_msg_cat_cntr;
+}
+
+#ifdef _LIBC
+static void
+internal_function
+_nl_unload_domain (domain)
+ struct loaded_domain *domain;
+{
+ if (domain->use_mmap)
+ munmap ((caddr_t) domain->data, domain->mmap_size);
+ else
+ free ((void *) domain->data);
+
+ free (domain);
+}
+#endif
+
+/* End of loadmsgcat.c */
+
+/* Begin of localealias.c */
+
+/* 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. */
+
+#if defined STDC_HEADERS || defined _LIBC
+#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
+#else
+# 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
+
+#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 strcasecmp __strcasecmp
+
+# define mempcpy __mempcpy
+# define HAVE_MEMPCPY 1
+
+/* We need locking here since we can be called from different places. */
+# include <bits/libc-lock.h>
+
+__libc_lock_define_initialized (static, lock);
+#endif
+
+/* 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 */
+
+struct alias_map
+{
+ const char *alias;
+ const char *value;
+};
+
+static char *string_space = NULL;
+static size_t string_space_act = 0;
+static size_t string_space_max = 0;
+static struct alias_map *map;
+static size_t nmap = 0;
+static size_t maxmap = 0;
+
+/* 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 alias_compare PARAMS ((const struct alias_map *map1,
+ const struct alias_map *map2));
+
+static const char *
+_nl_expand_alias (name)
+ const char *name;
+{
+ static const char *locale_alias_path = ALIASPATH;
+ struct alias_map *retval;
+ const char *result = NULL;
+ size_t added;
+
+#ifdef _LIBC
+ __libc_lock_lock (lock);
+#endif
+
+ do
+ {
+ struct alias_map item;
+
+ item.alias = name;
+
+ if (nmap > 0)
+ retval = (struct alias_map *) bsearch (&item, map, nmap,
+ sizeof (struct alias_map),
+ (int (*) PARAMS ((const void *,
+ const void *))
+ ) alias_compare);
+ else
+ retval = NULL;
+
+ /* We really found an alias. Return the value. */
+ if (retval != NULL)
+ {
+ result = retval->value;
+ break;
+ }
+
+ /* Perhaps we can find another alias file. */
+ added = 0;
+ while (added == 0 && locale_alias_path[0] != '\0')
+ {
+ const char *start;
+
+ while (locale_alias_path[0] == ':')
+ ++locale_alias_path;
+ start = locale_alias_path;
+
+ while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':')
+ ++locale_alias_path;
+
+ if (start < locale_alias_path)
+ added = read_alias_file (start, locale_alias_path - start);
+ }
+ }
+ while (added != 0);
+
+#ifdef _LIBC
+ __libc_lock_unlock (lock);
+#endif
+
+ return result;
+}
+
+static size_t
+internal_function
+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);
+#else
+ memcpy (full_fname, fname, fname_len);
+ memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile);
+#endif
+
+ fp = fopen (full_fname, "r");
+ if (fp == NULL)
+ {
+ FREE_BLOCKS (block_list);
+ return 0;
+ }
+
+ added = 0;
+ while (!feof (fp))
+ {
+ /* It is a reasonable approach to use a fix buffer here because
+ a) we are only interested in the first two fields
+ 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;
+
+ if (fgets (buf, sizeof buf, fp) == NULL)
+ /* EOF reached. */
+ break;
+
+ /* Possibly not the whole line fits into the buffer. Ignore
+ the rest of the line. */
+ if (strchr (buf, '\n') == NULL)
+ {
+ char altbuf[BUFSIZ];
+ do
+ if (fgets (altbuf, sizeof altbuf, fp) == NULL)
+ /* Make sure the inner loop will be left. The outer loop
+ will exit at the `feof' test. */
+ break;
+ while (strchr (altbuf, '\n') == NULL);
+ }
+
+ cp = buf;
+ /* Ignore leading white space. */
+ while (isspace (cp[0]))
+ ++cp;
+
+ /* A leading '#' signals a comment line. */
+ if (cp[0] != '\0' && cp[0] != '#')
+ {
+ alias = cp++;
+ while (cp[0] != '\0' && !isspace (cp[0]))
+ ++cp;
+ /* Terminate alias name. */
+ if (cp[0] != '\0')
+ *cp++ = '\0';
+
+ /* Now look for the beginning of the value. */
+ while (isspace (cp[0]))
+ ++cp;
+
+ if (cp[0] != '\0')
+ {
+ size_t alias_len;
+ size_t value_len;
+
+ value = cp++;
+ while (cp[0] != '\0' && !isspace (cp[0]))
+ ++cp;
+ /* Terminate value. */
+ if (cp[0] == '\n')
+ {
+ /* This has to be done to make the following test
+ for the end of line possible. We are looking for
+ the terminating '\n' which do not overwrite here. */
+ *cp++ = '\0';
+ *cp = '\n';
+ }
+ else if (cp[0] != '\0')
+ *cp++ = '\0';
+
+ if (nmap >= maxmap)
+ extend_alias_table ();
+
+ alias_len = strlen (alias) + 1;
+ value_len = strlen (value) + 1;
+
+ if (string_space_act + alias_len + value_len > string_space_max)
+ {
+ /* Increase size of memory pool. */
+ size_t new_size = (string_space_max
+ + (alias_len + value_len > 1024
+ ? alias_len + value_len : 1024));
+ char *new_pool = (char *) realloc (string_space, new_size);
+ if (new_pool == NULL)
+ {
+ FREE_BLOCKS (block_list);
+ return added;
+ }
+ string_space = new_pool;
+ string_space_max = new_size;
+ }
+
+ map[nmap].alias = memcpy (&string_space[string_space_act],
+ alias, alias_len);
+ string_space_act += alias_len;
+
+ map[nmap].value = memcpy (&string_space[string_space_act],
+ value, value_len);
+ string_space_act += value_len;
+
+ ++nmap;
+ ++added;
+ }
+ }
+ }
+
+ /* Should we test for ferror()? I think we have to silently ignore
+ errors. --drepper */
+ fclose (fp);
+
+ if (added > 0)
+ qsort (map, nmap, sizeof (struct alias_map),
+ (int (*) PARAMS ((const void *, const void *))) alias_compare);
+
+ FREE_BLOCKS (block_list);
+ return added;
+}
+
+static void
+extend_alias_table ()
+{
+ size_t new_size;
+ struct alias_map *new_map;
+
+ new_size = maxmap == 0 ? 100 : 2 * maxmap;
+ new_map = (struct alias_map *) realloc (map, (new_size
+ * sizeof (struct alias_map)));
+ if (new_map == NULL)
+ /* Simply don't extend: we don't have any more core. */
+ return;
+
+ map = new_map;
+ maxmap = new_size;
+}
+
+#ifdef _LIBC
+static void __attribute__ ((unused))
+free_mem (void)
+{
+ if (string_space != NULL)
+ free (string_space);
+ if (map != NULL)
+ free (map);
+}
+text_set_element (__libc_subfreeres, free_mem);
+#endif
+
+static int
+alias_compare (map1, map2)
+ const struct alias_map *map1;
+ const struct alias_map *map2;
+{
+#if defined _LIBC || defined HAVE_STRCASECMP
+ return strcasecmp (map1->alias, map2->alias);
+#else
+ const unsigned char *p1 = (const unsigned char *) map1->alias;
+ const unsigned char *p2 = (const unsigned char *) map2->alias;
+ unsigned char c1, c2;
+
+ if (p1 == p2)
+ return 0;
+
+ do
+ {
+ /* I know this seems to be odd but the tolower() function in
+ some systems libc cannot handle nonalpha characters. */
+ c1 = isupper (*p1) ? tolower (*p1) : *p1;
+ c2 = isupper (*p2) ? tolower (*p2) : *p2;
+ if (c1 == '\0')
+ break;
+ ++p1;
+ ++p2;
+ }
+ while (c1 == c2);
+
+ return c1 - c2;
+#endif
+}
+
+/* End of localealias.c */
+
+/* Begin of finddomain.c */
+
+/* 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. */
+
+#include <errno.h>
+
+#if defined STDC_HEADERS || defined _LIBC
+#else
+# ifdef HAVE_MALLOC_H
+# else
+void free ();
+# endif
+#endif
+
+#if defined HAVE_STRING_H || defined _LIBC
+#else
+# 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
+
+#if defined HAVE_UNISTD_H || defined _LIBC
+#endif
+
+#ifdef _LIBC
+# include <libintl.h>
+#else
+# include "gettext.h"
+#endif
+
+/* List of already loaded domains. */
+static struct loaded_l10nfile *_nl_loaded_domains;
+
+/* Return a data structure describing the message catalog described by
+ the DOMAINNAME and CATEGORY parameters with respect to the currently
+ established bindings. */
+static struct loaded_l10nfile *
+internal_function
+_nl_find_domain (dirname, locale, domainname)
+ const char *dirname;
+ char *locale;
+ const char *domainname;
+{
+ struct loaded_l10nfile *retval;
+ const char *language;
+ const char *modifier;
+ const char *territory;
+ const char *codeset;
+ const char *normalized_codeset;
+ const char *special;
+ const char *sponsor;
+ const char *revision;
+ const char *alias_value;
+ int mask;
+
+ /* LOCALE can consist of up to four recognized parts for the XPG syntax:
+
+ language[_territory[.codeset]][@modifier]
+
+ and six parts for the CEN syntax:
+
+ language[_territory][+audience][+special][,[sponsor][_revision]]
+
+ Beside the first part all of them are allowed to be missing. If
+ the full specified locale is not found, the less specific one are
+ looked for. The various parts will be stripped off according to
+ the following order:
+ (1) revision
+ (2) sponsor
+ (3) special
+ (4) codeset
+ (5) normalized codeset
+ (6) territory
+ (7) audience/modifier
+ */
+
+ /* If we have already tested for this locale entry there has to
+ be one data set in the list of loaded domains. */
+ retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname,
+ strlen (dirname) + 1, 0, locale, NULL, NULL,
+ NULL, NULL, NULL, NULL, NULL, domainname, 0);
+ if (retval != NULL)
+ {
+ /* We know something about this locale. */
+ int cnt;
+
+ if (retval->decided == 0)
+ _nl_load_domain (retval);
+
+ if (retval->data != NULL)
+ return retval;
+
+ for (cnt = 0; retval->successor[cnt] != NULL; ++cnt)
+ {
+ if (retval->successor[cnt]->decided == 0)
+ _nl_load_domain (retval->successor[cnt]);
+
+ if (retval->successor[cnt]->data != NULL)
+ break;
+ }
+ return cnt >= 0 ? retval : NULL;
+ /* NOTREACHED */
+ }
+
+ /* See whether the locale value is an alias. If yes its value
+ *overwrites* the alias name. No test for the original value is
+ done. */
+ alias_value = _nl_expand_alias (locale);
+ if (alias_value != NULL)
+ {
+#if defined _LIBC || defined HAVE_STRDUP
+ locale = strdup (alias_value);
+ if (locale == NULL)
+ return NULL;
+#else
+ size_t len = strlen (alias_value) + 1;
+ locale = (char *) malloc (len);
+ if (locale == NULL)
+ return NULL;
+
+ memcpy (locale, alias_value, len);
+#endif
+ }
+
+ /* Now we determine the single parts of the locale name. First
+ look for the language. Termination symbols are `_' and `@' if
+ we use XPG4 style, and `_', `+', and `,' if we use CEN syntax. */
+ mask = _nl_explode_name (locale, &language, &modifier, &territory,
+ &codeset, &normalized_codeset, &special,
+ &sponsor, &revision);
+
+ /* Create all possible locale entries which might be interested in
+ generalization. */
+ retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname,
+ strlen (dirname) + 1, mask, language, territory,
+ codeset, normalized_codeset, modifier, special,
+ sponsor, revision, domainname, 1);
+ if (retval == NULL)
+ /* This means we are out of core. */
+ return NULL;
+
+ if (retval->decided == 0)
+ _nl_load_domain (retval);
+ 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]);
+ if (retval->successor[cnt]->data != NULL)
+ break;
+ }
+ }
+
+ /* The room for an alias was dynamically allocated. Free it now. */
+ if (alias_value != NULL)
+ free (locale);
+
+ return retval;
+}
+
+#ifdef _LIBC
+static void __attribute__ ((unused))
+free_mem (void)
+{
+ struct loaded_l10nfile *runp = _nl_loaded_domains;
+
+ while (runp != NULL)
+ {
+ struct loaded_l10nfile *here = runp;
+ if (runp->data != NULL)
+ _nl_unload_domain ((struct loaded_domain *) runp->data);
+ runp = runp->next;
+ free (here);
+ }
+}
+
+text_set_element (__libc_subfreeres, free_mem);
+#endif
+
+/* End of finddomain.c */
+
+/* Begin of dcgettext.c */
+
+/* Implementation of the dcgettext(3) function.
+ Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. */
+
+#ifndef errno
+extern int errno;
+#endif
+#ifndef __set_errno
+# define __set_errno(val) errno = (val)
+#endif
+
+#if defined STDC_HEADERS || defined _LIBC
+#else
+char *getenv ();
+# ifdef HAVE_MALLOC_H
+# else
+void free ();
+# endif
+#endif
+
+#if defined HAVE_STRING_H || defined _LIBC
+# ifndef _GNU_SOURCE
+# define _GNU_SOURCE 1
+# endif
+#else
+#endif
+#if !HAVE_STRCHR && !defined _LIBC
+# ifndef strchr
+# define strchr index
+# endif
+#endif
+
+#if defined HAVE_UNISTD_H || defined _LIBC
+#endif
+
+#ifdef _LIBC
+#else
+#endif
+
+/* Interrupt of dcgettext.c */
+
+/* Begin of hash-string.h */
+
+/* Implements a string hashing function.
+ Copyright (C) 1995, 1997 Free Software Foundation, Inc. */
+
+#ifndef PARAMS
+# if __STDC__
+# define PARAMS(Args) Args
+# else
+# define PARAMS(Args) ()
+# endif
+#endif
+
+/* We assume to have `unsigned long int' value with at least 32 bits. */
+#define HASHWORDBITS 32
+
+/* 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 inline unsigned long
+hash_string (str_param)
+ const char *str_param;
+{
+ unsigned long int hval, g;
+ const char *str = str_param;
+
+ /* Compute the hash value for the given string. */
+ hval = 0;
+ while (*str != '\0')
+ {
+ hval <<= 4;
+ hval += (unsigned long) *str++;
+ g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4));
+ if (g != 0)
+ {
+ hval ^= g >> (HASHWORDBITS - 8);
+ hval ^= g;
+ }
+ }
+ return hval;
+}
+
+/* End of hash-string.h */
+
+/* Resume of dcgettext.c */
+
+#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__))
+#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". */
+static const char _nl_default_default_domain[] = "messages";
+
+/* Value used as the default domain for gettext(3). */
+static const char *_nl_current_default_domain = _nl_default_default_domain;
+
+/* Contains the default location of the message catalogs. */
+static const char _nl_default_dirname[] = LOCALEDIR;
+
+/* List with bindings of specific domains created by bindtextdomain()
+ calls. */
+static 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
+#else
+# define DCGETTEXT dcgettext__
+#endif
+
+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
+ locale. */
+char *
+DCGETTEXT (domainname, msgid, category)
+ const char *domainname;
+ 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 */
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library. */
+#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
+}
+
+/* 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
+
+/* End of dcgettext.c */
+
+/* Begin of bindtextdom.c */
+
+/* Implementation of the bindtextdomain(3) function
+ Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. */
+
+#if defined STDC_HEADERS || defined _LIBC
+#else
+# ifdef HAVE_MALLOC_H
+# else
+void free ();
+# endif
+#endif
+
+#if defined HAVE_STRING_H || defined _LIBC
+#else
+# ifndef memcpy
+# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
+# endif
+#endif
+
+#ifdef _LIBC
+#else
+#endif
+
+/* Contains the default location of the message catalogs. */
+static const char _nl_default_dirname[];
+
+/* List with bindings of specific domains. */
+static struct binding *_nl_domain_bindings;
+
+/* 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 BINDTEXTDOMAIN __bindtextdomain
+# ifndef strdup
+# define strdup(str) __strdup (str)
+# endif
+#else
+# define BINDTEXTDOMAIN bindtextdomain__
+#endif
+
+/* Specify that the DOMAINNAME message catalog will be found
+ in DIRNAME rather than in the system locale data base. */
+static char *
+BINDTEXTDOMAIN (domainname, dirname)
+ const char *domainname;
+ const char *dirname;
+{
+ struct binding *binding;
+
+ /* Some sanity checks. */
+ if (domainname == NULL || domainname[0] == '\0')
+ return NULL;
+
+ 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 (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)
+ {
+ char *new_dirname;
+
+ if (strcmp (dirname, _nl_default_dirname) == 0)
+ new_dirname = (char *) _nl_default_dirname;
+ else
+ {
+#if defined _LIBC || defined HAVE_STRDUP
+ new_dirname = strdup (dirname);
+ if (new_dirname == NULL)
+ return NULL;
+#else
+ size_t len = strlen (dirname) + 1;
+ new_dirname = (char *) malloc (len);
+ if (new_dirname == NULL)
+ return NULL;
+
+ memcpy (new_dirname, dirname, len);
+#endif
+ }
+
+ if (binding->dirname != _nl_default_dirname)
+ free (binding->dirname);
+
+ binding->dirname = new_dirname;
+ }
+ }
+ else
+ {
+ /* We have to create a new binding. */
+#if !defined _LIBC && !defined HAVE_STRDUP
+ size_t len;
+#endif
+ struct binding *new_binding =
+ (struct binding *) malloc (sizeof (*new_binding));
+
+ if (new_binding == NULL)
+ return NULL;
+
+#if defined _LIBC || defined HAVE_STRDUP
+ new_binding->domainname = strdup (domainname);
+ if (new_binding->domainname == NULL)
+ return NULL;
+#else
+ len = strlen (domainname) + 1;
+ new_binding->domainname = (char *) malloc (len);
+ if (new_binding->domainname == NULL)
+ return NULL;
+ memcpy (new_binding->domainname, domainname, len);
+#endif
+
+ if (strcmp (dirname, _nl_default_dirname) == 0)
+ new_binding->dirname = (char *) _nl_default_dirname;
+ else
+ {
+#if defined _LIBC || defined HAVE_STRDUP
+ new_binding->dirname = strdup (dirname);
+ if (new_binding->dirname == NULL)
+ return NULL;
+#else
+ len = strlen (dirname) + 1;
+ new_binding->dirname = (char *) malloc (len);
+ if (new_binding->dirname == NULL)
+ return NULL;
+ memcpy (new_binding->dirname, dirname, len);
+#endif
+ }
+
+ /* Now enqueue it. */
+ if (_nl_domain_bindings == NULL
+ || strcmp (domainname, _nl_domain_bindings->domainname) < 0)
+ {
+ new_binding->next = _nl_domain_bindings;
+ _nl_domain_bindings = new_binding;
+ }
+ else
+ {
+ binding = _nl_domain_bindings;
+ while (binding->next != NULL
+ && strcmp (domainname, binding->next->domainname) > 0)
+ binding = binding->next;
+
+ new_binding->next = binding->next;
+ binding->next = new_binding;
+ }
+
+ binding = new_binding;
+ }
+
+ return binding->dirname;
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library. */
+#endif
+
+/* End of bindtextdom.c */
+
+/* Begin of dgettext.c */
+
+/* Implementation of the dgettext(3) function
+ Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. */
+
+#if defined HAVE_LOCALE_H || defined _LIBC
+# include <locale.h>
+#endif
+
+#ifdef _LIBC
+#else
+#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 DGETTEXT __dgettext
+# define DCGETTEXT __dcgettext
+#else
+# define DGETTEXT dgettext__
+# define DCGETTEXT dcgettext__
+#endif
+
+/* Look up MSGID in the DOMAINNAME message catalog of the current
+ LC_MESSAGES locale. */
+static char *
+DGETTEXT (domainname, msgid)
+ const char *domainname;
+ const char *msgid;
+{
+ return DCGETTEXT (domainname, msgid, LC_MESSAGES);
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library. */
+#endif
+
+/* End of dgettext.c */
+
+/* Begin of gettext.c */
+
+/* Implementation of gettext(3) function.
+ Copyright (C) 1995, 1997 Free Software Foundation, Inc. */
+
+#ifdef _LIBC
+# define __need_NULL
+# include <stddef.h>
+#else
+# ifdef STDC_HEADERS
+# include <stdlib.h> /* Just for NULL. */
+# else
+# ifdef HAVE_STRING_H
+# else
+# define NULL ((void *) 0)
+# endif
+# endif
+#endif
+
+#ifdef _LIBC
+#else
+#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 GETTEXT __gettext
+# define DGETTEXT __dgettext
+#else
+# define GETTEXT gettext__
+# define DGETTEXT dgettext__
+#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). */
+static char *
+GETTEXT (msgid)
+ const char *msgid;
+{
+ return DGETTEXT (NULL, msgid);
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library. */
+#endif
+
+/* End of gettext.c */
+
+/* Begin of textdomain.c */
+
+/* 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. */
+
+#if defined STDC_HEADERS || defined _LIBC
+#endif
+
+#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC
+#else
+# ifndef memcpy
+# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num)
+# endif
+#endif
+
+#ifdef _LIBC
+#else
+#endif
+
+/* Name of the default text domain. */
+static const char _nl_default_default_domain[];
+
+/* Default text domain in which entries for gettext(3) are to be found. */
+static const char *_nl_current_default_domain;
+
+/* 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 TEXTDOMAIN __textdomain
+# ifndef strdup
+# define strdup(str) __strdup (str)
+# endif
+#else
+# define TEXTDOMAIN textdomain__
+#endif
+
+/* 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". */
+static char *
+TEXTDOMAIN (domainname)
+ const char *domainname;
+{
+ char *old;
+
+ /* A NULL pointer requests the current setting. */
+ if (domainname == NULL)
+ return (char *) _nl_current_default_domain;
+
+ old = (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;
+ 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);
+#else
+ size_t len = strlen (domainname) + 1;
+ char *cp = (char *) malloc (len);
+ if (cp != NULL)
+ memcpy (cp, domainname, len);
+ _nl_current_default_domain = cp;
+#endif
+ }
+
+ if (old != _nl_default_default_domain)
+ free (old);
+
+ return (char *) _nl_current_default_domain;
+}
+
+#ifdef _LIBC
+/* Alias for function name in GNU C Library. */
+#endif
+
+/* End of textdomain.c */
+
+/* Begin of intl-compat.c */
+
+/* intl-compat.c - Stub functions to call gettext functions from GNU gettext
+ Library.
+ Copyright (C) 1995 Software Foundation, Inc. */
+
+#undef gettext
+#undef dgettext
+#undef dcgettext
+#undef textdomain
+#undef bindtextdomain
+
+char *
+bindtextdomain (domainname, dirname)
+ const char *domainname;
+ const char *dirname;
+{
+ return bindtextdomain__ (domainname, dirname);
+}
+
+char *
+dcgettext (domainname, msgid, category)
+ const char *domainname;
+ const char *msgid;
+ int category;
+{
+ return dcgettext__ (domainname, msgid, category);
+}
+
+char *
+dgettext (domainname, msgid)
+ const char *domainname;
+ const char *msgid;
+{
+ return dgettext__ (domainname, msgid);
+}
+
+char *
+gettext (msgid)
+ const char *msgid;
+{
+ return gettext__ (msgid);
+}
+
+char *
+textdomain (domainname)
+ const char *domainname;
+{
+ return textdomain__ (domainname);
+}
+
+/* End of intl-compat.c */
diff --git a/gettext.h b/gettext.h
new file mode 100644
index 0000000..205c4e8
--- /dev/null
+++ b/gettext.h
@@ -0,0 +1,177 @@
+/* Begin of libgettext.h */
+
+/* Message catalogs for internationalization.
+ Copyright (C) 1995, 1996, 1997, 1998 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. */
+
+/* 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
+
+#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));
+/* static 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));
+/* static 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));
+/* static 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));
+/* static char *bindtextdomain__ PARAMS ((const char *__domainname,
+ const char *__dirname)); */
+
+#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
+
+#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)
+
+#endif
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+/* End of libgettext.h */
diff --git a/i18n/.cvsignore b/i18n/.cvsignore
new file mode 100644
index 0000000..48323b5
--- /dev/null
+++ b/i18n/.cvsignore
@@ -0,0 +1,3 @@
+*.mo *.pot
+
+Makefile.in Makefile
diff --git a/i18n/Makefile.am b/i18n/Makefile.am
new file mode 100644
index 0000000..b6a224d
--- /dev/null
+++ b/i18n/Makefile.am
@@ -0,0 +1,75 @@
+# Makefile for PO directories.
+# Fran�ois Pinard <pinard@iro.umontreal.ca>, 1998.
+
+AUTOMAKE_OPTIONS = gnits
+
+localedir = $(prefix)/share/locale
+
+ALL_POFILES = @ALL_POFILES@
+ALL_MOFILES = @ALL_MOFILES@
+MOFILES = @MOFILES@
+
+EXTRA_DIST = $(PACKAGE).pot $(ALL_POFILES) $(ALL_MOFILES)
+
+MSGFMT = msgfmt
+MSGMERGE = msgmerge
+XGETTEXT = xgettext
+
+SUFFIXES = .po .pox .mo
+
+.po.pox:
+ $(MAKE) $(PACKAGE).pot
+ $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
+
+.po.mo:
+ file=$(srcdir)/`echo $* | sed 's,.*/,,'`.mo \
+ && rm -f $$file && $(MSGFMT) -o $$file $<
+
+all: $(ALL_MOFILES)
+
+install-data-local: $(MOFILES)
+if USE_NLS
+ files='$(MOFILES)'; \
+ for file in $$files; do \
+ base=`basename $$file`; \
+ langdir=$(localedir)/`echo $$base | sed 's/\.mo$$//'`/LC_MESSAGES; \
+ $(mkinstalldirs) $$langdir; \
+ echo " $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$$langdir/$(PACKAGE).mo"; \
+ $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$$langdir/$(PACKAGE).mo; \
+ done
+endif
+
+uninstall-local:
+if USE_NLS
+ files='$(MOFILES)'; \
+ for file in $$files; do \
+ base=`basename $$file`; \
+ langdir=$(localedir)/`echo $$base | sed 's/\.mo$$//'`/LC_MESSAGES; \
+ rm -f $(DESTDIR)$$langdir/$(PACKAGE).mo; \
+ done
+endif
+
+MAINTAINER_CLEAN = $(PACKAGE).pot $(MOFILES)
+
+$(srcdir)/$(PACKAGE).pot: $(top_srcdir)/stamp-pot
+ $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
+ --add-comments --keyword=_ --keyword=N_ `cat $(top_srcdir)/stamp-pot`
+ test ! -f $(PACKAGE).po || ( rm -f $@ && mv $(PACKAGE).po $@ )
+
+update-po: Makefile
+ $(MAKE) $(PACKAGE).pot
+ files='$(ALL_MOFILES)'; \
+ for file in $$files; do \
+ base=`basename $$file`; \
+ lang=`echo $$base | sed 's/\.mo$$//'`; \
+ mv $(srcdir)/$$lang.po $(srcdir)/$$lang.old.po; \
+ echo "$$lang:"; \
+ cd $(srcdir) \
+ && if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
+ rm -f $$lang.old.po; \
+ else \
+ echo "msgmerge for $$file failed!"; \
+ rm -f $$lang.po; \
+ mv $$lang.old.po $$lang.po; \
+ fi; \
+ done
diff --git a/i18n/de.po b/i18n/de.po
new file mode 100644
index 0000000..eec2d95
--- /dev/null
+++ b/i18n/de.po
@@ -0,0 +1,1772 @@
+# This is the german message translation file for GNU-make 3.76.1
+# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+# Jochen Hein <jochen.hein@informatik.tu-clausthal.de>, 1996.
+# Alexander Mader <mader@wias-berlin.de>, 1997.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: make 3.76.1\n"
+"POT-Creation-Date: 1997-09-27 11:44+0200\n"
+"PO-Revision-Date: 1997-09-27 17:33 MET DST\n"
+"Last-Translator: Alexander Mader <mader@wias-berlin.de>\n"
+"Language-Team: German <de@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#: make-3.76.1/vpath.c:568
+#, c-format
+msgid ""
+"\n"
+"# %u `vpath' search paths.\n"
+msgstr "\n# %u �vpath� Suchpfade.\n"
+
+#: make-3.76.1/file.c:661
+#, c-format
+msgid ""
+"\n"
+"# %u files in %u hash buckets.\n"
+msgstr "\n# %u Dateien zu %u hash-Werten.\n"
+
+#: make-3.76.1/rule.c:574
+#, c-format
+msgid ""
+"\n"
+"# %u implicit rules, %u"
+msgstr "\n# %u implizite Regeln, %u"
+
+#: make-3.76.1/dir.c:848
+msgid ""
+"\n"
+"# Directories\n"
+msgstr "\n# Verzeichnisse\n"
+
+#: make-3.76.1/file.c:635
+msgid ""
+"\n"
+"# Files"
+msgstr "\n# Dateien"
+
+#: make-3.76.1/main.c:2359
+#, c-format
+msgid ""
+"\n"
+"# Finished Make data base on %s\n"
+msgstr "\n# �Make� Datenbank beendet zur Zeit %s.\n"
+
+#: make-3.76.1/vpath.c:577
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# Allgemeiner (Variable �VPATH�) Suchpfad:\n"
+"# "
+
+#: make-3.76.1/rule.c:556
+msgid ""
+"\n"
+"# Implicit Rules"
+msgstr "\n# Implizite Regeln"
+
+#: make-3.76.1/main.c:2350
+#, c-format
+msgid ""
+"\n"
+"# Make data base, printed on %s"
+msgstr "\n# �Make� Datenbank, ausgegeben zur Zeit %s."
+
+#: make-3.76.1/file.c:658
+msgid ""
+"\n"
+"# No files."
+msgstr "\n# Keine Dateien."
+
+#: make-3.76.1/vpath.c:571
+msgid ""
+"\n"
+"# No general (`VPATH' variable) search path."
+msgstr "\n# Kein allgemeiner (Variable �VPATH�) Suchpfad."
+
+#: make-3.76.1/rule.c:571
+msgid ""
+"\n"
+"# No implicit rules."
+msgstr "\n# Keine impliziten Regeln vorhanden."
+
+#: make-3.76.1/vpath.c:549
+msgid ""
+"\n"
+"# VPATH Search Paths\n"
+msgstr "\n# VPATH Suchpfade\n"
+
+#: make-3.76.1/variable.c:979
+msgid ""
+"\n"
+"# Variables\n"
+msgstr "\n# Variablen\n"
+
+#: make-3.76.1/job.c:1032 make-3.76.1/job.c:1629
+#, c-format
+msgid ""
+"\n"
+"Counted %d args in failed launch\n"
+msgstr "\n%d Argumente geh�rten zum fehlgeschlagenen Prozessstart.\n"
+
+#: make-3.76.1/main.c:492
+#, c-format
+msgid ""
+"\r\n"
+"Unhandled exception filter called from program %s\r\n"
+msgstr ""
+"\\r\n"
+"Das Programm %s rief einen Ausnahmefilter auf, \n"
+"der nicht bearbeitet wird.\\r\n"
+
+#: make-3.76.1/arscan.c:721
+#, c-format
+msgid " Date %s"
+msgstr " Datum %s"
+
+#: make-3.76.1/remake.c:603
+#, c-format
+msgid " Ignoring VPATH name `%s'.\n"
+msgstr " Ignoriere VPATH-Name �%s�.\n"
+
+#: make-3.76.1/arscan.c:722
+#, c-format
+msgid " uid = %d, gid = %d, mode = 0%o.\n"
+msgstr " Nutzer-ID = %d, Gruppen-ID = %d, Modus = 0%o.\n"
+
+#: make-3.76.1/commands.c:537
+msgid " (built-in):"
+msgstr " (eingebaut):"
+
+#: make-3.76.1/job.c:239
+msgid " (core dumped)"
+msgstr " (Speicherauszug erstellt)"
+
+#: make-3.76.1/read.c:318
+msgid " (don't care)"
+msgstr " (macht nichts)"
+
+#: make-3.76.1/commands.c:539
+#, c-format
+msgid " (from `%s', line %u):\n"
+msgstr " (aus �%s�, Zeile %u):\n"
+
+#: make-3.76.1/job.c:230
+msgid " (ignored)"
+msgstr " (ignoriert)"
+
+#: make-3.76.1/arscan.c:719
+msgid " (name might be truncated)"
+msgstr " (der Name ist m�glicherweise gek�rzt)"
+
+#: make-3.76.1/read.c:314
+msgid " (no default goal)"
+msgstr " (kein Standard-Ziel)"
+
+#: make-3.76.1/read.c:320
+msgid " (no ~ expansion)"
+msgstr " (keine ~-Erweiterung)"
+
+#: make-3.76.1/job.c:332 make-3.76.1/job.c:504 make-3.76.1/job.c:591
+#: make-3.76.1/job.c:1093
+msgid " (remote)"
+msgstr " (entfernt)"
+
+#: make-3.76.1/read.c:316
+msgid " (search path)"
+msgstr " (Suchpfad)"
+
+#: make-3.76.1/dir.c:902 make-3.76.1/dir.c:922
+msgid " files, "
+msgstr " Dateien, "
+
+#: make-3.76.1/dir.c:907
+msgid " impossibilities"
+msgstr " Unm�glichkeiten"
+
+#: make-3.76.1/dir.c:927
+#, c-format
+msgid " impossibilities in %u directories.\n"
+msgstr " Unm�glichkeiten in %u Verzeichnissen.\n"
+
+#: make-3.76.1/file.c:563 make-3.76.1/file.c:583
+msgid " not"
+msgstr " nicht"
+
+#: make-3.76.1/job.c:491
+msgid " remote"
+msgstr " entfernter"
+
+#: make-3.76.1/dir.c:911
+msgid " so far."
+msgstr " bisher."
+
+#: make-3.76.1/rule.c:583
+msgid " terminal."
+msgstr " Terminal."
+
+#: make-3.76.1/getopt1.c:134
+#, c-format
+msgid " with arg %s"
+msgstr "mit Argument %s"
+
+#: make-3.76.1/file.c:561
+msgid "# A default or MAKEFILES makefile."
+msgstr "# Ein Standardwert oder MAKEFILES �make�-Steuerdatei."
+
+#: make-3.76.1/file.c:570
+msgid "# Also makes:"
+msgstr "# Erzeugt au�erdem:"
+
+#: make-3.76.1/file.c:559
+msgid "# Command-line target."
+msgstr "# Kommandozeilen-Ziel (target)."
+
+#: make-3.76.1/file.c:587
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# Z.Zt. ausgef�hrte Kommandos (DAS IST EIN BUG)."
+
+#: make-3.76.1/file.c:590
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# Z.Zt. ausgef�hrte Kommandos f�r Abh�ngigkeiten (DAS IST EIN BUG)."
+
+#: make-3.76.1/file.c:606
+msgid "# Failed to be updated."
+msgstr "# Aktualisierung fehlgeschlagen."
+
+#: make-3.76.1/file.c:578
+msgid "# File does not exist."
+msgstr "# Die Datei existiert nicht."
+
+#: make-3.76.1/file.c:582
+#, c-format
+msgid "# File has%s been updated.\n"
+msgstr "# Datei wurde%s aktualisiert.\n"
+
+#: make-3.76.1/file.c:567
+msgid "# File is an intermediate dependency."
+msgstr "# Datei ist ein Zwischenschritt in den Abh�ngigkeiten."
+
+#: make-3.76.1/file.c:562
+#, c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# Implizite Regelsuche wurde%s durchgef�hrt.\n"
+
+#: make-3.76.1/file.c:565
+#, c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr "# Ersetzung f�r implizites/statisches Muster: �%s�\n"
+
+#: make-3.76.1/file.c:616
+msgid "# Invalid value in `command_state' member!"
+msgstr "# Ung�ltiger Wert im �command_state�-Eintrag!"
+
+#: make-3.76.1/file.c:609
+msgid "# Invalid value in `update_status' member!"
+msgstr "# Ung�ltiger Wert in �update_status�-Eintrag!"
+
+#: make-3.76.1/file.c:580
+#, c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# Zuletzt ge�ndert %.24s (%ld).\n"
+
+#: make-3.76.1/file.c:576
+msgid "# Modification time never checked."
+msgstr "# Zeit der letzten �nderung wurde nicht �berpr�ft."
+
+#: make-3.76.1/file.c:603
+msgid "# Needs to be updated (-q is set)."
+msgstr "# Eine Aktualisierung ist notwendig (-q ist angegeben)."
+
+#: make-3.76.1/file.c:557
+msgid "# Phony target (dependency of .PHONY)."
+msgstr "# �Phony�-Ziel (abh�ngig von .PHONY)."
+
+#: make-3.76.1/file.c:555
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr "# �Precious�-Datei (abh�ngig von .PRECIOUS)."
+
+#: make-3.76.1/file.c:599
+msgid "# Successfully updated."
+msgstr "# Erfolgreich aktualisiert."
+
+#: make-3.76.1/commands.c:534
+msgid "# commands to execute"
+msgstr "# Auszuf�hrende Kommandos"
+
+#: make-3.76.1/dir.c:894
+#, c-format
+msgid "# %s (device %d, inode %d): "
+msgstr "# %s (Ger�t %d, I-Knoten (inode) %d): "
+
+#: make-3.76.1/dir.c:889
+#, c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): "
+msgstr "# %s (Ger�t %d, I-Knoten (inode) [%d,%d,%d]): "
+
+#: make-3.76.1/dir.c:863
+#, c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr ""
+"# %s (Ger�t %d, I-Knoten (inode) [%d,%d,%d]): \n"
+"Konnte nicht ge�ffnet werden.\n"
+
+#: make-3.76.1/dir.c:868
+#, c-format
+msgid "# %s (device %ld, inode %ld): could not be opened.\n"
+msgstr ""
+"# %s (Ger�t %ld, I-Knoten (inode) %ld): \n"
+"Konnte nicht ge�ffnet werden.\n"
+
+#: make-3.76.1/dir.c:885
+#, c-format
+msgid "# %s (key %s, mtime %d): "
+msgstr "# %s (Schl�ssel (key) %s, letzte �nderung (mtime) %d): "
+
+#: make-3.76.1/dir.c:859
+#, c-format
+msgid "# %s (key %s, mtime %d): could not be opened.\n"
+msgstr ""
+"# %s ( Schl�ssel (key) %s, letzte �nderung (mtime) %d): \n"
+"Konnte nicht ge�ffnet werden.\n"
+
+#: make-3.76.1/dir.c:856
+#, c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr "# %s: Konnte den Status nicht feststellen.\n"
+
+#: make-3.76.1/variable.c:954
+#, c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr "# %u Variablen f�r %u hash-Werte.\n"
+
+#: make-3.76.1/vpath.c:566
+msgid "# No `vpath' search paths."
+msgstr "# Keine �vpath� Suchpfade."
+
+#: make-3.76.1/variable.c:951
+msgid "# No variables."
+msgstr "# Keine Variablen vorhanden."
+
+#: make-3.76.1/file.c:547
+msgid "# Not a target:"
+msgstr "# Dies ist kein Ziel:"
+
+#: make-3.76.1/file.c:663
+#, c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr ""
+"# durchschnittlich %.1f Dateien je hash-Wert,\n"
+"max. %u Dateien zu einem hash-Wert.\n"
+
+#: make-3.76.1/variable.c:957
+#, c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr "# Durchschnittlich %.1f Variablen pro Wert, max %u je Wert.\n"
+
+#: make-3.76.1/variable.c:964
+#, c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr "# Durchschnittlich %d.%d Variablen pro Wert, max %u je Wert.\n"
+
+#: make-3.76.1/job.c:1877
+#, c-format
+msgid "$SHELL changed (was `%s', now `%s')"
+msgstr "$SHELL gewechselt (war �%s�, ist �%s�)."
+
+#. All the other debugging messages go to stdout,
+#. but we write this one to stderr because it might be
+#. run in a child fork whose stdout is piped.
+#: make-3.76.1/misc.c:567
+#, c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr "%s Zugriff: Nutzer %d (real %d), Gruppe %d (real %d)\n"
+
+#: make-3.76.1/job.c:496
+#, c-format
+msgid "%s finished."
+msgstr "%s beendet."
+
+#: make-3.76.1/main.c:783
+#, c-format
+msgid "%s is suspending for 30 seconds..."
+msgstr "%s setzt f�r 30 Sekunden aus..."
+
+#: make-3.76.1/job.c:1673
+#, c-format
+msgid "%s: Command not found"
+msgstr "%s: Kommando nicht gefunden."
+
+#: make-3.76.1/main.c:483
+#, c-format
+msgid "%s: Interrupt/Exception caught "
+msgstr "%s: hat Unterbrechung/Ausnahme bemerkt "
+
+#: make-3.76.1/job.c:1702
+#, c-format
+msgid "%s: Shell program not found"
+msgstr "%s: Shell-Programm wurde nicht gefunden."
+
+#. 1003.2 specifies the format of this message.
+#: make-3.76.1/getopt.c:786
+#, c-format
+msgid "%s: illegal option -- %c\n"
+msgstr "%s: unerlaubte Option -- %c\n"
+
+#: make-3.76.1/getopt.c:789
+#, c-format
+msgid "%s: invalid option -- %c\n"
+msgstr "%s: ung�ltige Option -- %c.\n"
+
+#: make-3.76.1/getopt.c:710
+#, c-format
+msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgstr "%s: Option �%c%s� erlaubt kein Argument.\n"
+
+#: make-3.76.1/getopt.c:681
+#, c-format
+msgid "%s: option `%s' is ambiguous\n"
+msgstr "%s: Option �%s� ist mehrdeutig.\n"
+
+#: make-3.76.1/getopt.c:727 make-3.76.1/getopt.c:900
+#, c-format
+msgid "%s: option `%s' requires an argument\n"
+msgstr "%s: Option �%s� erfordert ein Argument.\n"
+
+#: make-3.76.1/getopt.c:705
+#, c-format
+msgid "%s: option `--%s' doesn't allow an argument\n"
+msgstr "%s: Option �--%s� erlaubt kein Argument.\n"
+
+#: make-3.76.1/getopt.c:884
+#, c-format
+msgid "%s: option `-W %s' doesn't allow an argument\n"
+msgstr "%s: Option �-W %s� erlaubt kein Argument.\n"
+
+#: make-3.76.1/getopt.c:866
+#, c-format
+msgid "%s: option `-W %s' is ambiguous\n"
+msgstr "%s: Option �-W %s� ist mehrdeutig.\n"
+
+#. 1003.2 specifies the format of this message.
+#: make-3.76.1/getopt.c:819 make-3.76.1/getopt.c:949
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: Option erfordert ein Argument -- %c.\n"
+
+#: make-3.76.1/signame.c:291
+#, c-format
+msgid "%s: unknown signal"
+msgstr "%s: unbekanntes Signal"
+
+#. +option or -option
+#: make-3.76.1/getopt.c:760
+#, c-format
+msgid "%s: unrecognized option `%c%s'\n"
+msgstr "%s: unerkannte Option �%c%s�\n"
+
+#. --option
+#: make-3.76.1/getopt.c:756
+#, c-format
+msgid "%s: unrecognized option `--%s'\n"
+msgstr "%s: unerkannte Option �--%s�.\n"
+
+#: make-3.76.1/main.c:2322
+#, c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make Version %s"
+
+#: make-3.76.1/remake.c:916
+#, c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%sKeine Regel, um �%s� zu erstellen%s"
+
+#: make-3.76.1/remake.c:918
+#, c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr ""
+"%sKeine Regel vorhanden, um das Target �%s�, \n"
+" ben�tigt von �%s�, zu erstellen%s"
+
+#: make-3.76.1/commands.c:482
+#, c-format
+msgid "*** Archive member `%s' may be bogus; not deleted"
+msgstr "*** Archiveintrag �%s� ist wohl falsch; nicht gl�scht."
+
+#: make-3.76.1/commands.c:387
+msgid "*** Break.\n"
+msgstr "*** Abbruch.\n"
+
+#: make-3.76.1/commands.c:496
+#, c-format
+msgid "*** Deleting file `%s'"
+msgstr "*** Datei �%s� wird gel�scht."
+
+#: make-3.76.1/file.c:389
+#, c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr "*** L�schen der Zwischendatei �%s�."
+
+#: make-3.76.1/job.c:305
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** Warte auf noch nicht beendete Prozesse...."
+
+#: make-3.76.1/main.c:1565
+msgid "*** Warning: Clock skew detected. Your build may be incomplete."
+msgstr ""
+"*** Warnung: Mit der Uhr stimmt etwas nicht. \n"
+" Die Bearbeitung k�nnte unvollst�ndig sein."
+
+#: make-3.76.1/remake.c:1102
+#, c-format
+msgid "*** Warning: File `%s' has modification time in the future"
+msgstr "*** Warnung: Datei �%s� hat �nderungszeit aus der Zukunft!"
+
+#: make-3.76.1/commands.c:479
+#, c-format
+msgid "*** [%s] Archive member `%s' may be bogus; not deleted"
+msgstr "*** [%s] Archiveintrag �%s� ist wohl falsch; nicht gel�scht."
+
+#: make-3.76.1/commands.c:494
+#, c-format
+msgid "*** [%s] Deleting file `%s'"
+msgstr "*** [%s] Datei �%s� wird gel�scht."
+
+#: make-3.76.1/job.c:234
+#, c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] Fehler %d"
+
+#: make-3.76.1/job.c:230
+#, c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] Fehler 0x%x%s"
+
+#: make-3.76.1/misc.c:212 make-3.76.1/misc.c:260
+msgid ". Stop.\n"
+msgstr ". Schluss.\n"
+
+#: make-3.76.1/getloadavg.c:1056
+#, c-format
+msgid "1-minute: %f "
+msgstr "1-Minuten-Schnitt: %f "
+
+#: make-3.76.1/getloadavg.c:1060
+#, c-format
+msgid "15-minute: %f "
+msgstr "15-Minuten-Schnitt: %f "
+
+#: make-3.76.1/getloadavg.c:1058
+#, c-format
+msgid "5-minute: %f "
+msgstr "5-Minuten-Schnitt: %f "
+
+#: make-3.76.1/remake.c:574
+#, c-format
+msgid "; using VPATH name `%s'"
+msgstr "; benutze VPATH-Name �%s�"
+
+#: make-3.76.1/getopt.c:1038 make-3.76.1/getopt1.c:174
+#, c-format
+msgid "?? getopt returned character code 0%o ??\n"
+msgstr "?? �getopt� lieferte Zeichencode 0%o ??\n"
+
+#: make-3.76.1/signame.c:126
+msgid "Aborted"
+msgstr "Abgebrochen (Aborted)"
+
+#: make-3.76.1/main.c:503
+#, c-format
+msgid "Access violation: %s operation at address %x\r\n"
+msgstr "Zugriffsversto�: %soperation an Adresse %x\\r\n"
+
+#: make-3.76.1/signame.c:153
+msgid "Alarm clock"
+msgstr "Wecksignal"
+
+#: make-3.76.1/main.c:266
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr ""
+"Erlaube N Jobs gleichzeitig; unbegrenzte Anzahl \n"
+"von Jobs ohne Argument."
+
+#: make-3.76.1/implicit.c:201
+#, c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "Vermeide Rekursion in den impliziten Regeln.%s%s\n"
+
+#: make-3.76.1/rule.c:587
+#, c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr "BUG: �num_pattern_rules� falsch! %u != %u"
+
+#: make-3.76.1/signame.c:147
+msgid "Bad system call"
+msgstr "Falscher Systemaufruf"
+
+#: make-3.76.1/signame.c:150
+msgid "Broken pipe"
+msgstr "Zerst�rte Pipe"
+
+#: make-3.76.1/signame.c:141
+msgid "Bus error"
+msgstr "Bus-Fehler"
+
+#: make-3.76.1/signame.c:188
+msgid "CPU time limit exceeded"
+msgstr "CPU-Zeitschranke �berschritten"
+
+#: make-3.76.1/main.c:239
+msgid "Change to DIRECTORY before doing anything"
+msgstr "Wechsle in das VERZEICHNIS bevor etwas anderes ausgef�hrt wird."
+
+#: make-3.76.1/misc.c:748
+msgid "Child"
+msgstr "Kindprozess"
+
+#: make-3.76.1/signame.c:167 make-3.76.1/signame.c:170
+msgid "Child exited"
+msgstr "Kindproze� beendet"
+
+#: make-3.76.1/remake.c:395 make-3.76.1/remake.c:796
+#, c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr "Zirkul�re Datei %s <- %s Abh�ngigkeit wird nicht verwendet."
+
+#: make-3.76.1/file.c:298
+#, c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr ""
+"Die Kommandos f�r �%s� werden ignoriert, \n"
+"die f�r �%s� werden bevorzugt."
+
+#: make-3.76.1/file.c:290
+#, c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr ""
+"Die Kommandos f�r die Datei �%s� wurden aufgrund \n"
+"der Suche nach impliziten Regeln gefunden,"
+
+#: make-3.76.1/remake.c:614
+#, c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "Die Kommandos von �%s� werden gerade ausgef�hrt.\n"
+
+#: make-3.76.1/file.c:284
+#, c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr ""
+"Die Kommandos wurden f�r die Datei �%s� angegeben \n"
+"an der Stelle %s:%u,"
+
+#: make-3.76.1/main.c:321
+msgid "Consider FILE to be infinitely new"
+msgstr "Betrachte die DATEI stets als neu."
+
+#: make-3.76.1/main.c:290
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "Betrachte DATEI als sehr alt und erzeuge sie nicht neu."
+
+#: make-3.76.1/remake.c:313
+#, c-format
+msgid "Considering target file `%s'.\n"
+msgstr "Betrachte Target-Datei �%s�.\n"
+
+#: make-3.76.1/signame.c:206
+msgid "Continued"
+msgstr "Fortgesetzt"
+
+#: make-3.76.1/main.c:1454
+msgid "Couldn't change back to original directory."
+msgstr "Konnte nicht in das urspr�ngliche Verzeichnis wechseln."
+
+#: make-3.76.1/function.c:434
+#, c-format
+msgid "CreatePipe() failed (e=%d)\n"
+msgstr "�CreatePipe()� schlug fehl (e=%d).\n"
+
+#: make-3.76.1/remote-cstms.c:94
+#, c-format
+msgid "Customs won't export: %s\n"
+msgstr "Customs wird nicht exportieren: %s\n"
+
+#: make-3.76.1/main.c:238 make-3.76.1/main.c:261
+msgid "DIRECTORY"
+msgstr "VERZEICHNIS"
+
+#: make-3.76.1/signame.c:231
+msgid "Danger signal"
+msgstr "Gefahrensignal"
+
+#: make-3.76.1/remake.c:545
+#, c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "Abh�ngigkeit �%s� existiert nicht.\n"
+
+#: make-3.76.1/remake.c:547
+#, c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr "Die Abh�ngigkeit �%s� ist %s als die abh�ngige Datei �%s�.\n"
+
+#: make-3.76.1/main.c:299
+msgid "Disable the built-in implicit rules"
+msgstr "Deaktivieren der eingebauten impliziten Regeln."
+
+#: make-3.76.1/main.c:1151
+msgid "Do not specify -j or --jobs if sh.exe is not available."
+msgstr ""
+"Wenn �sh.exe� nicht vorhanden ist, \n"
+"sollten Sie nicht �-j� oder �--jobs� angeben."
+
+#: make-3.76.1/main.c:287
+msgid "Don't actually run any commands; just print them"
+msgstr "Kommandos nur anzeigen, nicht ausf�hren."
+
+#: make-3.76.1/main.c:302
+msgid "Don't echo commands"
+msgstr "Gebe die Kommandos nicht aus."
+
+#: make-3.76.1/main.c:275 make-3.76.1/main.c:280
+msgid "Don't start multiple jobs unless load is below N"
+msgstr "Nur bei Belastung unterhalb N mehrere Prozesse starten."
+
+#: make-3.76.1/signame.c:132
+msgid "EMT trap"
+msgstr "EMT abfangen (EMT trap)"
+
+#: make-3.76.1/main.c:2413
+msgid "Entering"
+msgstr "Wechsel in das Verzeichnis"
+
+#: make-3.76.1/main.c:250
+msgid "Environment variables override makefiles"
+msgstr "Umgebungsvariablen �berschreiben �make�-Steuerdateien."
+
+#. Fill message buffer with a default message in
+#. * case FormatMessage fails
+#.
+#: make-3.76.1/w32/subproc/w32err.c:20
+#, c-format
+msgid "Error %ld"
+msgstr "Fehler %ld"
+
+#: make-3.76.1/getloadavg.c:1052
+msgid "Error getting load average"
+msgstr "Fehler beim Bestimmen der durchschnittlichen Last."
+
+#: make-3.76.1/vmsfunctions.c:23
+msgid "Error mallocing for FAB\n"
+msgstr "Fehler bei Speicherzuteilung (xmalloc) f�r �FAB�.\n"
+
+#: make-3.76.1/vmsfunctions.c:27
+msgid "Error mallocing for NAM\n"
+msgstr "Fehler bei Speicherzuteilung (xmalloc) f�r �NAM�.\n"
+
+#: make-3.76.1/vmsfunctions.c:69
+msgid "Error mallocing for direct\n"
+msgstr "Fehler bei Speicherzuteilung (xmalloc) f�r �direct�.\n"
+
+#: make-3.76.1/vmsfunctions.c:32
+msgid "Error mallocing for searchspec\n"
+msgstr "Fehler bei Speicherzuteilung (xmalloc) f�r �searchspec�.\n"
+
+#: make-3.76.1/job.c:1556
+#, c-format
+msgid "Error spawning, %d\n"
+msgstr "Fehler beim Starten eines Kindprozesses, %d.\n"
+
+#: make-3.76.1/main.c:497
+#, c-format
+msgid "ExceptionAddress = %x\r\n"
+msgstr "Ausnahmeadresse (ExceptionAddress) = %x\\r\n"
+
+#: make-3.76.1/main.c:493
+#, c-format
+msgid "ExceptionCode = %x\r\n"
+msgstr "Ausnahmekode (ExceptionCode) = %x\\r\n"
+
+#: make-3.76.1/main.c:495
+#, c-format
+msgid "ExceptionFlags = %x\r\n"
+msgstr "Ausnahmemerkmale (ExceptionFlags) = %x\\r\n"
+
+#: make-3.76.1/job.c:1525
+#, c-format
+msgid "Executing %s instead\n"
+msgstr "%s wird stattdessen ausgef�hrt.\n"
+
+#: make-3.76.1/read.c:1011 make-3.76.1/read.c:1167
+#, c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "�berfl�ssiger Text nach einer �%s�-Anweisung"
+
+#: make-3.76.1/read.c:926
+msgid "Extraneous text after `endef' directive"
+msgstr "�berfl�ssiger Text nach einer �endef�-Anweisung"
+
+#: make-3.76.1/main.c:252 make-3.76.1/main.c:289 make-3.76.1/main.c:320
+msgid "FILE"
+msgstr "DATEI"
+
+#. The update failed and this makefile was not
+#. from the MAKEFILES variable, so we care.
+#: make-3.76.1/main.c:1359
+#, c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "Konnte die �make�-Steuerdatei �%s� nicht neu erstellen."
+
+#: make-3.76.1/remake.c:621
+#, c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "Fehler beim Aktualisieren der Target-Datei �%s�.\n"
+
+#: make-3.76.1/remake.c:357
+#, c-format
+msgid "File `%s' does not exist.\n"
+msgstr "Die Datei �%s� existiert nicht.\n"
+
+#: make-3.76.1/remake.c:323
+#, c-format
+msgid "File `%s' was considered already.\n"
+msgstr "Die Datei �%s� wurde bereits betrachtet.\n"
+
+#: make-3.76.1/signame.c:191
+msgid "File size limit exceeded"
+msgstr "Dateigr��enschranke �berschritten"
+
+#: make-3.76.1/remake.c:477
+#, c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr "Fertig mit den Abh�ngigkeiten f�r die Target-Datei �%s�.\n"
+
+#: make-3.76.1/remake.c:336
+#, c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "Aktualisierung der Datei �%s� beendet.\n"
+
+#: make-3.76.1/signame.c:237
+msgid "Floating point co-processor not available"
+msgstr "Es ist kein Koprozessor f�r Flie�kommaoperationen vorhanden."
+
+#: make-3.76.1/signame.c:135
+msgid "Floating point exception"
+msgstr "Gleitkommafehler"
+
+#: make-3.76.1/remake.c:367 make-3.76.1/remake.c:764
+#, c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "Eine implizite Regel f�r �%s� gefunden.\n"
+
+#: make-3.76.1/implicit.c:405
+#, c-format
+msgid "Found dependency `%s' as VPATH `%s'\n"
+msgstr "Fand die Abh�ngigkeit �%s� als VPATH �%s�.\n"
+
+#: make-3.76.1/remake.c:496
+#, c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr "Die Arbeit an der Target-Datei �%s� wurde aufgegeben.\n"
+
+#: make-3.76.1/job.c:274
+#, c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr "Erhielt ein SIGCHLD; %d unbeendete Kindprozesse.\n"
+
+#: make-3.76.1/signame.c:109
+msgid "Hangup"
+msgstr "Aufgelegt"
+
+#: make-3.76.1/signame.c:216 make-3.76.1/signame.c:225
+msgid "I/O possible"
+msgstr "I/O m�glich"
+
+#: make-3.76.1/signame.c:129
+msgid "IOT trap"
+msgstr "IOT abfangen (IOT trap)"
+
+#: make-3.76.1/main.c:259
+msgid "Ignore errors from commands"
+msgstr "Ignoriere Fehler in den Kommandos."
+
+#: make-3.76.1/main.c:236
+msgid "Ignored for compatibility"
+msgstr "Aus Kompatibilit�tsgr�nden ignoriert."
+
+#: make-3.76.1/signame.c:118
+msgid "Illegal Instruction"
+msgstr "Illegaler Befehl"
+
+#. An included makefile. We don't need
+#. to die, but we do want to complain.
+#: make-3.76.1/main.c:1374
+#, c-format
+msgid "Included makefile `%s' was not found."
+msgstr "Die eingebundene �make�-Steuerdatei �%s� wurde nicht gefunden."
+
+#: make-3.76.1/signame.c:234
+msgid "Information request"
+msgstr "Informationsanforderung"
+
+#: make-3.76.1/misc.c:587
+msgid "Initialized"
+msgstr "Initialisiert"
+
+#: make-3.76.1/signame.c:112
+msgid "Interrupt"
+msgstr "Abgebrochen (Interrupt)"
+
+#: make-3.76.1/remote-cstms.c:185
+#, c-format
+msgid "Job exported to %s ID %u\n"
+msgstr "Job nach %s ID %u exportiert\n"
+
+#: make-3.76.1/main.c:270
+msgid "Keep going when some targets can't be made"
+msgstr "Weiterlaufen, auch wenn einige Targets nicht erzeugt werden konnten."
+
+#: make-3.76.1/signame.c:138
+msgid "Killed"
+msgstr "Abgebrochen (Killed)"
+
+#: make-3.76.1/main.c:2413
+msgid "Leaving"
+msgstr "Verlassen des Verzeichnisses"
+
+#: make-3.76.1/job.c:330
+#, c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr "Aktiver Kind-Proze� 0x%08lx PID %d%s\n"
+
+#: make-3.76.1/implicit.c:421
+#, c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr "Suche nach einer Regel, in der als %s die Datei �%s� vorkommt.\n"
+
+#: make-3.76.1/implicit.c:38
+#, c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "Suche nach einer impliziten Regel f�r �%s�.\n"
+
+#: make-3.76.1/implicit.c:53
+#, c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr "Suche nach einer impliziten Regel f�r Archiveintr�ge f�r �%s�.\n"
+
+#: make-3.76.1/main.c:1287
+#, c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr ""
+"�make�-Steuerdatei �%s� k�nnte eine Schleife enthalten; \n"
+"es wird nicht neu erzeugt.\n"
+
+#. A normal makefile. We must die later.
+#: make-3.76.1/main.c:1379
+#, c-format
+msgid "Makefile `%s' was not found"
+msgstr "Die �make�-Steuerdatei �%s� wurde nicht gefunden"
+
+#: make-3.76.1/arscan.c:718
+#, c-format
+msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n"
+msgstr ""
+"Eintrag �%s� %s: \n"
+"%ld bytes an Position %ld (%ld).\n"
+
+#: make-3.76.1/remake.c:594
+#, c-format
+msgid "Must remake target `%s'.\n"
+msgstr "Das Target �%s� mu� neu erzeugt werden.\n"
+
+#: make-3.76.1/amiga.c:48
+msgid "MyExecute: Cannot allocate space for calling a command"
+msgstr "MyExecute: Kann keinen Speicher f�r Kommandoaufruf belegen."
+
+#: make-3.76.1/dir.c:899 make-3.76.1/dir.c:919
+msgid "No"
+msgstr "Keine"
+
+#: make-3.76.1/remake.c:564
+#, c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr "Keine Kommandos f�r �%s� und keine Abh�ngigkeit wurde ver�ndert.\n"
+
+#: make-3.76.1/remake.c:369 make-3.76.1/remake.c:766
+#, c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "Keine implizite Regel f�r �%s� gefunden.\n"
+
+#: make-3.76.1/remake.c:572
+#, c-format
+msgid "No need to remake target `%s'"
+msgstr "Es ist nicht notwendig, das Target �%s� neu zu erzeugen."
+
+#: make-3.76.1/main.c:1560
+msgid "No targets"
+msgstr "Keine Targets."
+
+#: make-3.76.1/main.c:1558
+msgid "No targets specified and no makefile found"
+msgstr "Keine Targets angegeben und keine �make�-Steuerdatei gefunden."
+
+#: make-3.76.1/remake.c:215
+#, c-format
+msgid "Nothing to be done for `%s'."
+msgstr "F�r das Target �%s� gibt es nichts zu tun."
+
+#: make-3.76.1/main.c:1866
+msgid "Options:\n"
+msgstr "Optionen:\n"
+
+#: make-3.76.1/signame.c:173
+msgid "Power failure"
+msgstr "Stromausfall"
+
+#: make-3.76.1/main.c:242
+msgid "Print lots of debugging information"
+msgstr "Gebe viele Informationen zur Fehlersuche aus."
+
+#: make-3.76.1/main.c:293
+msgid "Print make's internal database"
+msgstr "Gib die interne Datenbank von �make� aus."
+
+#: make-3.76.1/main.c:315
+msgid "Print the current directory"
+msgstr "Gib das aktuelle Verzeichnis aus."
+
+#: make-3.76.1/main.c:312
+msgid "Print the version number of make and exit"
+msgstr "Gib die Versionsnummer von �make� aus und beende."
+
+#: make-3.76.1/main.c:256
+msgid "Print this message and exit"
+msgstr "Gib diese Nachricht aus und beende."
+
+#: make-3.76.1/signame.c:197
+msgid "Profiling timer expired"
+msgstr "Profiling Timer erloschen"
+
+#: make-3.76.1/job.c:1091
+#, c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr "Nehme Kindproze� 0x%08lx PID %05d%s in die Kette auf.\n"
+
+#: make-3.76.1/signame.c:115
+msgid "Quit"
+msgstr "Quit"
+
+#: make-3.76.1/main.c:1488
+msgid "Re-executing:"
+msgstr "Erneute Ausf�hrung:"
+
+#: make-3.76.1/main.c:253
+msgid "Read FILE as a makefile"
+msgstr "Lese die Datei DATEI als �make�-Steuerdatei."
+
+#: make-3.76.1/read.c:312
+#, c-format
+msgid "Reading makefile `%s'"
+msgstr "Lese �make�-Steuerdatei �%s�"
+
+#: make-3.76.1/read.c:138
+msgid "Reading makefiles..."
+msgstr "Lese �make�-Steuerdateien ..."
+
+#: make-3.76.1/job.c:501
+#, c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr "Sammle %s Kindproze� 0x%08lx PID %d%s\n"
+
+#: make-3.76.1/remake.c:319
+#, c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr ""
+"Versuchte gerade die Datei �%s� zu aktualisieren, \n"
+"dies schlug aber fehl.\n"
+
+#: make-3.76.1/expand.c:92 make-3.76.1/expand.c:97
+#, c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "Rekursive Variable �%s� referenziert sich (schlie�lich) selbst."
+
+#. If this dependency has already been ruled
+#. "impossible", then the rule fails and don't
+#. bother trying it on the second pass either
+#. since we know that will fail too.
+#: make-3.76.1/implicit.c:376
+#, c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr "Unm�gliche %s Abh�ngigkeit �%s� abgelehnt.\n"
+
+#: make-3.76.1/job.c:589
+#, c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr "Entferne Kindproze� 0x%08lx PID %d%s aus der Kette.\n"
+
+#: make-3.76.1/main.c:1152
+msgid "Resetting make for single job mode."
+msgstr "�make� wird so umgestellt, dass nur ein Job laufen kann."
+
+#: make-3.76.1/signame.c:228
+msgid "Resource lost"
+msgstr "Ressource verloren gegangen"
+
+#: make-3.76.1/main.c:296
+msgid "Run no commands; exit status says if up to date"
+msgstr ""
+"Keine Kommandos ausf�hren; der Exit-Status gibt an, ob die Dateien\n"
+"aktuell sind."
+
+#: make-3.76.1/main.c:262
+msgid "Search DIRECTORY for included makefiles"
+msgstr "Durchsuche das VERZEICHNIS nach eingebundenen �make�-Steuerdateien."
+
+#: make-3.76.1/signame.c:144
+msgid "Segmentation fault"
+msgstr "Adressierungsdefekt"
+
+#: make-3.76.1/remake.c:333
+#, c-format
+msgid "Still updating file `%s'.\n"
+msgstr "Die Datei �%s� wird immer noch aktualisiert.\n"
+
+#: make-3.76.1/signame.c:176
+msgid "Stopped"
+msgstr "Angehalten"
+
+#: make-3.76.1/signame.c:185
+msgid "Stopped (signal)"
+msgstr "Angehalten (signal)"
+
+#: make-3.76.1/signame.c:179
+msgid "Stopped (tty input)"
+msgstr "Angehalten (tty input)"
+
+#: make-3.76.1/signame.c:182
+msgid "Stopped (tty output)"
+msgstr "Angehalten (tty output)"
+
+#: make-3.76.1/remake.c:624
+#, c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "Die Target-Datei �%s� wurde erfolgreich aktualisiert.\n"
+
+#: make-3.76.1/main.c:246
+msgid "Suspend process to allow a debugger to attach"
+msgstr "Setze Prozess aus, um das Einklinken eines Debuggers zu erm�glichen."
+
+#: make-3.76.1/remake.c:559
+#, c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr ""
+"Das Target �%s� hat einen doppelten Doppelpunkt \n"
+"und keine Abh�ngigkeiten.\n"
+
+#: make-3.76.1/remake.c:500
+#, c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "Das Target �%s� wurde wegen Fehlern nicht aktualisiert."
+
+#: make-3.76.1/remake.c:627
+#, c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr "Target �%s� muss bei -q aktualisiert werden.\n"
+
+#: make-3.76.1/signame.c:156
+msgid "Terminated"
+msgstr "Abgebrochen (Terminated)"
+
+#: make-3.76.1/remake.c:483
+#, c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr "Die Abh�ngigkeiten von �%s� werden festgestellt.\n"
+
+#: make-3.76.1/main.c:309
+msgid "Touch targets instead of remaking them"
+msgstr ""
+"Die Targets werden nur als aktualisiert markiert,\n"
+"nicht tats�chlich erneuert."
+
+#: make-3.76.1/signame.c:121
+msgid "Trace/breakpoint trap"
+msgstr "Verfolgen/anhalten abfangen (Trace/breakpoint trap)"
+
+#: make-3.76.1/implicit.c:384
+#, c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr "Versuche %s Abh�ngigkeit �%s�.\n"
+
+#: make-3.76.1/implicit.c:337
+#, c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr "Versuche Muster-Regel mit Ersetzung �%.*s�.\n"
+
+#: make-3.76.1/main.c:318
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "Schalte -w aus, selbst wenn es implizit eingeschaltet wurde."
+
+#: make-3.76.1/main.c:306
+msgid "Turns off -k"
+msgstr "Schaltet -k ab."
+
+#: make-3.76.1/misc.c:282
+#, c-format
+msgid "Unknown error %d"
+msgstr "Unbekannter Fehler %d."
+
+#: make-3.76.1/misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "Unbekannter Fehler 12345678901234567890"
+
+#: make-3.76.1/job.c:491
+#, c-format
+msgid "Unknown%s job %d"
+msgstr "Unbekannter%s Job %d"
+
+#: make-3.76.1/main.c:1532
+msgid "Updating goal targets...."
+msgstr "Aktualisieren der Targets...."
+
+#: make-3.76.1/main.c:1262
+msgid "Updating makefiles...."
+msgstr "Aktualisiere �make�-Steuerdateien...."
+
+#: make-3.76.1/signame.c:209
+msgid "Urgent I/O condition"
+msgstr "Dringende I/O-Bedingung"
+
+#: make-3.76.1/main.c:1864
+#, c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "Syntax: %s [Optionen] [Target] ...\n"
+
+#: make-3.76.1/misc.c:666
+msgid "User"
+msgstr "Nutzer"
+
+#: make-3.76.1/signame.c:159
+msgid "User defined signal 1"
+msgstr "Nutzersignal 1"
+
+#: make-3.76.1/signame.c:162
+msgid "User defined signal 2"
+msgstr "Nutzersignal 2"
+
+#: make-3.76.1/remake.c:375 make-3.76.1/remake.c:772
+#, c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "Verwende die Standard-Kommandos f�r �%s�.\n"
+
+#: make-3.76.1/signame.c:194
+msgid "Virtual timer expired"
+msgstr "Virtueller Timer erloschen"
+
+#: make-3.76.1/main.c:324
+msgid "Warn when an undefined variable is referenced"
+msgstr ""
+"Gib eine Warnung aus, wenn eine undefinierte Variable referenziert wird."
+
+#: make-3.76.1/signame.c:203
+msgid "Window changed"
+msgstr "Fenster hat sich ver�ndert"
+
+#: make-3.76.1/job.c:233
+#, c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] Fehler %d (ignoriert)"
+
+#: make-3.76.1/remake.c:216
+#, c-format
+msgid "`%s' is up to date."
+msgstr "�%s� ist bereits aktualisiert."
+
+#: make-3.76.1/variable.c:880
+msgid "`override' directive"
+msgstr "�override�-Anweisung"
+
+#: make-3.76.1/main.c:2432
+msgid "an unknown directory"
+msgstr "ein unbekanntes Verzeichnis"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:971
+#, c-format
+msgid "arg with white space or doublequotes: %s\n"
+msgstr "Argument mit Leerzeichen oder Anf�hrungszeichen: %s\n"
+
+#: make-3.76.1/ar.c:49
+#, c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "Versuch, eine nicht unterst�tzte Funktionalit�t zu verwenden: �%s�."
+
+#: make-3.76.1/function.c:756 make-3.76.1/variable.c:883
+msgid "automatic"
+msgstr "automatisch"
+
+#: make-3.76.1/file.c:294
+#, c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr ""
+"aber �%s� wird jetzt als dieselbe Datei \n"
+"wie �%s� betrachtet."
+
+#: make-3.76.1/file.c:324
+#, c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr ""
+"�%s� mit doppeltem Doppelpunkt kann nicht in \n"
+"�%s� mit einfachem Doppelpunkt ge�ndert werden."
+
+#: make-3.76.1/file.c:319
+#, c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr ""
+"�%s� mit einfachem Doppelpunkt kann nicht in \n"
+"�%s� mit doppeltem Doppelpunkt ge�ndert werden."
+
+#: make-3.76.1/job.c:1316
+msgid "cannot enforce load limit: "
+msgstr "Lasteinschr�nkung kann nicht erzwungen werden: "
+
+#. An errno value of zero means getloadavg is just unsupported.
+#: make-3.76.1/job.c:1314
+msgid "cannot enforce load limits on this operating system"
+msgstr ""
+"Auf diesem Betriebssystem kann die Einhaltung\n"
+"der Lastbeschr�nkung nicht erzwungen werden."
+
+#: make-3.76.1/function.c:750 make-3.76.1/variable.c:877
+msgid "command line"
+msgstr "Kommandozeile"
+
+#: make-3.76.1/read.c:700
+msgid "commands commence before first target"
+msgstr "Kommandos beginnen vor dem ersten Target."
+
+#: make-3.76.1/function.c:429
+#, c-format
+msgid "create_child_process: DuplicateHandle(Err) failed (e=%d)\n"
+msgstr "�create_child_process�: �DuplicateHandle(Err)� schlug fehl (e=%d).\n"
+
+#: make-3.76.1/function.c:419
+#, c-format
+msgid "create_child_process: DuplicateHandle(In) failed (e=%d)\n"
+msgstr "�create_child_process�: �DuplicateHandle(In)� schlug fehl (e=%d).\n"
+
+#: make-3.76.1/getopt.c:1017 make-3.76.1/getopt1.c:149
+msgid "digits occur in two different argv-elements.\n"
+msgstr ""
+"Zahlen erscheinen in zwei verschiedenen \n"
+"Eintr�gen des �argv�-Vektors.\n"
+
+#: make-3.76.1/main.c:2434
+#, c-format
+msgid "directory `%s'\n"
+msgstr "Verzeichnis �%s�\n"
+
+#: make-3.76.1/main.c:785
+msgid "done sleep(30). Continuing.\n"
+msgstr "�sleep(30)� ist abgeschlossen. Es geht weiter.\n"
+
+#: make-3.76.1/read.c:528 make-3.76.1/read.c:550
+msgid "empty `override' directive"
+msgstr "Leere �override� Anweisung."
+
+#: make-3.76.1/w32/subproc/sub_proc.c:924
+#, c-format
+msgid "empty string arg: %s\n"
+msgstr "Argument ist leere Zeichenkette: %s.\n"
+
+#: make-3.76.1/main.c:417
+msgid "empty string invalid as file name"
+msgstr "Eine leere Zeichenkette ist als Dateiname ung�ltig."
+
+#: make-3.76.1/variable.c:705 make-3.76.1/variable.c:707
+msgid "empty variable name"
+msgstr "Leerer Variablenname"
+
+#: make-3.76.1/function.c:741 make-3.76.1/variable.c:868
+msgid "environment"
+msgstr "Umgebung"
+
+#: make-3.76.1/function.c:747
+msgid "environment override"
+msgstr "Umgebung �berschrieben"
+
+#: make-3.76.1/variable.c:874
+msgid "environment under -e"
+msgstr "Umgebung per -e"
+
+#: make-3.76.1/job.c:1605
+msgid "execve: "
+msgstr "�execve�: "
+
+#: make-3.76.1/job.c:1704 make-3.76.1/job.c:1709
+msgid "execvp: "
+msgstr "�execvp�: "
+
+#: make-3.76.1/function.c:439
+msgid "expand_function: process_init_fd() failed\n"
+msgstr "�expand_function�: �process_init_fd()� schlug fehl.\n"
+
+#: make-3.76.1/function.c:449
+#, c-format
+msgid "expand_function: unable to launch process (e=%d)\n"
+msgstr "�expand_function�: Der Prozess kann nicht gestartet werden (e=%d).\n"
+
+#: make-3.76.1/remote-cstms.c:138
+msgid "exporting: "
+msgstr "Export: "
+
+#: make-3.76.1/remote-cstms.c:171
+#, c-format
+msgid "exporting: %s"
+msgstr "Export: %s"
+
+#: make-3.76.1/remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr "Export: Konnte R�ckverbindung nicht herstellen."
+
+#: make-3.76.1/read.c:1015
+#, c-format
+msgid "extraneous `%s'"
+msgstr "�berfl�ssiges �%s�"
+
+#: make-3.76.1/read.c:502
+msgid "extraneous `endef'"
+msgstr "�berfl�ssiges �endef�."
+
+#: make-3.76.1/main.c:1039
+msgid "fopen (temporary file)"
+msgstr "fopen (tempor�re Datei)"
+
+#: make-3.76.1/main.c:1045
+msgid "fwrite (temporary file)"
+msgstr "fwrite (tempor�re Datei)"
+
+#: make-3.76.1/main.c:689 make-3.76.1/main.c:1000
+msgid "getcwd: "
+msgstr "�getcwd�: "
+
+#: make-3.76.1/main.c:691 make-3.76.1/main.c:1002
+#, c-format
+msgid "getwd: %s"
+msgstr "�getwd�: %s"
+
+#: make-3.76.1/implicit.c:377 make-3.76.1/implicit.c:385
+msgid "implicit"
+msgstr "implizite"
+
+#: make-3.76.1/implicit.c:422
+msgid "intermediate"
+msgstr "Zwischenstufe"
+
+#: make-3.76.1/job.c:1419
+#, c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "Interner Fehler: �%s� command_state %d in child_handler."
+
+#: make-3.76.1/read.c:494
+msgid "invalid syntax in conditional"
+msgstr "Ung�ltige Syntax in der Bedingung."
+
+#: make-3.76.1/arscan.c:154
+#, c-format
+msgid "lbr$ini_control failed with status = %d"
+msgstr "�lbr$ini_control� schlug mit Status = %d fehl."
+
+#: make-3.76.1/arscan.c:72
+#, c-format
+msgid "lbr$set_module failed to extract module info, status = %d"
+msgstr "�lbr$set_module� konnte keine Modulinformation auslesen; Status = %d."
+
+#: make-3.76.1/job.c:502
+msgid "losing"
+msgstr "erfolglosen"
+
+#: make-3.76.1/job.c:1654
+#, c-format
+msgid "make reaped child pid %d, still waiting for pid %d\n"
+msgstr ""
+"�make� registrierte die Beendigung des Kindprozesses mit ID %d,\n"
+"wartet jedoch noch auf den Prozess mit ID %d.\n"
+
+#. No `endef'!!
+#: make-3.76.1/read.c:955
+msgid "missing `endef', unterminated `define'"
+msgstr "Fehlendes �endef�, nicht abgeschlossenes �define�"
+
+#: make-3.76.1/read.c:864
+msgid "missing `endif'"
+msgstr "Fehlendes �endif�"
+
+#: make-3.76.1/read.c:744
+msgid "missing rule before commands"
+msgstr "Es fehlt eine Regel vor den Kommandos."
+
+#: make-3.76.1/read.c:763
+msgid "missing separator"
+msgstr "Fehlendes Trennzeichen."
+
+#: make-3.76.1/read.c:817
+msgid "missing target pattern"
+msgstr "Es fehlt ein Target-Muster"
+
+#: make-3.76.1/read.c:1280
+msgid "mixed implicit and normal rules"
+msgstr "Implizite und normale Regel vermischt."
+
+#: make-3.76.1/read.c:1277
+msgid "mixed implicit and static pattern rules"
+msgstr "Implizite und statische Muster-Regel vermischt."
+
+#: make-3.76.1/read.c:819
+msgid "multiple target patterns"
+msgstr "Mehrfache Target-Muster."
+
+#: make-3.76.1/vmsfunctions.c:227
+msgid "never"
+msgstr "niemals"
+
+#: make-3.76.1/remake.c:548
+msgid "newer"
+msgstr "j�nger"
+
+#: make-3.76.1/dir.c:904 make-3.76.1/dir.c:924
+msgid "no"
+msgstr "keine"
+
+#: make-3.76.1/read.c:634
+#, c-format
+msgid "no file name for `%sinclude'"
+msgstr "Kein Dateiname f�r �%sinclude�."
+
+#: make-3.76.1/function.c:1175 make-3.76.1/function.c:1177
+msgid "non-numeric first argument to `word' function"
+msgstr "Nicht-numerisches erstes Argument zur �word�-Funktion."
+
+#: make-3.76.1/function.c:1242 make-3.76.1/function.c:1244
+msgid "non-numeric first argument to `wordlist' function"
+msgstr "Nicht-numerisches erstes Argument f�r die �wordlist�-Funktion."
+
+#: make-3.76.1/function.c:1271 make-3.76.1/function.c:1273
+msgid "non-numeric second argument to `wordlist' function"
+msgstr "Nicht-numerisches zweites Argument zur �wordlist�-Funktion."
+
+#: make-3.76.1/getopt.c:1044 make-3.76.1/getopt1.c:180
+msgid "non-option ARGV-elements: "
+msgstr "Eintr�ge im �argv�-Vektor, die nicht Option sind: "
+
+#: make-3.76.1/remake.c:548
+msgid "older"
+msgstr "�lter"
+
+#: make-3.76.1/read.c:1020
+msgid "only one `else' per conditional"
+msgstr "Es ist nur ein �else� je Verzweigung erlaubt."
+
+#: make-3.76.1/getopt.c:1019 make-3.76.1/getopt1.c:151
+#, c-format
+msgid "option %c\n"
+msgstr "Option %c\n"
+
+#: make-3.76.1/getopt1.c:132
+#, c-format
+msgid "option %s"
+msgstr "Option %s"
+
+#: make-3.76.1/getopt.c:1023 make-3.76.1/getopt1.c:155
+msgid "option a\n"
+msgstr "Option a\n"
+
+#: make-3.76.1/getopt.c:1027 make-3.76.1/getopt1.c:159
+msgid "option b\n"
+msgstr "Option b\n"
+
+#: make-3.76.1/getopt.c:1031 make-3.76.1/getopt1.c:163
+#, c-format
+msgid "option c with value `%s'\n"
+msgstr "Option c mit Wert `%s'\n"
+
+#: make-3.76.1/getopt1.c:167
+#, c-format
+msgid "option d with value `%s'\n"
+msgstr "Option d mit Wert �%s�\n"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:918
+#, c-format
+msgid "original arg: %s\n"
+msgstr "Urspr�ngliches Argument: %s\n"
+
+#: make-3.76.1/function.c:753 make-3.76.1/read.c:524
+msgid "override"
+msgstr "�berschreiben"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:976
+#, c-format
+msgid "plain arg: %s\n"
+msgstr "Pures Argument: %s\n"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:520
+#, c-format
+msgid "process_begin: CreateProcess(%s, %s, ...) failed.\n"
+msgstr "�process_begin�: �CreateProcess(%s, %s, ...)� schlug fehl.\n"
+
+#: make-3.76.1/job.c:1028 make-3.76.1/job.c:1625
+#, c-format
+msgid "process_easy() failed failed to launch process (e=%d)\n"
+msgstr "�process_easy()� konnte den Prozess nicht starten (e=%d).\n"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:1111
+#, c-format
+msgid "process_easy: DuplicateHandle(Err) failed (e=%d)\n"
+msgstr "�process_easy�: �DuplicateHandle(Err)� schlug fehl (e=%d).\n"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:1087
+#, c-format
+msgid "process_easy: DuplicateHandle(In) failed (e=%d)\n"
+msgstr "�process_easy�: �DuplicateHandle(In)� schlug fehl (e=%d).\n"
+
+#: make-3.76.1/w32/subproc/sub_proc.c:1099
+#, c-format
+msgid "process_easy: DuplicateHandle(Out) failed (e=%d)\n"
+msgstr "�process_easy�: �DuplicateHandle(Out)� schlug fehl (e=%d).\n"
+
+#: make-3.76.1/main.c:504
+msgid "read"
+msgstr "Lese"
+
+#: make-3.76.1/implicit.c:377 make-3.76.1/implicit.c:385
+msgid "rule"
+msgstr "explizite"
+
+#: make-3.76.1/vmsfunctions.c:81
+#, c-format
+msgid "sys$search failed with %d\n"
+msgstr "�sys$search� schlug mit %d fehl.\n"
+
+#: make-3.76.1/read.c:1320
+#, c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr "Target �%s� passt nicht zum Target-Muster"
+
+#: make-3.76.1/read.c:1360
+#, c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr "Target �%s� steht mehrfach in derselben Regel."
+
+#: make-3.76.1/read.c:1352 make-3.76.1/read.c:1454
+#, c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr "Target �%s� enth�lt sowohl �:� als auch �::� Eintr�ge"
+
+#: make-3.76.1/read.c:824
+msgid "target pattern contains no `%%'"
+msgstr "Target-Muster enth�lt kein �%%�"
+
+#: make-3.76.1/main.c:1813
+#, c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "Die Option �-%c� verlangt eine positive ganze Zahl als Argument."
+
+#: make-3.76.1/function.c:1185 make-3.76.1/function.c:1188
+msgid "the `word' function takes a one-origin index argument"
+msgstr "Die �word�-Funktion erwartet ein eindeutiges Index-Argument."
+
+#: make-3.76.1/remake.c:845
+#, c-format
+msgid "touch %s"
+msgstr "%s wird als aktualisiert markiert."
+
+#: make-3.76.1/ar.c:140
+msgid "touch archive member is not available on VMS"
+msgstr ""
+"VMS stellt nicht die M�glichkeit einer �nderung \n"
+"der Zeitmarken von Archiveintr�gen zur Verf�gung."
+
+#: make-3.76.1/ar.c:172
+#, c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "touch: Archiv �%s� existiert nicht."
+
+#: make-3.76.1/ar.c:187
+#, c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr ""
+"touch: Ung�nstiger R�ckgabewert beim Zugriff \n"
+"von ar_member_touch auf �%s�."
+
+#: make-3.76.1/ar.c:181
+#, c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "touch: Eintrag �%s� existiert nicht in �%s�."
+
+#: make-3.76.1/ar.c:175
+#, c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "touch: �%s� ist kein g�ltiges Archiv."
+
+#: make-3.76.1/arscan.c:165
+#, c-format
+msgid "unable to open library `%s' to lookup member `%s'"
+msgstr ""
+"Konnte die Bibliothek �%s� auf der Suche \n"
+"nach dem Eintrag �%s� nicht �ffnen."
+
+#: make-3.76.1/function.c:729
+msgid "undefined"
+msgstr "nicht definiert"
+
+#. There is too much variation in Sys V signal numbers and names, so
+#. we must initialize them at runtime.
+#: make-3.76.1/signame.c:59
+msgid "unknown signal"
+msgstr "Unbekanntes Signal"
+
+#. It disappeared; so what.
+#: make-3.76.1/commands.c:499 make-3.76.1/file.c:403
+msgid "unlink: "
+msgstr "Verbindung verloren (unlink): "
+
+#: make-3.76.1/function.c:1541
+#, c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "Nicht beendeter Aufruf der Funktion �%s�: �%c� fehlt."
+
+#: make-3.76.1/expand.c:223 make-3.76.1/expand.c:225
+msgid "unterminated variable reference"
+msgstr "Nicht abgeschlossene Variablenreferenz."
+
+#: make-3.76.1/misc.c:318 make-3.76.1/misc.c:330 make-3.76.1/read.c:2238
+msgid "virtual memory exhausted"
+msgstr "Der virtuelle Speicher ist verbraucht."
+
+#: make-3.76.1/read.c:1882
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr "Warnung: NUL-Zeichen gelesen; der Rest der Zeile wird ignoriert."
+
+#: make-3.76.1/read.c:1372
+#, c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr "Warnung: Ignoriere alte Kommandos f�r das Target �%s�."
+
+#: make-3.76.1/read.c:1369
+#, c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr "Warnung: �berschreibe die Kommandos f�r das Target �%s�."
+
+#: make-3.76.1/expand.c:120
+#, c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "Warnung: undefinierte Variable �%.*s�"
+
+#: make-3.76.1/job.c:502
+msgid "winning"
+msgstr "erfolgreichen"
+
+#: make-3.76.1/main.c:504
+msgid "write"
+msgstr "Schreib"
diff --git a/i18n/es.po b/i18n/es.po
new file mode 100644
index 0000000..0338416
--- /dev/null
+++ b/i18n/es.po
@@ -0,0 +1,1932 @@
+# Mensajes en espa�ol para GNU make.
+# Copyright (C) 1996 Free Software Foundation, Inc.
+# Max de Mendiz�bal <max@acer.com.mx>, 1996.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: GNU make 3.74.4\n"
+"POT-Creation-Date: 1996-05-22 09:11-0400\n"
+"PO-Revision-Date: 1996-11-21 20:13+0200\n"
+"Last-Translator: Max de Mendiz�bal <max@tirania.nuclecu.unam.mx>\n"
+"Language-Team: Spanish <es@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: \n"
+
+#: ar.c:48
+#, c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "Se intent� utilizar una caracter�stica no implementada: `%s'"
+
+#: ar.c:142
+#, c-format
+msgid "Error in lbr$ini_control, %d\n"
+msgstr "Error en lbr$ini_control, %d\n"
+
+#: ar.c:147
+#, c-format
+msgid "Error opening library %s to lookup member %s, %d\n"
+msgstr "Error al abrir la biblioteca %s para buscar al elemento %s, %d\n"
+
+#: ar.c:153
+#, c-format
+msgid "Error looking up module %s in library %s, %d\n"
+msgstr "Error al buscar el m�dulo %s en la biblioteca %s, %d\n"
+
+#: ar.c:159
+#, c-format
+msgid "Error getting module info, %d\n"
+msgstr "Error al intentar obtener la informaci�n del m�dulo, %d\n"
+
+# Sugerencia: touch -> `touch'. sv
+# Ok, aceptada. A falta de cursivas... mm
+# No veo porqu� no se ha de usar 'tocar' en vez de touch em+
+# El mensaje adem�s hace referencia a un touch de un objeto dentro
+# de una librer�a, y de eso no se dice nada en el mensaje. Creo que
+# hay que tener cuidado con estas cosas.
+# El programa para tocar un miembro de un archivo ... , y ahi estamos
+# ya en problemas con el dichoso archivo/fichero.
+# A ver que se os ocurre em+
+# Enrique: touch es un programa del sistema operativo y sirve para
+# cambiar la fecha de un programa o archivo. Es decir lo "toca" y
+# modifica sus atributos. Por eso prefer� no traducirlo.
+#: ar.c:244
+msgid "touch archive member is not available on VMS"
+msgstr "El programa para hacer un `touch' no est� disponible en VMS"
+
+#: ar.c:276
+#, c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "touch: El archivo `%s' no existe"
+
+#: ar.c:279
+#, c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "touch: `%s' no es un archivo v�lido"
+
+#: ar.c:282
+msgid "touch: "
+msgstr "touch: "
+
+#: ar.c:285
+#, c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "touch: El miembro `%s' no existe en `%s'"
+
+#: ar.c:291
+#, c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr "touch: C�digo de retorno err�neo de ar_member_touch en `%s'"
+
+#: arscan.c:550
+msgid " (name might be truncated)"
+msgstr " (el nombre puede estar truncado)"
+
+#: arscan.c:552
+#, c-format
+msgid " Date %s"
+msgstr " Fecha %s"
+
+#: arscan.c:553
+#, c-format
+msgid " uid = %d, gid = %d, mode = 0%o.\n"
+msgstr " uid = %d, gid = %d, modo = 0%o.\n"
+
+#: dir.c:678
+msgid ""
+"\n"
+"# Directories\n"
+msgstr ""
+"\n"
+"# Directorios\n"
+
+#: dir.c:686
+#, c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr "# %s: podr�a no estar establecido.\n"
+
+# En el K & R aparece inode traducido como nodo-i. �qu� te parece? sv
+# Bien. Me gusta con el guioncito. mm
+#: dir.c:689
+#, c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr ""
+"# %s (dispositivo %d, nodo-i [%d,%d,%d]): posiblemente no se pueda abrir.\n"
+
+# �No sobrar�a el "posiblemente"?
+# Propongo dejarlo en " no se pudo abrir ". sv
+# Ok. Es consistente con otras traducciones. mm
+#: dir.c:694
+#, c-format
+msgid "# %s (device %d, inode %d): could not be opened.\n"
+msgstr "# %s (dispositivo %d, nodo-i %d): no se pudo abrir.\n"
+
+#: dir.c:709
+#, c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): "
+msgstr "# %s (dispositivo %d, nodo-i [%d,%d,%d]): "
+
+#: dir.c:714
+#, c-format
+msgid "# %s (device %d, inode %d): "
+msgstr "# %s (dispositivo %d, nodo-i %d): "
+
+#: dir.c:718 dir.c:738
+msgid "No"
+msgstr "No"
+
+#: dir.c:721 dir.c:741
+msgid " files, "
+msgstr " archivos, "
+
+#: dir.c:723 dir.c:743
+msgid "no"
+msgstr "no"
+
+#: dir.c:726
+msgid " impossibilities"
+msgstr " imposibilidades"
+
+# �"So far" no era "hasta ahora"? (no me hagas mucho caso) sv
+# Si tu traducci�n es mejor. Aceptada. mm
+#: dir.c:730
+msgid " so far."
+msgstr " hasta ahora."
+
+#: dir.c:746
+#, c-format
+msgid " impossibilities in %u directories.\n"
+msgstr " imposibilidades en %u directorios.\n"
+
+# Creo que eventually ser�a "finalmente" o algo as�. sv
+# Si, es finalmente no a veces. Ok. mm
+# referencia me parece que no lleva tilde. sv
+# No, no lleva acento. Me emocion� con elos. mm
+# Creeis de veras que tiene sentido 'finalmente'em+
+# yo pondr�a ser termina autoreferenciando, por
+# ejemplo em+
+# Mejor lo eliminamos. Es de alguna forma reiterativo e innecesario.
+# Lo de `al final' puede ser m�s confuso. mm
+#: expand.c:92 expand.c:97
+#, c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "La variable recursiva `%s' se auto-referencia"
+
+# �Qu� te parece "atenci�n"? Lo hemos usado mucho en otros programas. sv
+# Pero que bestia soy. Perd�n por el desbarre. mm
+#: expand.c:120
+#, c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "atenci�n: la variable `%.*s' no ha sido definida"
+
+# No me gusta nada ( lo siento )
+# � Qu� tal : La referencia a una variable est� sin terminar em+
+# Creo que tienes raz�n la voz pasiva es muy desagradable. mm.
+#: expand.c:223 expand.c:225
+msgid "unterminated variable reference"
+msgstr "la referencia a la variable est� sin terminar"
+
+#: file.c:264
+#, c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr "Las instrucciones fueron especificadas para el archivo `%s' en %s:%u,"
+
+# Buscando en las legras impl�citas em+
+# Utilic� por b�squeda en para evitar el gerundio. mm
+#: file.c:270
+#, c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr ""
+"Las instrucciones para el archivo `%s' se encontraron por b�squeda en reglas "
+"impl�citas,"
+
+# "now" es "ahora". �te lo has comido consciente o inconscientemente? sv
+# inconscientemente. mm
+#: file.c:274
+#, c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr "pero `%s' se considera ahora como el mismo archivo que `%s'."
+
+# Lo repetir� una y mil veces... :-)
+# "To ignore" *no* es ignorar. sv
+# Propongo "no ser�n tenidas en cuenta" a falta de algo mejor.
+# Ok. Mi necedad sobrepasa el milenio. mm
+#: file.c:278
+#, c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr "Las instrucciones para `%s' no ser�n tenidas en cuenta en favor de las que est�n en `%s'."
+
+# Me suena que eso de colon es algo as� como punto, dos puntos o punto y coma.
+# �Podr�as comprobarlo? sv
+# Es un punto sencillo (.). A ver si te gusta mi propuesta. mm
+#: file.c:299
+#, c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr "no se puede cambiar un punto (.) `%s' por dos puntos (:) `%s'"
+
+# Lo mismo. sv
+#: file.c:302
+#, c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr "no se pueden cambiar dos puntos (:) `%s' por un punto (.) `%s'"
+
+# Propongo un cambio en el tiempo verbal: Se borra el archivo temporal. sv
+# Ok. mm
+#: file.c:363
+#, c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr "*** Se borra el archivo temporal `%s'"
+
+#: file.c:523
+msgid "# Not a target:"
+msgstr "# No es un objetivo:"
+
+# Pondr�a: es una dependencia de em+
+# Si, tienes raz�n. mm
+#: file.c:531
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr "# Archivo valioso (es una dependencia de .PRECIOUS)."
+
+# Lo mismo. Y traducir por falso es poco menos que poco exacto.
+# Los phony target de make son aquellos que se ejecutan siempre
+# sin tener en cuenta si existe un archivo con el nombre del objetivo
+# y de si es actual. Propondr�a incondicional en vez de falso, ya que
+# explica exactamente qu� es un phony target em+
+# No. Incondicional no es una traducci�n correcta. Que tal si al rato
+# se les ocurre hacer una nueva instrucci�n .INCONDITIONAL.
+# Si quieres podr�amos pensar en otra traducci�n como se�uelo o algo as�. mm
+#: file.c:533
+msgid "# Phony target (dependency of .PHONY)."
+msgstr "# objetivo falso (dependencia de .PHONY)."
+
+# FUZZY
+# Pondria l�nea de comandos
+# Y creo que no s� exactamente a que se refiere, No creo que haya visto
+# este mensaje nunca en make lo marco con FUZZY em+
+# Est�n traduciendo commands como comandos? Son m�s bien ordenes o
+# instrucciones. Por mi parte no hay problema, incluso me gusta m�s
+# comandos, pero es un anglicismo. mm
+#: file.c:535
+msgid "# Command-line target."
+msgstr "# Objetivo de l�nea de instrucciones."
+
+# Habr�a que entender esto
+# Creo que esto es lo que significa. El fuente no es demasiado claro. mm
+# Se refiere a que el fichero makefile es uno que encuentra por
+# defecto ( en este orden GNUmakefile, Makefile y makefile ) o uno
+# que est� definido en la variable de entorno MAKEFILE em+
+# As� pues tu traducci�n es completamente equivocada, lo siento.
+# Pondr�a: Fichero por defecto o definido en la variable MAKEFILE em+
+# Cierto, lo has entendido bien. Arreglo acorde. mm
+#: file.c:537
+msgid "# A default or MAKEFILES makefile."
+msgstr "# Archivo por defecto o definido en la variable MAKEFILE."
+
+# Propongo efectuada en lugar de terminada. sv
+# Ok. Es m�s literal. mm
+# Atenci�n ! , es la b�squeda 'de'reglas impl�citas em+
+# Ok. Ojo, debo pluralizar regla e impl�cita. Platicarlo con Ulrich. mm
+#: file.c:538
+#, c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# La b�squeda de regla(s) impl�cita(s)%s ha sido efectuada.\n"
+
+#: file.c:539 file.c:564
+msgid " not"
+msgstr " no"
+
+#: file.c:541
+#, c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr "# rama del patr�n impl�cita/est�tica: `%s'\n"
+
+#: file.c:543
+msgid "# File is an intermediate dependency."
+msgstr "# El archivo es una dependencia intermedia."
+
+# Sugerencia: "crea". sv
+# Ok. Aunque, viendolo bien, que tal "hace"? mm.
+#: file.c:546
+msgid "# Also makes:"
+msgstr "# Tambi�n hace:"
+
+# �y "comprob�"? sv
+# Ok. Mejora. mm
+# No pondr�a nunca, sino simplemente 'no se comprob� 'em+
+# Si, es lo mismo pero es m�s espa�ol. mm
+#: file.c:552
+msgid "# Modification time never checked."
+msgstr "# La fecha de modificaci�n no se comprob�."
+
+#: file.c:554
+msgid "# File does not exist."
+msgstr "# El archivo no existe."
+
+#: file.c:557
+#, c-format
+msgid "# Last modified %.24s (%0lx)\n"
+msgstr "# �ltima modificaci�n %.24s (%0lx)\n"
+
+#: file.c:560
+#, c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# �ltima modificaci�n %.24s (%ld)\n"
+
+#: file.c:563
+#, c-format
+msgid "# File has%s been updated.\n"
+msgstr "# El archivo%s ha sido actualizado.\n"
+
+#: file.c:568
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# Las instrucciones siguen ejecut�ndose (ESTO ES UN BUG)."
+
+# �No ser�a m�s bien "las instrucciones de las dependencias"? sv
+# Si, que babas soy. Ahora corrijo. mm
+#: file.c:571
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# Las instrucciones de las dependencias siguen ejecut�ndose (ESTO ES UN BUG)."
+
+#: file.c:580
+msgid "# Successfully updated."
+msgstr "# Actualizado con �xito."
+
+#: file.c:584
+msgid "# Needs to be updated (-q is set)."
+msgstr "# Necesita ser actualizado (la opci�n -q est� activa)."
+
+#: file.c:587
+msgid "# Failed to be updated."
+msgstr "# Fallo al ser actualizado."
+
+# ## Le he a�adido un "�" con tu permiso.
+# Gracias. No lo puse porque no se como poner ese s�mbolo con el
+# iso-accents-mode y luego se me olvid�. Por cierto, como se hace?
+# tambi�n tengo duda de la interrogaci�n abierta.
+#: file.c:590
+msgid "# Invalid value in `update_status' member!"
+msgstr "# �Valor inv�lido en el miembro `update_status'!"
+
+# ## Lo mismo.
+#: file.c:597
+msgid "# Invalid value in `command_state' member!"
+msgstr "# �Valor inv�lido en el miembro `command_state'!"
+
+#: file.c:616
+msgid ""
+"\n"
+"# Files"
+msgstr ""
+"\n"
+"# Archivos"
+
+# Esto habr�a que revisarlo. sv
+# En efecto, hab�a que revisarlo, no es n�mero de archivos
+# sino que no hay archivos. mm
+#: file.c:639
+msgid ""
+"\n"
+"# No files."
+msgstr ""
+"\n"
+"# No hay archivos."
+
+# Sugerencia: hash buckets -> `hash buckets'
+# (al menos hasta que sepamos lo que es, creo que me sali� algo parecido
+# en recode). sv
+# Literalmente un hash bucket es un tonel de trozos. En un proceso de
+# partici�n por picadillo (hash) se deben definir "toneles" o "cubetas"
+# para guardar all� la informaci�n "hasheada". En otras palabras es el
+# tama�o de las entradas de �ndice hash. Claro como el lodo?
+# Finalmente, ok. Por ahora no traducimos hasta ponernos de acuerdo.
+#: file.c:642
+#, c-format
+msgid ""
+"\n"
+"# %u files in %u hash buckets.\n"
+msgstr ""
+"\n"
+"# %u archivos en %u `hash buckets'.\n"
+
+#: file.c:644
+#, c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr ""
+"# promedio de %.1f archivos por `bucket', max %u archivos en un `bucket'.\n"
+
+#: function.c:648
+msgid "undefined"
+msgstr "indefinido"
+
+#: function.c:657 variable.c:736
+msgid "default"
+msgstr "por defecto"
+
+#: function.c:660 variable.c:739
+msgid "environment"
+msgstr "entorno"
+
+#: function.c:663
+msgid "file"
+msgstr "archivo"
+
+# � crees sinceramente que esto lo puede entender alguien ? em+
+# � qu� tal ? con preferencia sobre el entorno em+
+# No, est� en AIX, ahora lo arreglo. mm
+#: function.c:666
+msgid "environment override"
+msgstr "con preferencia sobre el entorno"
+
+# L�nea de comandos me parece correcto em+
+# Ver arriba. Estoy de acuerdo si as� han traducido en otros lados. mm
+#: function.c:669 variable.c:748
+msgid "command line"
+msgstr "l�nea de instrucciones"
+
+# Habra que compilar esto inmediatamente e instalar
+# el .po a ver que es esto em+
+# No se puede por ahora pues make no ha sido internacionalizado a�n.
+# Ser� una de las primeras cosas que haga en cuanto se pueda. mm
+#: function.c:672
+msgid "override"
+msgstr "sobreposici�n"
+
+# Lo he cmabiado em+
+# Ok. Deber�amos platicarlo con Ulrich. mm
+#: function.c:675 variable.c:754
+msgid "automatic"
+msgstr "autom�tica/o"
+
+#: function.c:1087 function.c:1089
+msgid "non-numeric first argument to `word' function"
+msgstr "el primer argumento de la funci�n `word' no es num�rico"
+
+# Sugerencia: Borrar el "de" en "requiere de ..." sv
+# Perd�n, siempre se me v� a pesar de haberlo discutido un buen rato. mm
+#: function.c:1097 function.c:1100
+msgid "the `word' function takes a one-origin index argument"
+msgstr "la funci�n `word' requiere un argumento indexado de tipo origen-uno"
+
+#: function.c:1341
+#, c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "la llamada a la funci�n `%s' no concluy�: falta `%c'"
+
+# Y no ser�a mejor "Buscando una regla impl�cita ..."
+# Ten en cuenta que este mensaje no parece un mensaje de error, sino m�s
+# de "debug" o de "verbose". sv
+# Cierto. mm
+#: implicit.c:38
+#, c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "Buscando una regla impl�cita para `%s'.\n"
+
+# Lo mismo.
+# Buscando una regla impl�tita para el miembro del archivo `%s' em+
+# Se me resbal�. mm
+#: implicit.c:53
+#, c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr "Buscando una regla impl�cita para el miembro del archivo `%s'.\n"
+
+# Pues si ilegal le suena a c�rcel a Enrique, "evade" me suena a m� a
+# escaparse de la c�rcel... (fuga de alcatraz :-)
+# te voy a dar yo a t� fuga ... em+
+# �Qu� te parecer�a "se evita"? sv
+# Me gusta evade, pero evita es correcto. Acepto tu sugerencia. mm
+# No me gusta se evita, pondr�a evitando em+
+# Ok. Pero a mi paranoia de evitar gerundios d�nde la dejas? mm
+#: implicit.c:190
+#, c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "Evitando la recursi�n en la regla impl�cita.%s%s\n"
+
+# FUZZY
+# Esto me suena fatal. Se a que se refiere, porque lo
+# he visto, pero en cristiano no se si podr�a entenderlo.
+# se refiere a las reglas del tipo % , lo pongo FUZZY , tendr�
+# que pensar un poco en ello em+
+# De momento cambio la regla patron por una regla de patron , y
+# pondr�a a toda costa gerundio ( intentando ) em+
+# Ok con el gerundio. Pero tambi�n tengo que meditarlo. mm
+#: implicit.c:326
+#, c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr "Intentando una regla de patr�n con la ramificaci�n `%.*s'.\n"
+
+# ## Corrijo la palabra "dependencia". sv
+# Cuando aparezca este mensaje tendr� poco menos que sentido
+# testimonial. Date cuenta que los argumentos estan cambiados.
+# Pon el orden correcto, siempre ser� m�s l�gico que lo que vaya a
+# aparecer tal y como est� ahora (Se rechaza la dependencia imposible
+# `%s' `%s )'em+
+# Ok. mm
+#: implicit.c:365
+#, c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr "Se rechaza la dependencia imposible %s `%s'.\n"
+
+#: implicit.c:366 implicit.c:374
+msgid "implicit"
+msgstr "impl�cita"
+
+#: implicit.c:366 implicit.c:374
+msgid "rule"
+msgstr "regla"
+
+#: implicit.c:373
+#, c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr "Se intenta la dependencia %s `%s'.\n"
+
+#: implicit.c:393
+#, c-format
+msgid "Found dependency as `%s'.%s\n"
+msgstr "Se encuentra la dependencia como `%s'.%s\n"
+
+#: implicit.c:408
+#, c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr "Se busca una regla con el archivo %s `%s'.\n"
+
+#: implicit.c:409
+msgid "intermediate"
+msgstr "intermedia"
+
+#: job.c:190
+#, c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] Error 0x%x%s"
+
+# Preferir�a mil veces "sin efecto" o algo parecido. sv
+# Ok. Hab�amos quedado en `no tiene efecto'. mm
+#: job.c:190
+msgid " (ignored)"
+msgstr " (no tiene efecto)"
+
+# Lo mismo. sv
+#: job.c:193
+#, c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] Error %d (no tiene efecto)"
+
+#: job.c:194
+#, c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] Error %d"
+
+# Sugerencia: " (volcado de `core')". sv
+# volcado de `core' no significa nada, que te parece si mejor dejamos
+# el core dumped, o bien volcado del n�cleo o algo as�. Por el momento
+# no cambio nada. mm
+#: job.c:199
+msgid " (core dumped)"
+msgstr " (core dumped) [N�cleo vaciado a un archivo]"
+
+# Recibida o capturada, pero por Dios , no pongas
+# 'se tiene' . En vez de hijo pon proceso hijo , y quita lo
+# que tienes entre par�ntesis em+
+# Lo del par�ntesis era para escoger. mm
+#: job.c:234
+#, c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr "Recib� una se�al SIGCHLD; %d proceso hijo descarriado.\n"
+
+# �Y job -> trabajos? sv
+# Si, pero no hablas de una computadora multi-trabajos sino multi-tareas.
+# Por eso eleg� tareas. Lo platicamos con m�s calma? mm
+#: job.c:265
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** Se espera a que terminen otras tareas...."
+
+# �De verdad se dice "vivo"? Si es un proceso, se me ocurre "activo". sv
+# Me gusta lo de activo. mm
+#: job.c:290
+#, c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr "Hijo activo 0x%08lx PID %d%s\n"
+
+#: job.c:292 job.c:427 job.c:514 job.c:919
+msgid " (remote)"
+msgstr " (remoto)"
+
+# Protestar al autor. No hay forma de poner trabajo(s) desconocido(s)
+# con coherencia. sv
+# Si, si no tienen identificado a su padre. Ni modo. mm
+# Pongo /s em+
+# Ok. mm
+#: job.c:414
+#, c-format
+msgid "Unknown%s job %d"
+msgstr "Trabajo%s desconocido/s %d"
+
+#: job.c:414
+msgid " remote"
+msgstr " remoto"
+
+#: job.c:419
+#, c-format
+msgid "%s finished."
+msgstr "%s terminado."
+
+# Lo mismo, pon Proceso hijo, y quita lo que hay
+# entre par�ntesis em+
+#: job.c:424
+#, c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr "Proceso hijo %s descarriado 0x%08lx PID %d%s\n"
+
+#: job.c:425
+msgid "losing"
+msgstr "se pierde"
+
+#: job.c:425
+msgid "winning"
+msgstr "se gana"
+
+# Proceso hijo em+
+# Ok.
+#: job.c:512
+#, c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr "Se elimina al proceso hijo 0x%08lx PID %d%s de la cadena.\n"
+
+# Proceso hijo em+
+# Ok.
+#: job.c:917
+#, c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr "Se pone al proceso hijo 0x%08lx PID %05d%s en la cadena.\n"
+
+#: job.c:1140
+msgid "cannot enforce load limits on this operating system"
+msgstr "no se pueden forzar los l�mites de carga en este sistema operativo"
+
+#: job.c:1142
+msgid "cannot enforce load limit: "
+msgstr "no se puede forzar la carga l�mite: "
+
+#: job.c:1244
+#, c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "error interno: `%s' command_state %d en el child_handler"
+
+# "en sustituto" me suena muy raro. Propongo: "en su lugar" en su lugar :-) sv
+# Ok. mm
+#: job.c:1350
+#, c-format
+msgid "Executing %s instead\n"
+msgstr "En su lugar, se ejecuta %s\n"
+
+#: job.c:1381
+#, c-format
+msgid "Error spawning, %d\n"
+msgstr "Error al lanzar el proceso %d\n"
+
+#: job.c:1442
+#, c-format
+msgid "%s: Command not found"
+msgstr "%s: No se encontr� el programa"
+
+# �Y "el programa Shell"? (a secas) sv
+# Si. Suena mucho mejor. mm
+# Suena, pero no es mejor. Tal y como esta escrito, incluso
+# yo pensaria que me falta un programa en mi sistema que se
+# llame shell. No se ha encontrado el 'shell'em+
+# Es bueno contar con una segunda opini�n ... mm
+#: job.c:1471
+#, c-format
+msgid "%s: Shell program not found"
+msgstr "%s: No se ha encontrado el `shell'"
+
+# Lo mismo de arriba con "ignorar". sv
+# Ok. mm.
+#: main.c:224
+msgid "Ignored for compatibility"
+msgstr "No se tendr� en cuenta por compatibilidad"
+
+#: main.c:227
+msgid "Change to DIRECTORY before doing anything"
+msgstr "Debe desplazarse al directorio DIRECTORY antes de hacer cualquier cosa"
+
+# �"depurado" o "depuraci�n"? sv
+# Puse de depurado para evitar la cacofon�a informaci�n depuraci�n.
+# Sugerencias bienvenidas. mm
+#: main.c:230
+msgid "Print lots of debugging information"
+msgstr "Se imprimir�n grandes cantidades de informaci�n de depurado"
+
+#: main.c:233
+msgid "Environment variables override makefiles"
+msgstr "Las variables de entorno tienen prioridad sobre los makefiles"
+
+#: main.c:236
+msgid "Read FILE as a makefile"
+msgstr "Se ley� el ARCHIVO como makefile"
+
+#: main.c:239
+msgid "Print this message and exit"
+msgstr "Muestra este mensaje y finaliza"
+
+# Ojo con ignorar. sv
+# Ok. mm
+# Por favor, si has traducido commands como instrucciones , hazlo aqui
+# tambien.
+# No me gusta este mensaje, preferir�a: Se ignoran los errores obtenidos
+# en la ejecuci�n de las instrucciones em+
+#: main.c:242
+msgid "Ignore errors from commands"
+msgstr "No se toman en cuenta los errores provenientes de los comandos"
+
+#: main.c:245
+msgid "Search DIRECTORY for included makefiles"
+msgstr "Se buscan en DIRECTORIO los archivos makefile inclu�dos"
+
+# Yo traducir�a "infinite" por "infinitos", no por "una infinidad", que
+# parece que son muchos menos... sv
+# Ok. mm
+#: main.c:249
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr ""
+"Se permiten N trabajos a la vez; si no se especifica un\n"
+"argumento son infinitos"
+
+# No entiendo por qu� aqu� empleas subjuntivo: "pudieron". sv
+# Es incorrecto. Es una de las opciones `k' que dice... mm
+#: main.c:253
+msgid "Keep going when some targets can't be made"
+msgstr ""
+"Sigue avanzando a�n cuando no se puedan crear algunos objetivos"
+
+# Esto me suena a descripci�n de una opci�n, m�s que a un mensaje de error.
+# Sugerencia por lo tanto: "No se lanzan ..." sv
+# Est�s en lo correcto. mm
+#: main.c:258 main.c:263
+msgid "Don't start multiple jobs unless load is below N"
+msgstr ""
+"No se lanzan varios trabajos a menos que la carga\n"
+"sea inferior a N"
+
+# Lo mismo de antes. sv
+# Ok. mm
+#: main.c:270
+msgid "Don't actually run any commands; just print them"
+msgstr "No se ejecutan las instrucciones; s�lamente se muestran"
+
+#: main.c:273
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "Se considera el ARCHIVO demasiado viejo y no se reconstruye"
+
+# de 'make' em+
+# ok. mm
+#: main.c:276
+msgid "Print make's internal database"
+msgstr "Se imprime la base de datos interna de `make'"
+
+#: main.c:279
+msgid "Run no commands; exit status says if up to date"
+msgstr ""
+"No se ejecutan las instrucciones; el estado de salida\n"
+"indicar� si est�n actualizados"
+
+# �desabilitan o deshabilitan? sv
+# Error de dedo. mm
+# � Por favor ! , � pero qu� es eso de interconstruidas ?
+# Pon almacenadas internamente, que es exactamente lo que son :) em+
+# Bueno, bajo protesta. mm
+#: main.c:282
+msgid "Disable the built-in implicit rules"
+msgstr "Se deshabilitan las reglas impl�citas almacenadas internamente"
+
+# � qu� te parece ...
+# No se hace echo de las instrucciones em+
+# No me gusta. Que te parece lo que puse ahora? mm
+#: main.c:285
+msgid "Don't echo commands"
+msgstr "Los comandos no se muestran con eco"
+
+# Corregido error de tecleos ;) em+
+# Ok.
+#: main.c:289
+msgid "Turns off -k"
+msgstr "Se deshabilita -k"
+
+# Se *tocan*, �no? sv
+# Si. mm
+#
+# Pues entonces c�mbialo arriba tambien em+
+# En donde? mm
+#: main.c:292
+msgid "Touch targets instead of remaking them"
+msgstr "Se tocan los objetivos en vez de reconstruirlos"
+
+# Me comer�a el "Se" inicial. "Muestra la versi�n..." sv
+# Ok. mm
+#: main.c:295
+msgid "Print the version number of make and exit"
+msgstr "Muestra la versi�n del make y finaliza"
+
+# Lo mismo. sv
+#: main.c:298
+msgid "Print the current directory"
+msgstr "Muestra el directorio actual"
+
+# Lo mismo. sv
+# Turn off , desactiva o deshabilita , pero no apaga em+
+# apaga luz Mari Luz apaga luz ,que yo no puedo vivir con
+# tanta luz ... ( canci�n tradicional ) ( no lo pude evitar ) em+
+# Juar, Juar, Juar. Coincido, pero el sentido es el mismo. mm
+#: main.c:301
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "Desactiva -w, a�n cuando haya sido activado impl�citamente"
+
+# Lo mismo. sv
+# Se considera siempre como nuevo em+
+# Ok. Elimino el 'se' porque est� describiendo a una opci�n. mm
+#: main.c:304
+msgid "Consider FILE to be infinitely new"
+msgstr "Considera al ARCHIVO siempre como nuevo"
+
+# Lo mismo. sv
+# Todas estas parecen descripciones de opciones.
+#: main.c:307
+msgid "Warn when an undefined variable is referenced"
+msgstr "Advierte cuando se hace una referencia a una variable no definida"
+
+#: main.c:394
+msgid "empty string invalid as file name"
+msgstr "no se permite que una cadena vac�a sea el nombre de un archivo"
+
+#: main.c:781
+msgid "fopen (temporary file)"
+msgstr "fopen (archivo temporal)"
+
+#: main.c:787
+msgid "fwrite (temporary file)"
+msgstr "fwrite (archivo temporal)"
+
+# Antes pusiste "makefiles". Coherencia. sv
+# Cierto. mm
+#: main.c:930
+msgid "Updating makefiles...."
+msgstr "Actualizando archivos makefiles...."
+
+# Me comer�a el "archivo" inicial.
+# Ok. mm
+# "El Makefile `%s' ..." sv
+# Pondr�a ( como en un mensaje anterior ) se autoreferencia ... em+
+# He puesto makefile con min�sculas , par ser coherentes em+
+# Ok. Es m�s breve. mm.
+#: main.c:955
+#, c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr ""
+"El makefile `%s' se autoreferencia; por lo cual no se reconstruye.\n"
+
+# Lo mismo. sv
+#: main.c:1029
+#, c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "Fallo al reconstruir el makefile `%s'."
+
+# Lo mismo. sv
+#: main.c:1044
+#, c-format
+msgid "Included makefile `%s' was not found."
+msgstr "No se encontr� el makefile inclu�do `%s'."
+
+# Lo mismo. sv
+#: main.c:1049
+#, c-format
+msgid "Makefile `%s' was not found"
+msgstr "No se encontr� el Makefile `%s'"
+
+#: main.c:1108
+msgid "Couldn't change back to original directory."
+msgstr "No se pudo regresar al directorio original."
+
+#: main.c:1142
+msgid "Re-executing:"
+msgstr "Re-ejecutando:"
+
+#: main.c:1186
+msgid "Updating goal targets...."
+msgstr "Actualizando los objetivos finales...."
+
+# Sugerencia: "No se especific� ning�n objetivo ... " sv
+# Ok. Me gusta. mm
+#: main.c:1211
+msgid "No targets specified and no makefile found"
+msgstr "No se especific� ning�n objetivo y no se encontr� ning�n makefile"
+
+#: main.c:1213
+msgid "No targets"
+msgstr "No hay objetivos"
+
+# Me comer�a el "de" de "requiere de" sv
+# Ok. mm
+#: main.c:1439
+#, c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "la opci�n `-%c' requiere un argumento positivo y entero"
+
+# �Y Modo de empleo? sv
+# Soy medio bestia. Deber�a hacerlo autom�tico. mm
+# "target" es "objetivo", no "objetivos". F�jate que lleva puntos
+# suspensivos, permitiendo as� varios objetivos. sv
+# Ok. mm
+#: main.c:1490
+#, c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "Modo de empleo: %s [opciones] [objetivo] ...\n"
+
+#: main.c:1492
+msgid "Options:\n"
+msgstr "Opciones:\n"
+
+# No me gusta como queda as�.
+# Sugerencia: "%sGNU Make versi�n %s" sv
+# Aceptada. mm
+#: main.c:1967
+#, c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make versi�n %s"
+
+# De esto hablaremos otro d�a. sv
+# Si. Es bastante complicado. mm
+#: main.c:1971
+#, c-format
+msgid ""
+", by Richard Stallman and Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, "
+"Inc.\n"
+"%sThis is free software; see the source for copying conditions.\n"
+"%sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n"
+"%sPARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+", por Richard Stallman y Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, "
+"Inc.\n"
+"%sEste es software libre; consulte en el c�digo fuente las condiciones de "
+"copia.\n"
+"%sNO hay garant�a; ni siquiera para MERCANTIBILIDAD o EL CUMPLIMIENTO DE\n"
+"%sALG�N PROP�SITO PARTICULAR.\n"
+"\n"
+
+#: main.c:1993
+#, c-format
+msgid ""
+"\n"
+"# Make data base, printed on %s"
+msgstr ""
+"\n"
+"# Base de datos del Make, mostrada en %s"
+
+# make -> Make. sv
+# Ok. mm
+# Porqu� 'del', o pones 'del programa' Make o pones
+# 'de Make' em+
+# Ok. mm
+#: main.c:2002
+#, c-format
+msgid ""
+"\n"
+"# Finished Make data base on %s\n"
+msgstr ""
+"\n"
+"# Se termina la base de datos de Make en %s\n"
+
+# "Entrando en el" (f�jate que esto lo dice cuando entra en un directorio).
+# Habr�a que ver c�mo queda. sv
+# Ver nota m�s adelante. mm
+# Cambiando a , me pareceria mucho mejor em+
+# En efecto. mm
+#: main.c:2053
+msgid "Entering"
+msgstr "Cambiando a"
+
+# "Dejando el", "Abandonando el". sv
+# Que tal "saliendo"? mm
+# Prefiero 'abandonando' , o 'saliendo de' em+
+# Que tal saliendo? mm
+#: main.c:2053
+msgid "Leaving"
+msgstr "Saliendo"
+
+#: main.c:2072
+msgid "an unknown directory"
+msgstr "un directorio desconocido"
+
+# Probablemente sea aqu� donde haya que ponerle el "el" para que "Entering"
+# concuerde bien con esta frase y con la anterior simult�neamente. sv
+# No. Ya revis� el fuente y transcribo el trozo pertinente:
+# char *message = entering ? "Entering" : "Leaving";
+# if (makelevel == 0)
+# printf ("%s: %s ", program, message);
+# else
+# printf ("%s[%u]: %s ", program, makelevel, message);
+# Como notar�s lo del directorio va en otro lado.
+#: main.c:2074
+#, c-format
+msgid "directory `%s'\n"
+msgstr "directorio `%s'\n"
+
+# Interrumpido (?). sv
+# Mmgmh... El mensaje indica que hubo alg�n error muy grave y que por
+# eso se detiene el make. Probablemente sea mejor dejarlo as�. mm
+#: misc.c:212 misc.c:260
+msgid ". Stop.\n"
+msgstr ". Alto.\n"
+
+#: misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "Error desconocido 12345678901234567890"
+
+#: misc.c:282
+#, c-format
+msgid "Unknown error %d"
+msgstr "Error desconocido %d"
+
+# Propongo eliminar la palabra virtual. sv
+# Pero si es muy bonita. :) Bueno. Como ya platicamos puede que sea
+# una buena idea pero, por ahora la dejar�a. mm
+#: misc.c:318 misc.c:330 read.c:2151
+msgid "virtual memory exhausted"
+msgstr "memoria virtual agotada"
+
+#: misc.c:536
+#, c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr "%s acceso: usuario %d (real %d), grupo %d (real %d)\n"
+
+#: misc.c:556
+msgid "Initialized"
+msgstr "Inicializado"
+
+#: misc.c:635
+msgid "User"
+msgstr "Usuario"
+
+#: misc.c:683
+msgid "Make"
+msgstr "Make"
+
+#: misc.c:717
+msgid "Child"
+msgstr "Hijo"
+
+# Sugerencia: eliminar la palabra "archivo". sv
+# Ok. Mejora. mm
+#: read.c:129
+msgid "Reading makefiles..."
+msgstr "Leyendo makefiles..."
+
+#: read.c:298
+#, c-format
+msgid "Reading makefile `%s'"
+msgstr "Leyendo makefile `%s'"
+
+#: read.c:300
+msgid " (no default goal)"
+msgstr " (no hay objetivo por defecto)"
+
+#: read.c:302
+msgid " (search path)"
+msgstr " (ruta de b�squeda)"
+
+#: read.c:304
+msgid " (don't care)"
+msgstr " (no importa)"
+
+#: read.c:306
+msgid " (no ~ expansion)"
+msgstr " (no hay expansi�n del ~)"
+
+# ## Sintaxis no llevaba tilde.
+# Ok. mm
+#: read.c:466
+msgid "invalid syntax in conditional"
+msgstr "sintaxis no v�lida en condicional"
+
+#: read.c:474
+msgid "extraneous `endef'"
+msgstr "el `endef' es irrelevante o est� mal colocado"
+
+#: read.c:500 read.c:522
+msgid "empty `override' directive"
+msgstr "instrucci�n `override' vac�a"
+
+# corregido el efecto indio , a�ado un 'un'em+
+# Ok. mm
+#: read.c:584
+#, c-format
+msgid "no file name for `%sinclude'"
+msgstr "no hay un nombre de archivo para `%sinclude'"
+
+#: read.c:670
+msgid "commands commence before first target"
+msgstr "las instrucciones comenzaron antes del primer objetivo"
+
+# "falta una regla". sv
+# (es que extraviada me suena muy raro).
+# Cierto pareciera que se perdi� dentro de alg�n circuito. mm
+# Falta 'la' regla em+
+# No no es la regla sino una regla pues puede ser cualquiera de ellas. mm
+#: read.c:714
+msgid "missing rule before commands"
+msgstr "falta una regla antes de las instrucciones"
+
+#: read.c:733
+msgid "missing separator"
+msgstr "falta un separador"
+
+#: read.c:782
+msgid "missing target pattern"
+msgstr "falta un patr�n de objetivos"
+
+#: read.c:784
+msgid "multiple target patterns"
+msgstr "hay varios patrones de objetivos"
+
+#: read.c:789
+msgid "target pattern contains no `%%'"
+msgstr "el patr�n de objetivo no contiene `%%'"
+
+#: read.c:829
+msgid "missing `endif'"
+msgstr "falta un `endif'"
+
+#: read.c:887
+msgid "Extraneous text after `endef' directive"
+msgstr ""
+"Hay un texto irrelevante o mal colocado despu�s de la instrucci�n `endef'"
+
+#: read.c:917
+msgid "missing `endef', unterminated `define'"
+msgstr "falta un `endef', no se termin� un `define'"
+
+#: read.c:973 read.c:1120
+#, c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "Texto irrelevante o mal colocado despu�s de la instrucci�n `%s'"
+
+#: read.c:977
+#, c-format
+msgid "extraneous `%s'"
+msgstr "irrelevante o mal colocado `%s'"
+
+#: read.c:982
+msgid "only one `else' per conditional"
+msgstr "s�lo se admite un `else' por condicional"
+
+#: read.c:1230
+msgid "mixed implicit and static pattern rules"
+msgstr "las reglas impl�citas y las de patr�n est�tico est�n mezcladas"
+
+# Y 'las' normales em+
+# Ok. mm
+#: read.c:1233
+msgid "mixed implicit and normal rules"
+msgstr "las reglas impl�citas y las normales est�n mezcladas"
+
+#: read.c:1273
+#, c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr "el archivo de objetivos `%s' no coincide con el patr�n de objetivos"
+
+#: read.c:1305 read.c:1407
+#, c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr "el archivo de objetivos `%s' tiene l�neas con : y ::"
+
+# Cambiar�a given por 'proporcion�' o 'indic�' em+
+# Ok. mm
+#: read.c:1313
+#, c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr "el objetivo `%s' se proporcion� m�s de una vez en la misma regla."
+
+# No me gusta esta traducci�n de override. Mira a ver
+# si encaja mejor alguna de las dos que se proponen arriba
+# em+
+# Aunque no me acaba de convencer, que te parece �sto? mm
+#: read.c:1322
+#, c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr "atenci�n: se imponen comandos para el objetivo `%s'"
+
+# Ojo con ignora. sv
+#: read.c:1325
+#, c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr "atenci�n: se ignoran las instrucciones viejas para el objetivo `%s'"
+
+#: read.c:1815
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr "atenci�n: hay un car�cter NUL; se ignora el resto de la l�nea"
+
+#: remake.c:212
+#, c-format
+msgid "Nothing to be done for `%s'."
+msgstr "No se hace nada para `%s'."
+
+#: remake.c:213
+#, c-format
+msgid "`%s' is up to date."
+msgstr "`%s' est� actualizado."
+
+# �target file no ser�a "archivo objetivo"? sv
+# Literalmente si pero un archivo make puede tener varios objetivos. mm
+# Max , pero no existe un archivo de objetivos. Esta l�nea, que es
+# de las que aparecen al hacer un make con la opci�n -d ( debug )
+# se refiere a lo que dice Santiago, es decir, 'archivo objetivo' em+
+# Ok creo que tienen raz�n. mm
+#: remake.c:310
+#, c-format
+msgid "Considering target file `%s'.\n"
+msgstr "Se considera el archivo objetivo `%s'.\n"
+
+# Un compa�ero m�o dice que una buena regla es poner siempre que se pueda
+# un n�mero par de comas.
+# Es decir: "Se intent�, sin �xito, actualizar ..."
+# o bien "Se intent� sin �xito actualizar ..."
+# �Qu� te parece? sv
+# Bien y tiene raz�n. mm
+#: remake.c:316
+#, c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr "Se intent�, sin �xito, actualizar el archivo `%s'.\n"
+
+#: remake.c:320
+#, c-format
+msgid "File `%s' was considered already.\n"
+msgstr "El archivo `%s' ya fue considerado.\n"
+
+#: remake.c:330
+#, c-format
+msgid "Still updating file `%s'.\n"
+msgstr "Se contin�a actualizando el archivo `%s'.\n"
+
+#: remake.c:333
+#, c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "Se termin� de actualizar el archivo `%s'.\n"
+
+#: remake.c:354
+#, c-format
+msgid "File `%s' does not exist.\n"
+msgstr "El archivo `%s' no existe.\n"
+
+#: remake.c:364 remake.c:728
+#, c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "Se encontr� una regla impl�cita para `%s'.\n"
+
+# Se ha encontrado em+
+# Ok, pero procuro evitar como a la muerte los gerundios. mm
+#: remake.c:366 remake.c:730
+#, c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "No se ha encontrado una regla impl�cita para `%s'.\n"
+
+# Por defecto, como haces arriba em+
+# en efecto, mm
+#: remake.c:372 remake.c:736
+#, c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "Se utilizan las instrucciones por defecto para `%s'.\n"
+
+#: remake.c:392 remake.c:760
+#, c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr "Se elimina la dependencia circular %s <- %s."
+
+# Lo mismo de antes con "target file". sv
+# Estoy de acuerdo con �l ( por una vez ;) ) em+
+# Ok. mm
+#: remake.c:474
+#, c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr "Se terminaron las dependencias del archivo objetivo `%s'.\n"
+
+#: remake.c:480
+#, c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr "Se est�n construyendo las dependencias de `%s'.\n"
+
+# Give up no es enfocar, es abandonar, o desistir em+
+# Si, met� la pata. mm
+#: remake.c:493
+#, c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr "Se abandona el archivo objetivo `%s'.\n"
+
+#: remake.c:497
+#, c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "Debido a los errores, el objetivo `%s' no se reconstruy�."
+
+#: remake.c:542
+#, c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "La dependencia `%s' no existe.\n"
+
+#: remake.c:544
+#, c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr "La dependencia `%s' es %s que el dependiente `%s'.\n"
+
+#: remake.c:545
+msgid "newer"
+msgstr "m�s reciente"
+
+#: remake.c:545
+msgid "older"
+msgstr "m�s antigua"
+
+# Ahorra espacio, y pon '::' en vez de eso :) em+
+# Bueno, no es mala idea. A ver si te gusta lo que puse. mm
+#: remake.c:556
+#, c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr ""
+"El objetivo `%s' es de tipo dos puntos dos veces (::)\n"
+"y no tiene dependencias.\n"
+
+#: remake.c:561
+#, c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr "No hay instrucciones para `%s' y ninguna dependencia cambi�.\n"
+
+#: remake.c:566
+#, c-format
+msgid "No need to remake target `%s'.\n"
+msgstr "No es necesario reconstruir el objetivo `%s'.\n"
+
+# Revisa todo el po con un search, y mira a ver si decides usar
+# regenerar o reconstruir ( prefiero lo �ltimo 10000 veces ) em+
+# Ok, buena propuesta. mm
+#: remake.c:571
+#, c-format
+msgid "Must remake target `%s'.\n"
+msgstr "Se debe reconstruir el objetivo `%s'.\n"
+
+#: remake.c:578
+#, c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "Las instrucciones de `%s' se est�n ejecutando.\n"
+
+# Target file no es archivo de objetivos, sino el archivo objetivo
+# make no tiene ning�n archivo de objetivos em+
+# Ok. mm
+#: remake.c:585
+#, c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "Fallo al reconstruir el archivo objetivo `%s'.\n"
+
+# Lo mismo em+
+# Ok. mm
+#: remake.c:588
+#, c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "Se reconstruy� con �xito el archivo objetivo `%s'.\n"
+
+# Otra vez em+
+# Ok, no te puedes quejar de falta de consistencia en este caso! mm
+#: remake.c:591
+#, c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr ""
+"Se necesita reconstruir el archivo objetivo `%s' con la opci�n -q.\n"
+
+# Sugerencia: No hay ninguna regla... sv
+# Como una no hay ninguna. mm
+#: remake.c:880
+#, c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%sNo hay ninguna regla para construir el objetivo `%s'%s"
+
+#: remake.c:882
+#, c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr ""
+"%sNo hay ninguna regla para construir el objetivo `%s', necesario para `%s'%s"
+
+# Ubicada :)) , que tal futura, a secas ? em+
+# Bueno, sonaba como StarTrek, muy chido, pero acepto tu sugerencia. mm
+#: remake.c:1053
+#, c-format
+msgid "*** File `%s' has modification time in the future"
+msgstr ""
+"*** El archivo `%s' tiene una fecha de modificaci�n futura"
+
+# �Las aduanas? sv
+# Si, las aduanas de exportaci�n de procesos. Suena rar�simo pero
+# revis� el c�digo y todo parece apuntar a que as� son las cosas.
+# Creo que esto es otra cosa. Custom se refiere a los valores dados
+# por el usuario ( customizables ) , y que no se exportar�n se refiere
+# a que al llamar a otros makefiles, no ser�n pasados como valores
+# que se antepongan ( otro t�rmino para override ) a los que make
+# tiene por defecto .
+# La traducci�n exacta por tanto es, los valores definidos por el usuario
+# no se exportar�n em+
+# Much�simo m�s claro (es m�s me gusta m�s en espa�ol que en ingl�s con tu
+# arreglo) mm
+#: remote-cstms.c:94
+#, c-format
+msgid "Customs won't export: %s\n"
+msgstr "Los valores definidos por el usuario no se exportar�n: %s\n"
+
+# Sugerencia: `socket' sv
+# Ok. mm
+#: remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr "exportando: No se puede crear el `socket' de regreso."
+
+#: remote-cstms.c:138
+msgid "exporting: "
+msgstr "exportando: "
+
+#: remote-cstms.c:171
+#, c-format
+msgid "exporting: %s"
+msgstr "exportando: %s"
+
+#: remote-cstms.c:185
+#, c-format
+msgid "Job exported to %s ID %u\n"
+msgstr "El trabajo ha sido exportado a %s ID %u\n"
+
+#: rule.c:556
+msgid ""
+"\n"
+"# Implicit Rules"
+msgstr ""
+"\n"
+"# Reglas impl�citas."
+
+#: rule.c:571
+msgid ""
+"\n"
+"# No implicit rules."
+msgstr ""
+"\n"
+"# No hay reglas impl�citas."
+
+#: rule.c:574
+#, c-format
+msgid ""
+"\n"
+"# %u implicit rules, %u"
+msgstr ""
+"\n"
+"# %u reglas impl�citas, %u"
+
+#: rule.c:583
+msgid " terminal."
+msgstr " terminal."
+
+# ## A�ado � con tu permiso. sv
+# Gracias. mm
+# � qu� tal err�neo ? em+
+# Si, suena mejor. mm
+#: rule.c:587
+#, c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr "BUG: �num_pattern_rules err�neo! %u != %u"
+
+#: variable.c:658 variable.c:660
+msgid "empty variable name"
+msgstr "nombre de variable vac�o"
+
+# Sugerencia: No poner archivo. sv
+# Ok. mm
+#: variable.c:742
+msgid "makefile"
+msgstr "makefile"
+
+# 'bajo -e' = 'con -e activo' em+
+# Ok. Esta inversi�n en los idiomas sajones se pega. mm
+#: variable.c:745
+msgid "environment under -e"
+msgstr "con -e activo"
+
+# Creo que tendremos un problema con instrucci�n, comando
+# , programa y directiva . Est� claro que aqu� es directiva em+
+# Ok, pero no deja de sonar a RoboCop. A ver que te parece como qued�. mm
+#: variable.c:751
+msgid "`override' directive"
+msgstr "directiva de sobreposici�n `override'"
+
+#: variable.c:822
+msgid "# No variables."
+msgstr "# No hay variables."
+
+# Bueno. Aqu� un punto de discusi�n. Traduzco buckets por cubetas o
+# mejor las dejo tal cual? Opiniones bienvenidas. mm
+# Estos mensajes son para debug, no creo que haga falta usar cubetas ;) em+
+# Tienes raz�n, si el debugueador no lo entiende pues, ... que se
+# dedique a otra cosa. mm
+#: variable.c:825
+#, c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr "# hay %u variables en %u `hash buckets�.\n"
+
+#: variable.c:828
+#, c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr "# promedio de %.1f variables por `bucket', m�x %u en un `bucket'.\n"
+
+#: variable.c:835
+#, c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr "# promedio de %d.%d variables por `bucket', m�x %u en un `bucket'.\n"
+
+#: variable.c:850
+msgid ""
+"\n"
+"# Variables\n"
+msgstr ""
+"\n"
+"# Variables\n"
+
+# �Y al rev�s?: Rutas de b�squeda VPATH. sv
+# Mejora
+#: vpath.c:455
+msgid ""
+"\n"
+"# VPATH Search Paths\n"
+msgstr ""
+"\n"
+"# Rutas de b�squeda VPATH\n"
+
+# Rutas creo que queda mejor. sv
+# Ok. Es m�s com�n. mm
+#: vpath.c:472
+msgid "# No `vpath' search paths."
+msgstr "# No hay rutas de b�squeda `vpath'."
+
+# �Ah! Aqu� si que pones el vpath al final, �eh? :-) sv
+# You really got me! mm
+#: vpath.c:474
+#, c-format
+msgid ""
+"\n"
+"# %u `vpath' search paths.\n"
+msgstr ""
+"\n"
+"# %u rutas de b�squeda `vpath'.\n"
+
+#: vpath.c:477
+msgid ""
+"\n"
+"# No general (`VPATH' variable) search path."
+msgstr ""
+"\n"
+"# No hay ruta de b�squeda general (variable `VPATH')."
+
+#: vpath.c:483
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# Ruta de b�squeda general (variable `VPATH'):\n"
+"# "
+
+#: getloadavg.c:948
+msgid "Error getting load average"
+msgstr "Error al obtener la carga promedio"
+
+#: getloadavg.c:952
+#, c-format
+msgid "1-minute: %f "
+msgstr "1-minuto: %f "
+
+#: getloadavg.c:954
+#, c-format
+msgid "5-minute: %f "
+msgstr "5-minutos: %f "
+
+#: getloadavg.c:956
+#, c-format
+msgid "15-minute: %f "
+msgstr "15-minutos: %f "
+
+#: getopt.c:565
+#, c-format
+msgid "%s: option `%s' is ambiguous\n"
+msgstr "%s: la opci�n `%s' es ambigua\n"
+
+# No admite ning�n argumento. sv
+# Ok. Y vuelve la burra al trigo. mm
+#: getopt.c:589
+#, c-format
+msgid "%s: option `--%s' doesn't allow an argument\n"
+msgstr "%s: la opci�n `--%s' no admite ning�n argumento\n"
+
+# Lo mismo. sv
+# Ok. mm
+#: getopt.c:594
+#, c-format
+msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgstr "%s: la opci�n `%c%s' no admite ning�n argumento\n"
+
+#: getopt.c:611
+#, c-format
+msgid "%s: option `%s' requires an argument\n"
+msgstr "%s: la opci�n `%s' requiere un argumento\n"
+
+#: getopt.c:640
+#, c-format
+msgid "%s: unrecognized option `--%s'\n"
+msgstr "%s: opci�n no reconocida `--%s'\n"
+
+#: getopt.c:644
+#, c-format
+msgid "%s: unrecognized option `%c%s'\n"
+msgstr "%s: opci�n no reconocida `%c%s'\n"
+
+#: getopt.c:670
+#, c-format
+msgid "%s: illegal option -- %c\n"
+msgstr "%s: opci�n inv�lida -- %c\n"
+
+#: getopt.c:673
+#, c-format
+msgid "%s: invalid option -- %c\n"
+msgstr "%s: opci�n inv�lida -- %c\n"
+
+#: getopt.c:709
+#, c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: la opci�n requiere un argumento -- %c\n"
+
+# argv-elements -> elementos argv. sv
+# (A poco C que sepas, sabr�s lo que es).
+# Algunos si, algunos no. Pero tienes raz�n. mm
+#: getopt.c:777 getopt1.c:141
+msgid "digits occur in two different argv-elements.\n"
+msgstr "los d�gitos est�n en dos elementos argv distintos.\n"
+
+#: getopt.c:779 getopt1.c:143
+#, c-format
+msgid "option %c\n"
+msgstr "opci�n %c\n"
+
+#: getopt.c:783 getopt1.c:147
+msgid "option a\n"
+msgstr "opci�n a\n"
+
+#: getopt.c:787 getopt1.c:151
+msgid "option b\n"
+msgstr "opci�n b\n"
+
+# Sugerencia: La opci�n c tiene el valor `%s'
+# Hay un mensaje id�ntico en hello. sv
+# Me gusta mucho. mm
+#: getopt.c:791 getopt1.c:155
+#, c-format
+msgid "option c with value `%s'\n"
+msgstr "La opci�n c tiene el valor `%s'\n"
+
+#: getopt.c:798 getopt1.c:166
+#, c-format
+msgid "?? getopt returned character code 0%o ??\n"
+msgstr "?? getopt() regres� un c�racter con c�digo 0%o ??\n"
+
+# Elementos ARGV que no son opciones: sv
+# Ok. mm.
+# Esto es:
+# Elementos de ARGV 'que' no son opciones:
+# pero tambien es un mensaje de debug del propio make, asi
+# que no me preocupa ( no aparecer� a usuarios normales de make ) em+
+# Bueno, pero de todas formas se corrige. mm
+#: getopt.c:804 getopt1.c:172
+msgid "non-option ARGV-elements: "
+msgstr "los elementos ARGV que no son opciones: "
+
+#: getopt1.c:159
+#, c-format
+msgid "option d with value `%s'\n"
+msgstr "opci�n d con valor `%s'\n"
+
+#: signame.c:57
+msgid "unknown signal"
+msgstr "se�al desconocida"
+
+#: signame.c:107
+msgid "Hangup"
+msgstr "Colgado"
+
+# � Y por qu� no Interrupci�n ? em+
+# Porque es una acci�n. De hecho es un mensaje que se env�a a trav�s
+# del sistema en este caso le enviar�as un kill -INT num_proceso para
+# interrumpir al programa. Lo revis� contra el fuente. mm
+#: signame.c:110
+msgid "Interrupt"
+msgstr "Interrumpir"
+
+#: signame.c:113
+msgid "Quit"
+msgstr "Finalizar"
+
+#: signame.c:116
+msgid "Illegal Instruction"
+msgstr "Instrucci�n no v�lida"
+
+# Los trap los hemos dejado como traps, simplemente. em+
+# Ok. mm
+#: signame.c:119
+msgid "Trace/breakpoint trap"
+msgstr "Trace/breakpoint trap"
+
+#: signame.c:124
+msgid "Aborted"
+msgstr "Abortado"
+
+# Ponte de acuerdo con Enrique en c�mo se traduce esto.
+# Enrique tiene esta misma frase en glibc. sv
+# Eso es :) IOT trap em+
+# Ok. mm
+#: signame.c:127
+msgid "IOT trap"
+msgstr "IOT trap"
+
+# Otra em+
+# Ok. mm
+#: signame.c:130
+msgid "EMT trap"
+msgstr "EMT trap"
+
+# Coma flotante, por favor. sv
+# Creeme que aqu� lo de coma flotante no vale. Somos pro-yanquis y
+# por eso usamos el punto flotante. Debemos llegar a un acuerdo.
+# Por ahora pongo coma flotante para facilitar las cosas, pero bajo
+# protesta ;-) mm
+#: signame.c:133
+msgid "Floating point exception"
+msgstr "Excepci�n de coma flotante"
+
+# "Terminado por la se�al kill" quedar�a un poco m�s suave ... sv
+# Enrique tiene en glibc "Terminado (killed)". sv
+# Bueno, creo que mi traducci�n es m�s exacta, concisa y clara
+# pero si insisten... Adem�s recuerda en que estoy en un pa�s
+# en donde asesinado es palabra de todos los d�as. mm
+#: signame.c:136
+msgid "Killed"
+msgstr "Terminado (killed)"
+
+#: signame.c:139
+msgid "Bus error"
+msgstr "Error en el bus"
+
+#: signame.c:142
+msgid "Segmentation fault"
+msgstr "Fallo de segmentaci�n"
+
+#: signame.c:145
+msgid "Bad system call"
+msgstr "Llamada al sistema err�nea"
+
+#: signame.c:148
+msgid "Broken pipe"
+msgstr "Tuber�a rota"
+
+# �Temporizador? (as� lo tradujo Enrique en glibc). sv
+# Suena como StarTrek. Mejor lo platico con �l. A lo mejor
+# hasta lo convenzo. mm
+# Pues tendr�s que darme razones em+
+# Bueno, un alarm clock es una alarma del reloj. No tiene pierde.
+# Temporizador es una bonita palabra pero en donde dice que va a
+# sonar una campana para despertarte? mm
+#: signame.c:151
+msgid "Alarm clock"
+msgstr "Alarma del reloj"
+
+#: signame.c:154
+msgid "Terminated"
+msgstr "Finalizado"
+
+#: signame.c:157
+msgid "User defined signal 1"
+msgstr "Se�al 1 definida por el usuario"
+
+#: signame.c:160
+msgid "User defined signal 2"
+msgstr "Se�al 2 definida por el usuario"
+
+# Proceso hijo terminado em+
+# Ok. mm
+#: signame.c:165 signame.c:168
+msgid "Child exited"
+msgstr "Proceso hijo terminado"
+
+# Fallo. sv
+# Alimentaci�n el�ctrico em+
+# Ok. mm
+#: signame.c:171
+msgid "Power failure"
+msgstr "Falla de alimentaci�n el�ctrica"
+
+#: signame.c:174
+msgid "Stopped"
+msgstr "Detenido"
+
+# Enrique hizo una preciosa traducci�n de este mensaje que, seg�n �l,
+# mejora el original. Era algo as� como:
+# "Detenido (requiere entrada de terminal)". sv
+# Tiene raz�n se ve bien. mm
+# Requiere 'de';) , como te vea Santiago que le metes
+# otro 'de' otra vez ... em+
+# Ok. mm
+#: signame.c:177
+msgid "Stopped (tty input)"
+msgstr "Detenido (se requiere entrada de terminal)"
+
+# lo mismo, se requiere entrada de terminal , em+
+# Ok. mm
+#: signame.c:180
+msgid "Stopped (tty output)"
+msgstr "Detenido (se requiere salida de terminal)"
+
+# idem em+
+#: signame.c:183
+msgid "Stopped (signal)"
+msgstr "Detenido (se requiere una se�al)"
+
+#: signame.c:186
+msgid "CPU time limit exceeded"
+msgstr "Se agot� el tiempo de CPU permitido"
+
+#: signame.c:189
+msgid "File size limit exceeded"
+msgstr "Se excedi� el tama�o m�ximo de archivo permitido"
+
+#: signame.c:192
+msgid "Virtual timer expired"
+msgstr "El contador de tiempo virtual ha expirado"
+
+# Nunca me enter� de c�mo se traduc�a profile, pero perfil me suena raro.
+# �De d�nde lo has sacado? sv
+# Es lo que quiere decir, ni modo. Perfil de un avi�n es plane profile.
+# Por cierto, lo m�s probable es que esta "traducci�n" haya que
+# modificarla para que sea entendible. mm
+# Esto lo tengo en glibc, lo mirare otro d�a. Estos mensajes no son
+# importantes em+
+# Agregu� unas palabras en aras de claridad (espero) mm
+#: signame.c:195
+msgid "Profiling timer expired"
+msgstr "El contador de tiempo para la generaci�n del perfil ha expirado"
+
+#: signame.c:201
+msgid "Window changed"
+msgstr "La ventana ha cambiado"
+
+#: signame.c:204
+msgid "Continued"
+msgstr "Continuado"
+
+#: signame.c:207
+msgid "Urgent I/O condition"
+msgstr "Condici�n urgente de I/O"
+
+#: signame.c:214 signame.c:223
+msgid "I/O possible"
+msgstr "Posible I/O"
+
+#: signame.c:217
+msgid "SIGWIND"
+msgstr "SIGWIND"
+
+#: signame.c:220
+msgid "SIGPHONE"
+msgstr "SIGPHONE"
+
+#: signame.c:226
+msgid "Resource lost"
+msgstr "Recurso perdido"
+
+#: signame.c:229
+msgid "Danger signal"
+msgstr "Se�al de peligro"
+
+#: signame.c:232
+msgid "Information request"
+msgstr "Petici�n de informaci�n"
+
+#: signame.c:286
+#, c-format
+msgid "%s: unknown signal"
+msgstr "%s: se�al desconocida"
+
+#: signame.c:299
+msgid "Signal 12345678901234567890"
+msgstr "Se�al 12345678901234567890"
+
+#: signame.c:304
+#, c-format
+msgid "Signal %d"
+msgstr "Se�al %d"
diff --git a/i18n/fr.po b/i18n/fr.po
new file mode 100644
index 0000000..562276d
--- /dev/null
+++ b/i18n/fr.po
@@ -0,0 +1,1445 @@
+# Messages fran�ais pour make.
+# Copyright (C) 1996 Free Software Foundation, Inc.
+# Marc Baudoin <babafou@ensta.fr>, Fr�d�ric Lin� <line@MicroNet.fr>, 1996.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: make 3.74.4\n"
+"POT-Creation-Date: 1996-05-22 09:11-0400\n"
+"PO-Revision-Date: 1997-01-05 15:07+0200\n"
+"Last-Translator: Marc Baudoin <babafou@ensta.fr>\n"
+"Language-Team: French <fr@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ar.c:48
+#, possible-c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "tentative d'utiliser une caract�ristique non support�e : `%s'"
+
+#: ar.c:142
+#, possible-c-format
+msgid "Error in lbr$ini_control, %d\n"
+msgstr "Erreur dans lbr$ini_control, %d\n"
+
+#: ar.c:147
+#, possible-c-format
+msgid "Error opening library %s to lookup member %s, %d\n"
+msgstr "Erreur en ouvrant la biblioth�que %s pour y rechercher le membre %s, %d\n"
+
+#: ar.c:153
+#, possible-c-format
+msgid "Error looking up module %s in library %s, %d\n"
+msgstr "Erreur en recherchant le module %s dans la biblioth�que %s, %d\n"
+
+#: ar.c:159
+#, possible-c-format
+msgid "Error getting module info, %d\n"
+msgstr "Erreur lors de l'obtention des informations du module, %d\n"
+
+#: ar.c:244
+msgid "touch archive member is not available on VMS"
+msgstr "impossible de modifier la date d'un membre d'une archive sur VMS"
+
+#: ar.c:276
+#, possible-c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "touch: L'archive `%s' n'existe pas"
+
+#: ar.c:279
+#, possible-c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "touch: `%s' n'est pas une archive valide"
+
+#: ar.c:282
+msgid "touch: "
+msgstr "touch: "
+
+#: ar.c:285
+#, possible-c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "touch: Le membre `%s' n'existe pas dans `%s'"
+
+#: ar.c:291
+#, possible-c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr "touch: Mauvais code de retour de ar_member_touch pour `%s'"
+
+#: arscan.c:550
+msgid " (name might be truncated)"
+msgstr " (le nom peut �tre tronqu�)"
+
+#: arscan.c:552
+#, possible-c-format
+msgid " Date %s"
+msgstr " Date %s"
+
+#: arscan.c:553
+#, possible-c-format
+msgid " uid = %d, gid = %d, mode = 0%o.\n"
+msgstr " uid = %d, gid = %d, mode = 0%o.\n"
+
+#: dir.c:678
+msgid ""
+"\n"
+"# Directories\n"
+msgstr ""
+"\n"
+"# R�pertoires\n"
+
+#: dir.c:686
+#, possible-c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr "# %s : statut indisponible.\n"
+
+#: dir.c:689
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr "# %s (p�riph�rique %d, inode [%d,%d,%d]) : n'a pas pu �tre ouvert.\n"
+
+#: dir.c:694
+#, possible-c-format
+msgid "# %s (device %d, inode %d): could not be opened.\n"
+msgstr "# %s (p�riph�rique %d, inode %d) : n'a pas pu �tre ouvert.\n"
+
+#: dir.c:709
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): "
+msgstr "# %s (p�riph�rique %d, inode [%d,%d,%d]) : "
+
+#: dir.c:714
+#, possible-c-format
+msgid "# %s (device %d, inode %d): "
+msgstr "# %s (p�riph�rique %d, inode %d) : "
+
+#: dir.c:718 dir.c:738
+msgid "No"
+msgstr "Pas de"
+
+#: dir.c:721 dir.c:741
+msgid " files, "
+msgstr " fichiers, "
+
+#: dir.c:723 dir.c:743
+msgid "no"
+msgstr "non"
+
+#: dir.c:726
+msgid " impossibilities"
+msgstr " impossibilit�s"
+
+#: dir.c:730
+msgid " so far."
+msgstr " jusqu'ici."
+
+#: dir.c:746
+#, possible-c-format
+msgid " impossibilities in %u directories.\n"
+msgstr " impossibilit�s dans %u r�pertoires.\n"
+
+#: expand.c:92 expand.c:97
+#, possible-c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "La variable r�cursive `%s' se r�f�rence elle-m�me (finalement)"
+
+#: expand.c:120
+#, possible-c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "attention : variable ind�finie `%.*s'"
+
+#: expand.c:223 expand.c:225
+msgid "unterminated variable reference"
+msgstr "r�f�rence incompl�te � une variable"
+
+#: file.c:264
+#, possible-c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr "Les commandes pour le fichier `%s' ont �t� sp�cifi�es � %s:%u,"
+
+#: file.c:270
+#, possible-c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr "Les commandes pour le fichier `%s' ont �t� trouv�es par une recherche de r�gle implicite,"
+
+#: file.c:274
+#, possible-c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr "mais `%s' est maintenant consid�r� comme �tant le m�me fichier que `%s'."
+
+#: file.c:278
+#, possible-c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr "Les commandes pour `%s' seront ignor�es en faveur de celles pour `%s'."
+
+#: file.c:299
+#, possible-c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr "impossible de renommer le simple deux-points `%s' en double deux-points `%s'"
+
+#: file.c:302
+#, possible-c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr "impossible de renommer le double deux-points `%s' en simple deux-points `%s'"
+
+#: file.c:363
+#, possible-c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr "*** Suppression du fichier interm�diaire `%s'"
+
+#: file.c:523
+msgid "# Not a target:"
+msgstr "# Pas une cible :"
+
+#: file.c:531
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr "# Fichier pr�cieux (d�pendance de .PRECIOUS)."
+
+#: file.c:533
+msgid "# Phony target (dependency of .PHONY)."
+msgstr "# Cible factice (d�pendance de .PHONY)."
+
+#: file.c:535
+msgid "# Command-line target."
+msgstr "# Cible provenant de la ligne de commande."
+
+#: file.c:537
+msgid "# A default or MAKEFILES makefile."
+msgstr "# Une valeur par d�faut ou sp�cifi�e dans la variable d'environnement MAKEFILES."
+
+#: file.c:538
+#, possible-c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# Recherche de r�gle implicite%s effectu�e.\n"
+
+#: file.c:539 file.c:564
+msgid " not"
+msgstr " non"
+
+#: file.c:541
+#, possible-c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr "# Pr�fixe de sch�ma implicite/statique : `%s'\n"
+
+#: file.c:543
+msgid "# File is an intermediate dependency."
+msgstr "# Ce fichier est une d�pendance interm�diaire."
+
+#: file.c:546
+msgid "# Also makes:"
+msgstr "# Fabrique �galement :"
+
+#: file.c:552
+msgid "# Modification time never checked."
+msgstr "# Heure de modification jamais v�rifi�e."
+
+#: file.c:554
+msgid "# File does not exist."
+msgstr "# Fichier inexistant."
+
+#: file.c:557
+#, possible-c-format
+msgid "# Last modified %.24s (%0lx)\n"
+msgstr "# Derni�re modification %.24s (%0lx)\n"
+
+#: file.c:560
+#, possible-c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# Derni�re modification %.24s (%ld)\n"
+
+#: file.c:563
+#, possible-c-format
+msgid "# File has%s been updated.\n"
+msgstr "# Fichier%s mis � jour.\n"
+
+#: file.c:568
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# Commandes en cours d'ex�cution (CECI EST UN BUG)."
+
+#: file.c:571
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# Commandes de d�pendances en cours d'ex�cution (CECI EST UN BUG)."
+
+#: file.c:580
+msgid "# Successfully updated."
+msgstr "# Mise � jour r�ussie"
+
+#: file.c:584
+msgid "# Needs to be updated (-q is set)."
+msgstr "# A besoin d'�tre mis � jour (l'option -q est activ�e)."
+
+#: file.c:587
+msgid "# Failed to be updated."
+msgstr "# N'a pas pu �tre mis � jour."
+
+#: file.c:590
+msgid "# Invalid value in `update_status' member!"
+msgstr "# Valeur non valable dans le membre `update_status' !"
+
+#: file.c:597
+msgid "# Invalid value in `command_state' member!"
+msgstr "# Valeur non valable dans le membre `command_state' !"
+
+#: file.c:616
+msgid ""
+"\n"
+"# Files"
+msgstr "\n# Fichiers"
+
+#: file.c:639
+msgid ""
+"\n"
+"# No files."
+msgstr "\n# Pas de fichiers."
+
+#: file.c:642
+#, possible-c-format
+msgid ""
+"\n"
+"# %u files in %u hash buckets.\n"
+msgstr "\n# %u fichiers dans %u tables de hachage.\n"
+
+#: file.c:644
+#, possible-c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr "# moyenne de %.1f fichiers par table, maximum de %u fichiers dans une table.\n"
+
+#: function.c:648
+msgid "undefined"
+msgstr "ind�fini"
+
+#: function.c:657 variable.c:736
+msgid "default"
+msgstr "d�faut"
+
+#: function.c:660 variable.c:739
+msgid "environment"
+msgstr "environnement"
+
+#: function.c:663
+msgid "file"
+msgstr "fichier"
+
+#: function.c:666
+msgid "environment override"
+msgstr "�crasement par l'environnement"
+
+#: function.c:669 variable.c:748
+msgid "command line"
+msgstr "ligne de commande"
+
+#: function.c:672
+msgid "override"
+msgstr "�crasement"
+
+#: function.c:675 variable.c:754
+msgid "automatic"
+msgstr "automatique"
+
+#: function.c:1087 function.c:1089
+msgid "non-numeric first argument to `word' function"
+msgstr "premier argument de la fonction `word' non num�rique"
+
+#: function.c:1097 function.c:1100
+msgid "the `word' function takes a one-origin index argument"
+msgstr "la fonction `word' prend un argument d'index � une seule origine"
+
+#: function.c:1341
+#, possible-c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "appel � la fonction `%s' non termin� : `%c' manquant"
+
+#: implicit.c:38
+#, possible-c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "Recherche d'une r�gle implicite pour `%s'.\n"
+
+#: implicit.c:53
+#, possible-c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr "Recherche d'une r�gle implicite de membre d'archive pour `%s'.\n"
+
+#: implicit.c:190
+#, possible-c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "�vitement de r�cursion dans une r�gle implicite.%s%s\n"
+
+#: implicit.c:326
+#, possible-c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr "Essai du sch�ma avec `%.*s' comme pr�fixe.\n"
+
+#: implicit.c:365
+#, possible-c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr "Rejet de la %s impossible `%s'.\n"
+
+#: implicit.c:366 implicit.c:374
+msgid "implicit"
+msgstr "d�pendance implicite"
+
+#: implicit.c:366 implicit.c:374
+msgid "rule"
+msgstr "r�gle de d�pendance"
+
+#: implicit.c:373
+#, possible-c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr "Essai de la %s `%s'.\n"
+
+#: implicit.c:393
+#, possible-c-format
+msgid "Found dependency as `%s'.%s\n"
+msgstr "D�pendance trouv�e en tant que `%s'.%s\n"
+
+#: implicit.c:408
+#, possible-c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr "Recherche d'une r�gle contenant le fichier %s `%s'.\n"
+
+#: implicit.c:409
+msgid "intermediate"
+msgstr "interm�diaire"
+
+#: job.c:190
+#, possible-c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] Erreur 0x%x%s"
+
+#: job.c:190
+msgid " (ignored)"
+msgstr " (ignor�e)"
+
+#: job.c:193
+#, possible-c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] Erreur %d (ignor�e)"
+
+#: job.c:194
+#, possible-c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] Erreur %d"
+
+#: job.c:199
+msgid " (core dumped)"
+msgstr " (vidange m�moire)"
+
+#: job.c:234
+#, possible-c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr ""
+"R�ception du signal SIGCHLD ; il y a %d processus fils dont le statut de\n"
+"sortie n'a pas �t� r�cup�.\n"
+
+#: job.c:265
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** Attente des t�ches non termin�es...."
+
+#: job.c:290
+#, possible-c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr "Processus fils actif 0x%08lx PID %d%s\n"
+
+#: job.c:292 job.c:427 job.c:514 job.c:919
+msgid " (remote)"
+msgstr " (distant)"
+
+#: job.c:414
+#, possible-c-format
+msgid "Unknown%s job %d"
+msgstr "T�che%s inconnue %d"
+
+#: job.c:414
+msgid " remote"
+msgstr " distante"
+
+#: job.c:419
+#, possible-c-format
+msgid "%s finished."
+msgstr "%s termin�e."
+
+#: job.c:424
+#, possible-c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr "R�cup�ration du statut de sortie du processus fils %s 0x%08lx PID %d%s\n"
+
+#: job.c:425
+msgid "losing"
+msgstr "perdant"
+
+#: job.c:425
+msgid "winning"
+msgstr "gagnant"
+
+#: job.c:512
+#, possible-c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr "Suppression du processus fils 0x%08lx PID %d%s de la cha�ne.\n"
+
+#: job.c:917
+#, possible-c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr "Ajout du processus fils 0x%08lx PID %05d%s � la cha�ne.\n"
+
+#: job.c:1140
+msgid "cannot enforce load limits on this operating system"
+msgstr "impossible d'imposer des limites de charge sur ce syst�me d'exploitation"
+
+#: job.c:1142
+msgid "cannot enforce load limit: "
+msgstr "impossible d'imposer des limites de charge : "
+
+#: job.c:1244
+#, possible-c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "erreur interne : `%s' command_state %d dans child_handler"
+
+#: job.c:1350
+#, possible-c-format
+msgid "Executing %s instead\n"
+msgstr "Ex�cution de %s � la place\n"
+
+#: job.c:1381
+#, possible-c-format
+msgid "Error spawning, %d\n"
+msgstr "Erreur de lancement de t�che, %d\n"
+
+#: job.c:1442
+#, possible-c-format
+msgid "%s: Command not found"
+msgstr "%s : Commande introuvable"
+
+#: job.c:1471
+#, possible-c-format
+msgid "%s: Shell program not found"
+msgstr "%s : Interpr�teur de commandes introuvable"
+
+#: main.c:224
+msgid "Ignored for compatibility"
+msgstr "Ignor� pour compatibilit�"
+
+#: main.c:227
+msgid "Change to DIRECTORY before doing anything"
+msgstr "Se place dans DIRECTORY avant de faire quoi que ce soit"
+
+#: main.c:230
+msgid "Print lots of debugging information"
+msgstr "Affiche beaucoup d'informations de d�bugging"
+
+#: main.c:233
+msgid "Environment variables override makefiles"
+msgstr "Les variables d'environnement �crasent celles d�finies dans les makefiles"
+
+#: main.c:236
+msgid "Read FILE as a makefile"
+msgstr "Lit FILE en tant que makefile"
+
+#: main.c:239
+msgid "Print this message and exit"
+msgstr "Affiche ce message et quitte"
+
+#: main.c:242
+msgid "Ignore errors from commands"
+msgstr "Ignore les erreurs d'ex�cution des commandes"
+
+#: main.c:245
+msgid "Search DIRECTORY for included makefiles"
+msgstr "Recherche les makefiles inclus dans DIRECTORY"
+
+#: main.c:249
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr "Autorise N t�ches simultan�es ; nombre de t�ches infini si utilis� sans argument"
+
+#: main.c:253
+msgid "Keep going when some targets can't be made"
+msgstr "Continue m�me si certaines cibles n'ont pas pu �tre fabriqu�es"
+
+#: main.c:258 main.c:263
+msgid "Don't start multiple jobs unless load is below N"
+msgstr "N'ex�cute pas de t�ches multiples si la charge d�passe N"
+
+#: main.c:270
+msgid "Don't actually run any commands; just print them"
+msgstr "N'ex�cute pas les commandes ; elles sont juste affich�es"
+
+#: main.c:273
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "Consid�re FILE comme �tant tr�s vieux et ne le refabrique pas"
+
+#: main.c:276
+msgid "Print make's internal database"
+msgstr "Affiche la base de donn�es interne de make"
+
+#: main.c:279
+msgid "Run no commands; exit status says if up to date"
+msgstr "N'ex�cute pas de commandes ; le statut de sortie indique si la cible est � jour"
+
+#: main.c:282
+msgid "Disable the built-in implicit rules"
+msgstr "D�sactive les r�gles implicites internes"
+
+#: main.c:285
+msgid "Don't echo commands"
+msgstr "N'affiche pas les commandes"
+
+#: main.c:289
+msgid "Turns off -k"
+msgstr "D�sactive -k"
+
+#: main.c:292
+msgid "Touch targets instead of remaking them"
+msgstr "Assigne l'heure actuelle aux cibles au lieu de les refabriquer"
+
+#: main.c:295
+msgid "Print the version number of make and exit"
+msgstr "Affiche le num�ro de version de make et quitte"
+
+#: main.c:298
+msgid "Print the current directory"
+msgstr "Affiche le r�pertoire courant"
+
+#: main.c:301
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "D�sactive l'option -w, m�me si elle a �t� activ�e implicitement"
+
+#: main.c:304
+msgid "Consider FILE to be infinitely new"
+msgstr "Consid�re FILE comme �tant infiniment r�cent"
+
+#: main.c:307
+msgid "Warn when an undefined variable is referenced"
+msgstr "Pr�vient quand une variable non d�finie est r�f�renc�e"
+
+#: main.c:394
+msgid "empty string invalid as file name"
+msgstr "une cha�ne vide n'est pas un nom de fichier valable"
+
+#: main.c:781
+msgid "fopen (temporary file)"
+msgstr "fopen (fichier temporaire)"
+
+#: main.c:787
+msgid "fwrite (temporary file)"
+msgstr "fwrite (fichier temporaire)"
+
+#: main.c:930
+msgid "Updating makefiles...."
+msgstr "Mise � jour des makefiles...."
+
+#: main.c:955
+#, possible-c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr "Le makefile `%s' peut boucler ; pas de refabrication.\n"
+
+#: main.c:1029
+#, possible-c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "�chec de refabrication du makefile `%s'."
+
+#: main.c:1044
+#, possible-c-format
+msgid "Included makefile `%s' was not found."
+msgstr "Le makefile inclus `%s' n'a pas �t� trouv�."
+
+#: main.c:1049
+#, possible-c-format
+msgid "Makefile `%s' was not found"
+msgstr "Le makefile `%s' n'a pas �t� trouv�"
+
+#: main.c:1108
+msgid "Couldn't change back to original directory."
+msgstr "Impossible de revenir dans le r�pertoire d'origine."
+
+#: main.c:1142
+msgid "Re-executing:"
+msgstr "R�-ex�cution de :"
+
+#: main.c:1186
+msgid "Updating goal targets...."
+msgstr "Mise � jour des cibles vis�es...."
+
+#: main.c:1211
+msgid "No targets specified and no makefile found"
+msgstr "Pas de cibles sp�cifi�es et aucun makefile n'a �t� trouv�"
+
+#: main.c:1213
+msgid "No targets"
+msgstr "Pas de cibles"
+
+#: main.c:1439
+#, possible-c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "l'option `-%c' prend en argument un entier positif"
+
+#: main.c:1490
+#, possible-c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "Usage : %s [options] [cible] ...\n"
+
+#: main.c:1492
+msgid "Options:\n"
+msgstr "Options:\n"
+
+#: main.c:1967
+#, possible-c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make version %s"
+
+#: main.c:1971
+#, possible-c-format
+msgid ""
+", by Richard Stallman and Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sThis is free software; see the source for copying conditions.\n"
+"%sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n"
+"%sPARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+", par Richard Stallman et Roland McGrath.\n"
+"%sCopyright � 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sCeci est un logiciel gratuit ; voir le source pour les conditions de copie.\n"
+"%sIl n'y a PAS de garantie ; tant pour une utilisation COMMERCIALE que pour\n"
+"%sR�PONDRE � UN BESOIN PARTICULIER.\n"
+"\n"
+
+#: main.c:1993
+#, possible-c-format
+msgid ""
+"\n"
+"# Make data base, printed on %s"
+msgstr "\n# Base de donn�es de Make, imprim�e le %s"
+
+#: main.c:2002
+#, possible-c-format
+msgid ""
+"\n"
+"# Finished Make data base on %s\n"
+msgstr "\n# Fin de la base de donn�es de Make le %s\n"
+
+#: main.c:2053
+msgid "Entering"
+msgstr "Entre dans"
+
+#: main.c:2053
+msgid "Leaving"
+msgstr "Quitte"
+
+#: main.c:2072
+msgid "an unknown directory"
+msgstr "un r�pertoire inconnu"
+
+#: main.c:2074
+#, possible-c-format
+msgid "directory `%s'\n"
+msgstr "le r�pertoire `%s'\n"
+
+#: misc.c:212 misc.c:260
+msgid ". Stop.\n"
+msgstr ". Arr�t.\n"
+
+#: misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "Erreur inconnue 12345678901234567890"
+
+#: misc.c:282
+#, possible-c-format
+msgid "Unknown error %d"
+msgstr "Erreur inconnue %d"
+
+#: misc.c:318 misc.c:330 read.c:2151
+msgid "virtual memory exhausted"
+msgstr "plus assez de m�moire virtuelle"
+
+#: misc.c:536
+#, possible-c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr "Acc�s %s : utilisateur %d (re�l %d), groupe %d (r�el %d)\n"
+
+#: misc.c:556
+msgid "Initialized"
+msgstr "initialis�"
+
+#: misc.c:635
+msgid "User"
+msgstr "utilisateur"
+
+#: misc.c:683
+msgid "Make"
+msgstr "make"
+
+#: misc.c:717
+msgid "Child"
+msgstr "enfant"
+
+#: read.c:129
+msgid "Reading makefiles..."
+msgstr "Lecture des makefiles..."
+
+#: read.c:298
+#, possible-c-format
+msgid "Reading makefile `%s'"
+msgstr "Lecture du makefile `%s'"
+
+#: read.c:300
+msgid " (no default goal)"
+msgstr " (pas de cible par d�faut)"
+
+#: read.c:302
+msgid " (search path)"
+msgstr " (chemin de recherche)"
+
+#: read.c:304
+msgid " (don't care)"
+msgstr " (n'importe pas)"
+
+#: read.c:306
+msgid " (no ~ expansion)"
+msgstr " (pas de remplacement du ~)"
+
+#: read.c:466
+msgid "invalid syntax in conditional"
+msgstr "syntaxe invalide dans la condition"
+
+#: read.c:474
+msgid "extraneous `endef'"
+msgstr "`endef' superflu"
+
+#: read.c:500 read.c:522
+msgid "empty `override' directive"
+msgstr "directive `override' vide"
+
+#: read.c:584
+#, possible-c-format
+msgid "no file name for `%sinclude'"
+msgstr "pas de nom de fichier pour `%sinclude'"
+
+#: read.c:670
+msgid "commands commence before first target"
+msgstr "les commandes commencent avant la premi�re cible"
+
+#: read.c:714
+msgid "missing rule before commands"
+msgstr "r�gle manquante avant les commandes"
+
+#: read.c:733
+msgid "missing separator"
+msgstr "s�parateur manquant"
+
+#: read.c:782
+msgid "missing target pattern"
+msgstr "sch�ma de cible manquant"
+
+#: read.c:784
+msgid "multiple target patterns"
+msgstr "sch�mas de cible multiples"
+
+#: read.c:789
+msgid "target pattern contains no `%%'"
+msgstr "le sch�ma de cible ne contient pas `%%'"
+
+#: read.c:829
+msgid "missing `endif'"
+msgstr "`endif' manquant"
+
+#: read.c:887
+msgid "Extraneous text after `endef' directive"
+msgstr "Texte superflu apr�s la directive `endef'"
+
+#: read.c:917
+msgid "missing `endef', unterminated `define'"
+msgstr "`endef' manquant, `define' non termin�"
+
+#: read.c:973 read.c:1120
+#, possible-c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "Texte superflu apr�s la directive `%s'"
+
+#: read.c:977
+#, possible-c-format
+msgid "extraneous `%s'"
+msgstr "`%s' superflu"
+
+#: read.c:982
+msgid "only one `else' per conditional"
+msgstr "un seul `else' par condition"
+
+#: read.c:1230
+msgid "mixed implicit and static pattern rules"
+msgstr "m�lange de sch�mas de r�gles implicites et statiques"
+
+#: read.c:1233
+msgid "mixed implicit and normal rules"
+msgstr "m�lange de r�gles implicites et normales"
+
+#: read.c:1273
+#, possible-c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr "la cible `%s' ne correspond pas au sch�ma de cible"
+
+#: read.c:1305 read.c:1407
+#, possible-c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr "le fichier cible `%s' a � la fois des entr�es : et ::"
+
+#: read.c:1313
+#, possible-c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr "la cible `%s' appara�t plus d'une fois dans la m�me r�gle."
+
+#: read.c:1322
+#, possible-c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr "attention : �crasement des commandes pour la cible `%s'"
+
+#: read.c:1325
+#, possible-c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr "attention : anciennes commandes ignor�es pour la cible `%s'"
+
+#: read.c:1815
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr "attention : caract�re NUL d�tect� ; le reste de la ligne est ignor�"
+
+#: remake.c:212
+#, possible-c-format
+msgid "Nothing to be done for `%s'."
+msgstr "Rien � faire pour `%s'."
+
+#: remake.c:213
+#, possible-c-format
+msgid "`%s' is up to date."
+msgstr "`%s' est � jour."
+
+#: remake.c:310
+#, possible-c-format
+msgid "Considering target file `%s'.\n"
+msgstr "�tude du fichier cible `%s'.\n"
+
+#: remake.c:316
+#, possible-c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr "Tentative r�cente �chou�e de mettre � jour le fichier `%s'.\n"
+
+#: remake.c:320
+#, possible-c-format
+msgid "File `%s' was considered already.\n"
+msgstr "Le fichier `%s' a d�j� �t� �tudi�.\n"
+
+#: remake.c:330
+#, possible-c-format
+msgid "Still updating file `%s'.\n"
+msgstr "Mise � jour du fichier `%s' en cours.\n"
+
+#: remake.c:333
+#, possible-c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "Fin de la mise � jour du fichier `%s'.\n"
+
+#: remake.c:354
+#, possible-c-format
+msgid "File `%s' does not exist.\n"
+msgstr "Le fichier `%s' n'existe pas.\n"
+
+#: remake.c:364 remake.c:728
+#, possible-c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "R�gle implicite trouv�e pour `%s'.\n"
+
+#: remake.c:366 remake.c:730
+#, possible-c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "Pas de r�gle implicite trouv�e pour `%s'.\n"
+
+#: remake.c:372 remake.c:736
+#, possible-c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "Utilisation des commandes par d�faut pour `%s'.\n"
+
+#: remake.c:392 remake.c:760
+#, possible-c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr "D�pendance circulaire %s <- %s abandonn�e."
+
+#: remake.c:474
+#, possible-c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr "Fin des d�pendances du fichier cible `%s'.\n"
+
+#: remake.c:480
+#, possible-c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr "Les d�pendances de `%s' sont en cours de fabrication.\n"
+
+#: remake.c:493
+#, possible-c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr "Abandon du fichier cible `%s'.\n"
+
+#: remake.c:497
+#, possible-c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "La cible `%s' n'a pas pu �tre refabriqu�e � cause d'erreurs."
+
+#: remake.c:542
+#, possible-c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "La d�pendance `%s' n'existe pas.\n"
+
+#: remake.c:544
+#, possible-c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr "La d�pendance `%s' est %s que `%s' dont elle d�pend.\n"
+
+#: remake.c:545
+msgid "newer"
+msgstr "plus r�cente"
+
+#: remake.c:545
+msgid "older"
+msgstr "plus ancienne"
+
+#: remake.c:556
+#, possible-c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr "La cible `%s' est double deux-points et n'a pas de d�pendances.\n"
+
+#: remake.c:561
+#, possible-c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr "Pas de commandes pour `%s' et aucune d�pendance n'a chang�.\n"
+
+#: remake.c:566
+#, possible-c-format
+msgid "No need to remake target `%s'.\n"
+msgstr "Inutile de refabriquer la cible `%s'.\n"
+
+#: remake.c:571
+#, possible-c-format
+msgid "Must remake target `%s'.\n"
+msgstr "Il faut refabriquer la cible `%s'.\n"
+
+#: remake.c:578
+#, possible-c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "Les commandes de `%s' sont en cours d'ex�cution.\n"
+
+#: remake.c:585
+#, possible-c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "�chec de refabrication du fichier cible `%s'.\n"
+
+#: remake.c:588
+#, possible-c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "Refabrication du fichier cible `%s' r�ussie.\n"
+
+#: remake.c:591
+#, possible-c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr "Le fichier cible `%s' a besoin d'�tre refabriqu� avec l'option -q.\n"
+
+#: remake.c:880
+#, possible-c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%sPas de r�gle pour fabriquer la cible `%s'%s"
+
+#: remake.c:882
+#, possible-c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr "%sPas de r�gle pour fabriquer la cible `%s', n�cessaire pour `%s'%s"
+
+#: remake.c:1053
+#, possible-c-format
+msgid "*** File `%s' has modification time in the future"
+msgstr "*** Le fichier `%s' a une date de modification dans le futur"
+
+#: remote-cstms.c:94
+#, possible-c-format
+msgid "Customs won't export: %s\n"
+msgstr "La douane n'exportera pas : %s\n"
+
+#: remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr "exportation : N'a pas pu cr�er la socket de retour."
+
+#: remote-cstms.c:138
+msgid "exporting: "
+msgstr "exportation : "
+
+#: remote-cstms.c:171
+#, possible-c-format
+msgid "exporting: %s"
+msgstr "exportation : %s"
+
+#: remote-cstms.c:185
+#, possible-c-format
+msgid "Job exported to %s ID %u\n"
+msgstr "T�che export�e vers %s ID %u\n"
+
+#: rule.c:556
+msgid ""
+"\n"
+"# Implicit Rules"
+msgstr "\n# R�gles Implicites"
+
+#: rule.c:571
+msgid ""
+"\n"
+"# No implicit rules."
+msgstr "\n# Pas de r�gles implicites."
+
+#: rule.c:574
+#, possible-c-format
+msgid ""
+"\n"
+"# %u implicit rules, %u"
+msgstr "\n# %u r�gles implicites, %u"
+
+#: rule.c:583
+msgid " terminal."
+msgstr " terminales."
+
+#: rule.c:587
+#, possible-c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr "BUG : num_pattern_rules est faux ! %u != %u"
+
+#: variable.c:658 variable.c:660
+msgid "empty variable name"
+msgstr "nom de variable vide"
+
+#: variable.c:742
+msgid "makefile"
+msgstr "makefile"
+
+#: variable.c:745
+msgid "environment under -e"
+msgstr "environnement avec l'option -e"
+
+#: variable.c:751
+msgid "`override' directive"
+msgstr "directive `override'"
+
+#: variable.c:822
+msgid "# No variables."
+msgstr "# Pas de variables."
+
+#: variable.c:825
+#, possible-c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr "# %u variables dans %u tables de hachage.\n"
+
+#: variable.c:828
+#, possible-c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr "# moyenne de %.1f variables par table, maximum de %u dans une table.\n"
+
+#: variable.c:835
+#, possible-c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr "# moyenne de %d.%d variables par table, maximum de %u dans une table.\n"
+
+#: variable.c:850
+msgid ""
+"\n"
+"# Variables\n"
+msgstr "\n# Variables\n"
+
+#: vpath.c:455
+msgid ""
+"\n"
+"# VPATH Search Paths\n"
+msgstr "\n# Chemins de Recherche VPATH\n"
+
+#: vpath.c:472
+msgid "# No `vpath' search paths."
+msgstr "# Pas de chemins de recherche `vpath'."
+
+#: vpath.c:474
+#, possible-c-format
+msgid ""
+"\n"
+"# %u `vpath' search paths.\n"
+msgstr "\n# %u chemins de recherche `vpath'.\n"
+
+#: vpath.c:477
+msgid ""
+"\n"
+"# No general (`VPATH' variable) search path."
+msgstr "\n# Pas de chemin de recherche g�n�ral (variable `VPATH')."
+
+#: vpath.c:483
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# Chemin de recherche g�n�ral (variable `VPATH') :\n"
+"# "
+
+#: getloadavg.c:948
+msgid "Error getting load average"
+msgstr "Erreur lors de l'obtention de la charge moyenne"
+
+#: getloadavg.c:952
+#, possible-c-format
+msgid "1-minute: %f "
+msgstr "1 minute : %f "
+
+#: getloadavg.c:954
+#, possible-c-format
+msgid "5-minute: %f "
+msgstr "5 minutes : %f "
+
+#: getloadavg.c:956
+#, possible-c-format
+msgid "15-minute: %f "
+msgstr "15 minutes : %f "
+
+#: getopt.c:565
+#, possible-c-format
+msgid "%s: option `%s' is ambiguous\n"
+msgstr "%s : l'option `%s' est ambigu�\n"
+
+#: getopt.c:589
+#, possible-c-format
+msgid "%s: option `--%s' doesn't allow an argument\n"
+msgstr "%s : l'option `--%s' ne prend pas d'argument\n"
+
+#: getopt.c:594
+#, possible-c-format
+msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgstr "%s : l'option `%c%s' ne prend pas d'argument\n"
+
+#: getopt.c:611
+#, possible-c-format
+msgid "%s: option `%s' requires an argument\n"
+msgstr "%s : l'option `%s' n�cessite un argument\n"
+
+#: getopt.c:640
+#, possible-c-format
+msgid "%s: unrecognized option `--%s'\n"
+msgstr "%s : option non reconnue `--%s'\n"
+
+#: getopt.c:644
+#, possible-c-format
+msgid "%s: unrecognized option `%c%s'\n"
+msgstr "%s : option non reconnue `%c%s'\n"
+
+#: getopt.c:670
+#, possible-c-format
+msgid "%s: illegal option -- %c\n"
+msgstr "%s : option ill�gale -- %c\n"
+
+#: getopt.c:673
+#, possible-c-format
+msgid "%s: invalid option -- %c\n"
+msgstr "%s : option invalide -- %c\n"
+
+#: getopt.c:709
+#, possible-c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s : l'option n�cessite un argument -- %c\n"
+
+#: getopt.c:777 getopt1.c:141
+msgid "digits occur in two different argv-elements.\n"
+msgstr "des chiffres apparaissent dans deux �l�ments diff�rents de argv.\n"
+
+#: getopt.c:779 getopt1.c:143
+#, possible-c-format
+msgid "option %c\n"
+msgstr "option %c\n"
+
+#: getopt.c:783 getopt1.c:147
+msgid "option a\n"
+msgstr "option a\n"
+
+#: getopt.c:787 getopt1.c:151
+msgid "option b\n"
+msgstr "option b\n"
+
+#: getopt.c:791 getopt1.c:155
+#, possible-c-format
+msgid "option c with value `%s'\n"
+msgstr "option c ayant pour valeur `%s'\n"
+
+#: getopt.c:798 getopt1.c:166
+#, possible-c-format
+msgid "?? getopt returned character code 0%o ??\n"
+msgstr "?? getopt a renvoy� le caract�re de code 0%o ??\n"
+
+#: getopt.c:804 getopt1.c:172
+msgid "non-option ARGV-elements: "
+msgstr "�l�ments de ARGV qui ne sont pas des options : "
+
+#: getopt1.c:159
+#, possible-c-format
+msgid "option d with value `%s'\n"
+msgstr "option d ayant pour valeur `%s'\n"
+
+#: signame.c:57
+msgid "unknown signal"
+msgstr "signal inconnu"
+
+#: signame.c:107
+msgid "Hangup"
+msgstr "Raccroch�"
+
+#: signame.c:110
+msgid "Interrupt"
+msgstr "Interruption"
+
+#: signame.c:113
+msgid "Quit"
+msgstr "Quitte"
+
+#: signame.c:116
+msgid "Illegal Instruction"
+msgstr "Instruction Ill�gale"
+
+#: signame.c:119
+msgid "Trace/breakpoint trap"
+msgstr "Point de trace/arr�t"
+
+#: signame.c:124
+msgid "Aborted"
+msgstr "Avort�"
+
+#: signame.c:127
+msgid "IOT trap"
+msgstr "Appel IOT"
+
+#: signame.c:130
+msgid "EMT trap"
+msgstr "Appel �mulateur"
+
+#: signame.c:133
+msgid "Floating point exception"
+msgstr "Exception num�rique"
+
+#: signame.c:136
+msgid "Killed"
+msgstr "Tu�"
+
+#: signame.c:139
+msgid "Bus error"
+msgstr "Erreur de bus"
+
+#: signame.c:142
+msgid "Segmentation fault"
+msgstr "Erreur de segmentation"
+
+#: signame.c:145
+msgid "Bad system call"
+msgstr "Appel syst�me invalide"
+
+#: signame.c:148
+msgid "Broken pipe"
+msgstr "Tube cass�"
+
+#: signame.c:151
+msgid "Alarm clock"
+msgstr "Alarme"
+
+#: signame.c:154
+msgid "Terminated"
+msgstr "Termin�"
+
+#: signame.c:157
+msgid "User defined signal 1"
+msgstr "Signal utilisateur 1"
+
+#: signame.c:160
+msgid "User defined signal 2"
+msgstr "Signal utilisateur 2"
+
+#: signame.c:165 signame.c:168
+msgid "Child exited"
+msgstr "Fin d'un fils"
+
+#: signame.c:171
+msgid "Power failure"
+msgstr "Panne de courant"
+
+#: signame.c:174
+msgid "Stopped"
+msgstr "Arr�t�"
+
+#: signame.c:177
+msgid "Stopped (tty input)"
+msgstr "Arr�t� (lecture sur tty)"
+
+#: signame.c:180
+msgid "Stopped (tty output)"
+msgstr "Arr�t� (�criture sur tty)"
+
+#: signame.c:183
+msgid "Stopped (signal)"
+msgstr "Arr�t� (signal)"
+
+#: signame.c:186
+msgid "CPU time limit exceeded"
+msgstr "Limite du temps CPU atteinte"
+
+#: signame.c:189
+msgid "File size limit exceeded"
+msgstr "Limite de taille de fichier atteinte"
+
+#: signame.c:192
+msgid "Virtual timer expired"
+msgstr "Timer virtuel expir�"
+
+#: signame.c:195
+msgid "Profiling timer expired"
+msgstr "Timer de profiling expir�"
+
+#: signame.c:201
+msgid "Window changed"
+msgstr "Changement de taille de la fen�tre"
+
+#: signame.c:204
+msgid "Continued"
+msgstr "Reprise"
+
+#: signame.c:207
+msgid "Urgent I/O condition"
+msgstr "Condition d'E/S urgente"
+
+#: signame.c:214 signame.c:223
+msgid "I/O possible"
+msgstr "E/S possible"
+
+#: signame.c:217
+msgid "SIGWIND"
+msgstr "SIGWIND"
+
+#: signame.c:220
+msgid "SIGPHONE"
+msgstr "SIGPHONE"
+
+#: signame.c:226
+msgid "Resource lost"
+msgstr "Ressource perdue"
+
+#: signame.c:229
+msgid "Danger signal"
+msgstr "Signal de danger"
+
+#: signame.c:232
+msgid "Information request"
+msgstr "Demande d'informations"
+
+#: signame.c:286
+#, possible-c-format
+msgid "%s: unknown signal"
+msgstr "%s : signal inconnu"
+
+#: signame.c:299
+msgid "Signal 12345678901234567890"
+msgstr "Signal 12345678901234567890"
+
+#: signame.c:304
+#, possible-c-format
+msgid "Signal %d"
+msgstr "Signal %d"
diff --git a/i18n/ko.po b/i18n/ko.po
new file mode 100644
index 0000000..12adbdf
--- /dev/null
+++ b/i18n/ko.po
@@ -0,0 +1,1445 @@
+# Korean messages for GNU make.
+# Copyright (C) 1996 Free Software Foundation, Inc.
+# Bang Jun Young <bangjy@nownuri.nowcom.co.kr>, 1996.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: GNU make 3.74.4\n"
+"POT-Creation-Date: 1996-05-22 09:11-0400\n"
+"PO-Revision-Date: 1996-08-19 14:19+0900\n"
+"Last-Translator: Bang Jun Young <bangjy@nownuri.nowcom.co.kr>\n"
+"Language-Team: Korean <ko@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=EUC-KR\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#: ar.c:48
+#, possible-c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "�������� �ʴ� ����� ����Ϸ��� ��: `%s'"
+
+#: ar.c:142
+#, possible-c-format
+msgid "Error in lbr$ini_control, %d\n"
+msgstr "lbr$ini_control, %d�� ����\n"
+
+#: ar.c:147
+#, possible-c-format
+msgid "Error opening library %s to lookup member %s, %d\n"
+msgstr "��� %s�� �����ϱ� ���� ���̺귯�� %s�� ���� ���� ���� �߻�, %d\n"
+
+#: ar.c:153
+#, possible-c-format
+msgid "Error looking up module %s in library %s, %d\n"
+msgstr "���̺귯�� %s�� �ִ� ��� %s�� �����ϴ� ���� ���� �߻�, %d\n"
+
+#: ar.c:159
+#, possible-c-format
+msgid "Error getting module info, %d\n"
+msgstr "��� ������ ��� ���� ���� �߻�, %d\n"
+
+#: ar.c:244
+msgid "touch archive member is not available on VMS"
+msgstr ""
+
+#: ar.c:276
+#, possible-c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "touch: ���� `%s'�� �������� �ʽ��ϴ�"
+
+#: ar.c:279
+#, possible-c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "touch: `%s'�� ������ ������ �ƴմϴ�"
+
+#: ar.c:282
+msgid "touch: "
+msgstr "touch: "
+
+#: ar.c:285
+#, possible-c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "touch: ��� `%s'�� `%s'�� �������� �ʽ��ϴ�"
+
+#: ar.c:291
+#, possible-c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr ""
+
+#: arscan.c:550
+msgid " (name might be truncated)"
+msgstr ""
+
+#: arscan.c:552
+#, possible-c-format
+msgid " Date %s"
+msgstr " ��¥ %s"
+
+#: arscan.c:553
+#, possible-c-format
+msgid " uid = %d, gid = %d, mode = 0%o.\n"
+msgstr " uid = %d, gid = %d, ��� = 0%o.\n"
+
+#: dir.c:678
+msgid ""
+"\n"
+"# Directories\n"
+msgstr ""
+"\n"
+"# ���丮\n"
+
+#: dir.c:686
+#, possible-c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr ""
+
+#: dir.c:689
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr "# %s (��ġ %d, ���̳�� [%d,%d,%d]): �� �� �����ϴ�.\n"
+
+#: dir.c:694
+#, possible-c-format
+msgid "# %s (device %d, inode %d): could not be opened.\n"
+msgstr "# %s (��ġ %d, ���̳�� %d): �� �� �����ϴ�.\n"
+
+#: dir.c:709
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): "
+msgstr "# %s (��ġ %d, ���̳�� [%d,%d,%d]): "
+
+#: dir.c:714
+#, possible-c-format
+msgid "# %s (device %d, inode %d): "
+msgstr "# %s (��ġ %d, ���̳�� %d): "
+
+#: dir.c:718 dir.c:738
+msgid "No"
+msgstr ""
+
+#: dir.c:721 dir.c:741
+msgid " files, "
+msgstr ""
+
+#: dir.c:723 dir.c:743
+msgid "no"
+msgstr ""
+
+#: dir.c:726
+msgid " impossibilities"
+msgstr " �Ұ���"
+
+#: dir.c:730
+msgid " so far."
+msgstr " ���ݱ���."
+
+#: dir.c:746
+#, possible-c-format
+msgid " impossibilities in %u directories.\n"
+msgstr ""
+
+#: expand.c:92 expand.c:97
+#, possible-c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "��� ���� `%s'�� �ڱ� �ڽ��� �����ϰ� �ֽ��ϴ� (�ᱹ)"
+
+#: expand.c:120
+#, possible-c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "���: ���ǵ��� ���� ���� `%.*s'"
+
+#: expand.c:223 expand.c:225
+msgid "unterminated variable reference"
+msgstr "������� ���� ���� ����"
+
+#: file.c:264
+#, possible-c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr ""
+
+#: file.c:270
+#, possible-c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr "���� `%s'�� ���� ������ ������ ��Ģ Ž������ ã�ҽ��ϴ�."
+
+#: file.c:274
+#, possible-c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr "������ `%s'�� ���� `%s'�� ���� ���Ϸ� ���ֵ˴ϴ�."
+
+#: file.c:278
+#, possible-c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr ""
+
+#: file.c:299
+#, possible-c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr "���� �ݷ� `%s'�� ���� �ݷ� `%s'�� �̸��ٲ� �� �����ϴ�"
+
+#: file.c:302
+#, possible-c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr "���� �ݷ� `%s'�� ���� �ݷ� `%s'�� �̸��ٲ� �� �����ϴ�"
+
+#: file.c:363
+#, possible-c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr ""
+
+#: file.c:523
+msgid "# Not a target:"
+msgstr "# ��ǥ �ƴ�:"
+
+#: file.c:531
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr ""
+
+#: file.c:533
+msgid "# Phony target (dependency of .PHONY)."
+msgstr ""
+
+#: file.c:535
+msgid "# Command-line target."
+msgstr "# ������ ��ǥ."
+
+#: file.c:537
+msgid "# A default or MAKEFILES makefile."
+msgstr ""
+
+#: file.c:538
+#, possible-c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# ������ ��Ģ Ž���� �Ϸ�%s�Ǿ����ϴ�.\n"
+
+#: file.c:539 file.c:564
+msgid " not"
+msgstr ""
+
+#: file.c:541
+#, possible-c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr ""
+
+#: file.c:543
+msgid "# File is an intermediate dependency."
+msgstr ""
+
+#: file.c:546
+msgid "# Also makes:"
+msgstr ""
+
+#: file.c:552
+msgid "# Modification time never checked."
+msgstr "# ���� �ð��� ���� �˻���� �ʾ���."
+
+#: file.c:554
+msgid "# File does not exist."
+msgstr "# ������ �������� �ʽ��ϴ�."
+
+#: file.c:557
+#, possible-c-format
+msgid "# Last modified %.24s (%0lx)\n"
+msgstr "# ������ ���� %.24s (%0lx)\n"
+
+#: file.c:560
+#, possible-c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# ������ ���� %.24s (%ld)\n"
+
+#: file.c:563
+#, possible-c-format
+msgid "# File has%s been updated.\n"
+msgstr "# ������%s ���ŵǾ����ϴ�.\n"
+
+#: file.c:568
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# ���� �������� ���� (�̰��� �����Դϴ�)."
+
+#: file.c:571
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# ���� �������� ������ (�̰��� �����Դϴ�)."
+
+#: file.c:580
+msgid "# Successfully updated."
+msgstr "# ���������� ���ŵ�."
+
+#: file.c:584
+msgid "# Needs to be updated (-q is set)."
+msgstr "# ���ŵ� �ʿ䰡 ���� (-q ������)."
+
+#: file.c:587
+msgid "# Failed to be updated."
+msgstr "# ���ſ� ������."
+
+#: file.c:590
+msgid "# Invalid value in `update_status' member!"
+msgstr ""
+
+#: file.c:597
+msgid "# Invalid value in `command_state' member!"
+msgstr ""
+
+#: file.c:616
+msgid ""
+"\n"
+"# Files"
+msgstr ""
+
+#: file.c:639
+msgid ""
+"\n"
+"# No files."
+msgstr ""
+
+#: file.c:642
+#, possible-c-format
+msgid ""
+"\n"
+"# %u files in %u hash buckets.\n"
+msgstr ""
+
+#: file.c:644
+#, possible-c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr ""
+
+#: function.c:648
+msgid "undefined"
+msgstr "���ǵ��� ����"
+
+#: function.c:657 variable.c:736
+msgid "default"
+msgstr "�⺻��"
+
+#: function.c:660 variable.c:739
+msgid "environment"
+msgstr "ȯ��"
+
+#: function.c:663
+msgid "file"
+msgstr "����"
+
+#: function.c:666
+msgid "environment override"
+msgstr ""
+
+#: function.c:669 variable.c:748
+msgid "command line"
+msgstr "������"
+
+#: function.c:672
+msgid "override"
+msgstr ""
+
+#: function.c:675 variable.c:754
+msgid "automatic"
+msgstr "�ڵ�"
+
+#: function.c:1087 function.c:1089
+msgid "non-numeric first argument to `word' function"
+msgstr ""
+
+#: function.c:1097 function.c:1100
+msgid "the `word' function takes a one-origin index argument"
+msgstr ""
+
+#: function.c:1341
+#, possible-c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "�Լ� `%s'�� ���� ������� ���� ȣ��: `%c'�� ������"
+
+#: implicit.c:38
+#, possible-c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "`%s'�� ���� ������ ��Ģ�� ã�� �ֽ��ϴ�.\n"
+
+#: implicit.c:53
+#, possible-c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr ""
+
+#: implicit.c:190
+#, possible-c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "������ ��Ģ�� ��͸� ����.%s%s\n"
+
+#: implicit.c:326
+#, possible-c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr ""
+
+#: implicit.c:365
+#, possible-c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr ""
+
+#: implicit.c:366 implicit.c:374
+msgid "implicit"
+msgstr "������"
+
+#: implicit.c:366 implicit.c:374
+msgid "rule"
+msgstr "��Ģ"
+
+#: implicit.c:373
+#, possible-c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr ""
+
+#: implicit.c:393
+#, possible-c-format
+msgid "Found dependency as `%s'.%s\n"
+msgstr ""
+
+#: implicit.c:408
+#, possible-c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr ""
+
+#: implicit.c:409
+msgid "intermediate"
+msgstr ""
+
+#: job.c:190
+#, possible-c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] ���� 0x%x%s"
+
+#: job.c:190
+msgid " (ignored)"
+msgstr " (���õ�)"
+
+#: job.c:193
+#, possible-c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] ���� %d (���õ�)"
+
+#: job.c:194
+#, possible-c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] ���� %d"
+
+#: job.c:199
+msgid " (core dumped)"
+msgstr ""
+
+#: job.c:234
+#, possible-c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr ""
+
+#: job.c:265
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** ������ ���� �۾��� ��ٸ��� �ֽ��ϴ�...."
+
+#: job.c:290
+#, possible-c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr ""
+
+#: job.c:292 job.c:427 job.c:514 job.c:919
+msgid " (remote)"
+msgstr " (����)"
+
+#: job.c:414
+#, possible-c-format
+msgid "Unknown%s job %d"
+msgstr "�� �� ����%s �۾� %d"
+
+#: job.c:414
+msgid " remote"
+msgstr " ����"
+
+#: job.c:419
+#, possible-c-format
+msgid "%s finished."
+msgstr "%s�� �������ϴ�."
+
+#: job.c:424
+#, possible-c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr ""
+
+#: job.c:425
+msgid "losing"
+msgstr ""
+
+#: job.c:425
+msgid "winning"
+msgstr ""
+
+#: job.c:512
+#, possible-c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr ""
+
+#: job.c:917
+#, possible-c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr ""
+
+#: job.c:1140
+msgid "cannot enforce load limits on this operating system"
+msgstr "�� � ü�������� ���� ������ ������ �� �����ϴ�"
+
+#: job.c:1142
+msgid "cannot enforce load limit: "
+msgstr "���� ������ ������ �� �����ϴ�: "
+
+#: job.c:1244
+#, possible-c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "���� ����: child_handler�� `%s' command_state %d"
+
+#: job.c:1350
+#, possible-c-format
+msgid "Executing %s instead\n"
+msgstr "��� %s�� ������\n"
+
+#: job.c:1381
+#, possible-c-format
+msgid "Error spawning, %d\n"
+msgstr ""
+
+#: job.c:1442
+#, possible-c-format
+msgid "%s: Command not found"
+msgstr "%s: ������ � ������"
+
+#: job.c:1471
+#, possible-c-format
+msgid "%s: Shell program not found"
+msgstr "%s: �� ���α׷��� ã�� ������"
+
+#: main.c:224
+msgid "Ignored for compatibility"
+msgstr "ȣȯ���� ���� ���õ�"
+
+#: main.c:227
+msgid "Change to DIRECTORY before doing anything"
+msgstr ""
+
+#: main.c:230
+msgid "Print lots of debugging information"
+msgstr "���� ���� ����� ������ ����մϴ�"
+
+#: main.c:233
+msgid "Environment variables override makefiles"
+msgstr ""
+
+#: main.c:236
+msgid "Read FILE as a makefile"
+msgstr "FILE������ ����ũ���Ϸ� �н��ϴ�"
+
+#: main.c:239
+msgid "Print this message and exit"
+msgstr "�� �޽����� ����ϰ� �����ϴ�"
+
+#: main.c:242
+msgid "Ignore errors from commands"
+msgstr "���ɿ� �ִ� ������ �����մϴ�"
+
+#: main.c:245
+msgid "Search DIRECTORY for included makefiles"
+msgstr ""
+
+#: main.c:249
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr ""
+
+#: main.c:253
+msgid "Keep going when some targets can't be made"
+msgstr ""
+
+#: main.c:258 main.c:263
+msgid "Don't start multiple jobs unless load is below N"
+msgstr "���ϰ� N ���� ���� ������ ���� �۾��� �������� �ʽ��ϴ�"
+
+#: main.c:270
+msgid "Don't actually run any commands; just print them"
+msgstr "������ � ���ɵ� �������� �ʽ��ϴ�; �׳� �μ⸸ �մϴ�"
+
+#: main.c:273
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "FILE�� �ſ� ������ ������ �����ϰ� �ٽ� ������ �ʽ��ϴ�"
+
+#: main.c:276
+msgid "Print make's internal database"
+msgstr "make�� ���� ����Ÿ���̽��� ����մϴ�"
+
+#: main.c:279
+msgid "Run no commands; exit status says if up to date"
+msgstr "������ �������� �ʽ��ϴ�; ���� ��Ȳ�� ���� ���θ� ���� �ݴϴ�"
+
+#: main.c:282
+msgid "Disable the built-in implicit rules"
+msgstr "���� ������ ��Ģ�� ��� �Ұ����ϰ� �մϴ�"
+
+#: main.c:285
+msgid "Don't echo commands"
+msgstr "������ �������� �ʽ��ϴ�"
+
+#: main.c:289
+msgid "Turns off -k"
+msgstr "-k�� ���ϴ�"
+
+#: main.c:292
+msgid "Touch targets instead of remaking them"
+msgstr ""
+
+#: main.c:295
+msgid "Print the version number of make and exit"
+msgstr "make�� ���� ��ȣ�� ����ϰ� �����ϴ�"
+
+#: main.c:298
+msgid "Print the current directory"
+msgstr "���� ���丮�� ����մϴ�"
+
+#: main.c:301
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "���������� ���� �ִ��� -w�� ���ϴ�"
+
+#: main.c:304
+msgid "Consider FILE to be infinitely new"
+msgstr "������ ������ ���ο� ������ �����մϴ�"
+
+#: main.c:307
+msgid "Warn when an undefined variable is referenced"
+msgstr "���ǵ��� ���� ������ ������ �� ����� ���ϴ�"
+
+#: main.c:394
+msgid "empty string invalid as file name"
+msgstr "�� ���ڿ��� ���� �̸����� �������մϴ�"
+
+#: main.c:781
+msgid "fopen (temporary file)"
+msgstr "fopen (�ӽ� ����)"
+
+#: main.c:787
+msgid "fwrite (temporary file)"
+msgstr "fwrite (�ӽ� ����)"
+
+#: main.c:930
+msgid "Updating makefiles...."
+msgstr ""
+
+#: main.c:955
+#, possible-c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr ""
+
+#: main.c:1029
+#, possible-c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "����ũ���� `%s'�� �ٽ� ����µ� ������."
+
+#: main.c:1044
+#, possible-c-format
+msgid "Included makefile `%s' was not found."
+msgstr "���Ե� ����ũ���� `%s'�� ã�� ���߽��ϴ�."
+
+#: main.c:1049
+#, possible-c-format
+msgid "Makefile `%s' was not found"
+msgstr "����ũ���� `%s'�� ã�� ���߽��ϴ�"
+
+#: main.c:1108
+msgid "Couldn't change back to original directory."
+msgstr "���� ���丮�� ���ư� �� �����ϴ�."
+
+#: main.c:1142
+msgid "Re-executing:"
+msgstr "�����:"
+
+#: main.c:1186
+msgid "Updating goal targets...."
+msgstr ""
+
+#: main.c:1211
+msgid "No targets specified and no makefile found"
+msgstr ""
+
+#: main.c:1213
+msgid "No targets"
+msgstr "��ǥ ����"
+
+#: main.c:1439
+#, possible-c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "`-%c' �ɼ��� ���� ���� �μ��� �ʿ��մϴ�"
+
+#: main.c:1490
+#, possible-c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "����: %s [�ɼ�] [��ǥ] ...\n"
+
+#: main.c:1492
+msgid "Options:\n"
+msgstr "�ɼ�:\n"
+
+#: main.c:1967
+#, possible-c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make ���� %s"
+
+#: main.c:1971
+#, possible-c-format
+msgid ""
+", by Richard Stallman and Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sThis is free software; see the source for copying conditions.\n"
+"%sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n"
+"%sPARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+
+#: main.c:1993
+#, possible-c-format
+msgid ""
+"\n"
+"# Make data base, printed on %s"
+msgstr ""
+
+#: main.c:2002
+#, possible-c-format
+msgid ""
+"\n"
+"# Finished Make data base on %s\n"
+msgstr ""
+
+#: main.c:2053
+msgid "Entering"
+msgstr "��"
+
+#: main.c:2053
+msgid "Leaving"
+msgstr "����"
+
+#: main.c:2072
+msgid "an unknown directory"
+msgstr "�� �� ���� ���丮"
+
+#: main.c:2074
+#, possible-c-format
+msgid "directory `%s'\n"
+msgstr "`%s' ���丮\n"
+
+#: misc.c:212 misc.c:260
+msgid ". Stop.\n"
+msgstr ". ����.\n"
+
+#: misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "�� �� ���� ���� 12345678901234567890"
+
+#: misc.c:282
+#, possible-c-format
+msgid "Unknown error %d"
+msgstr "�� �� ���� ���� %d"
+
+#: misc.c:318 misc.c:330 read.c:2151
+msgid "virtual memory exhausted"
+msgstr "���� �޸𸮰� ������"
+
+#: misc.c:536
+#, possible-c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr "%s ����: ����� %d (���� %d), �׷� %d (���� %d)\n"
+
+#: misc.c:556
+msgid "Initialized"
+msgstr "�ʱ�ȭ��"
+
+#: misc.c:635
+msgid "User"
+msgstr "�����"
+
+#: misc.c:683
+msgid "Make"
+msgstr ""
+
+#: misc.c:717
+msgid "Child"
+msgstr "�ڽ�"
+
+#: read.c:129
+msgid "Reading makefiles..."
+msgstr ""
+
+#: read.c:298
+#, possible-c-format
+msgid "Reading makefile `%s'"
+msgstr "����ũ���� `%s'�� �а� �ֽ��ϴ�"
+
+#: read.c:300
+msgid " (no default goal)"
+msgstr ""
+
+#: read.c:302
+msgid " (search path)"
+msgstr " (Ž�� ���)"
+
+#: read.c:304
+msgid " (don't care)"
+msgstr " (��� ����)"
+
+#: read.c:306
+msgid " (no ~ expansion)"
+msgstr " (~ Ȯ�� ����)"
+
+#: read.c:466
+msgid "invalid syntax in conditional"
+msgstr "���ǹ��� �������� ������ ����"
+
+#: read.c:474
+msgid "extraneous `endef'"
+msgstr "������ `endef'"
+
+#: read.c:500 read.c:522
+msgid "empty `override' directive"
+msgstr "�� `override' ������"
+
+#: read.c:584
+#, possible-c-format
+msgid "no file name for `%sinclude'"
+msgstr ""
+
+#: read.c:670
+msgid "commands commence before first target"
+msgstr ""
+
+#: read.c:714
+msgid "missing rule before commands"
+msgstr "���� �տ� ��Ģ�� ������"
+
+#: read.c:733
+msgid "missing separator"
+msgstr "�и���ȣ�� ������"
+
+#: read.c:782
+msgid "missing target pattern"
+msgstr "��ǥ ������ ������"
+
+#: read.c:784
+msgid "multiple target patterns"
+msgstr "���� ��ǥ ����"
+
+#: read.c:789
+msgid "target pattern contains no `%%'"
+msgstr ""
+
+#: read.c:829
+msgid "missing `endif'"
+msgstr "`endif'�� ������"
+
+#: read.c:887
+msgid "Extraneous text after `endef' directive"
+msgstr "`endef' ������ �ڿ� ������ ���� ����"
+
+#: read.c:917
+msgid "missing `endef', unterminated `define'"
+msgstr "`endef'�� ������. ������� ���� `define'"
+
+#: read.c:973 read.c:1120
+#, possible-c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "`%s' ������ �ڿ� ������ ������ ����"
+
+#: read.c:977
+#, possible-c-format
+msgid "extraneous `%s'"
+msgstr "������ `%s'"
+
+#: read.c:982
+msgid "only one `else' per conditional"
+msgstr ""
+
+#: read.c:1230
+msgid "mixed implicit and static pattern rules"
+msgstr ""
+
+#: read.c:1233
+msgid "mixed implicit and normal rules"
+msgstr "ȥ�յ� ������ ��Ģ�� �Ϲ��� ��Ģ"
+
+#: read.c:1273
+#, possible-c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr ""
+
+#: read.c:1305 read.c:1407
+#, possible-c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr ""
+
+#: read.c:1313
+#, possible-c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr ""
+
+#: read.c:1322
+#, possible-c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr ""
+
+#: read.c:1325
+#, possible-c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr ""
+
+#: read.c:1815
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr ""
+
+#: remake.c:212
+#, possible-c-format
+msgid "Nothing to be done for `%s'."
+msgstr ""
+
+#: remake.c:213
+#, possible-c-format
+msgid "`%s' is up to date."
+msgstr "`%s'�� �̹� ���ŵǾ����ϴ�."
+
+#: remake.c:310
+#, possible-c-format
+msgid "Considering target file `%s'.\n"
+msgstr ""
+
+#: remake.c:316
+#, possible-c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr ""
+
+#: remake.c:320
+#, possible-c-format
+msgid "File `%s' was considered already.\n"
+msgstr "���� `%s'�� �̹� ����Ǿ����ϴ�.\n"
+
+#: remake.c:330
+#, possible-c-format
+msgid "Still updating file `%s'.\n"
+msgstr "���� `%s' ������ �����ϰ� �ֽ��ϴ�.\n"
+
+#: remake.c:333
+#, possible-c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "`%s' ������ ������ ���ƽ��ϴ�.\n"
+
+#: remake.c:354
+#, possible-c-format
+msgid "File `%s' does not exist.\n"
+msgstr "`%s' ������ �������� �ʽ��ϴ�.\n"
+
+#: remake.c:364 remake.c:728
+#, possible-c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "`%s'�� ���� ������ ��Ģ�� ã�ҽ��ϴ�.\n"
+
+#: remake.c:366 remake.c:730
+#, possible-c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "`%s'�� ���� ������ ��Ģ�� ã�� ���߽��ϴ�.\n"
+
+#: remake.c:372 remake.c:736
+#, possible-c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "`%s'�� ���� ������ ������ �����.\n"
+
+#: remake.c:392 remake.c:760
+#, possible-c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr ""
+
+#: remake.c:474
+#, possible-c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr ""
+
+#: remake.c:480
+#, possible-c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr ""
+
+#: remake.c:493
+#, possible-c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr ""
+
+#: remake.c:497
+#, possible-c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "������ ���� ��ǥ `%s'�� �ٽ� ������ ���߽��ϴ�."
+
+#: remake.c:542
+#, possible-c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "������ `%s'�� �������� �ʽ��ϴ�.\n"
+
+#: remake.c:544
+#, possible-c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr ""
+
+#: remake.c:545
+msgid "newer"
+msgstr ""
+
+#: remake.c:545
+msgid "older"
+msgstr ""
+
+#: remake.c:556
+#, possible-c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr ""
+
+#: remake.c:561
+#, possible-c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr ""
+
+#: remake.c:566
+#, possible-c-format
+msgid "No need to remake target `%s'.\n"
+msgstr "��ǥ `%s'�� �ٽ� ���� �ʿ�����ϴ�.\n"
+
+#: remake.c:571
+#, possible-c-format
+msgid "Must remake target `%s'.\n"
+msgstr "��ǥ `%s'�� �ٽ� ������ �մϴ�.\n"
+
+#: remake.c:578
+#, possible-c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "`%s'��� ������ ���� ���Դϴ�.\n"
+
+#: remake.c:585
+#, possible-c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "��ǥ ���� `%s'�� �ٽ� ����� �� �����߽��ϴ�.\n"
+
+#: remake.c:588
+#, possible-c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "��ǥ ���� `%s'�� ���������� �ٽ� ��������ϴ�.\n"
+
+#: remake.c:591
+#, possible-c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr ""
+
+#: remake.c:880
+#, possible-c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%s��ǥ `%s'�� ���� ��Ģ�� ����%s"
+
+#: remake.c:882
+#, possible-c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr ""
+
+#: remake.c:1053
+#, possible-c-format
+msgid "*** File `%s' has modification time in the future"
+msgstr "*** ���� `%s'�� �̷��� ���� �ð��� ������ �ֽ��ϴ�"
+
+#: remote-cstms.c:94
+#, possible-c-format
+msgid "Customs won't export: %s\n"
+msgstr ""
+
+#: remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr ""
+
+#: remote-cstms.c:138
+msgid "exporting: "
+msgstr ""
+
+#: remote-cstms.c:171
+#, possible-c-format
+msgid "exporting: %s"
+msgstr ""
+
+#: remote-cstms.c:185
+#, possible-c-format
+msgid "Job exported to %s ID %u\n"
+msgstr ""
+
+#: rule.c:556
+msgid ""
+"\n"
+"# Implicit Rules"
+msgstr ""
+"\n"
+"# ������ ��Ģ"
+
+#: rule.c:571
+msgid ""
+"\n"
+"# No implicit rules."
+msgstr ""
+"\n"
+"# ������ ��Ģ ����."
+
+#: rule.c:574
+#, possible-c-format
+msgid ""
+"\n"
+"# %u implicit rules, %u"
+msgstr ""
+
+#: rule.c:583
+msgid " terminal."
+msgstr ""
+
+#: rule.c:587
+#, possible-c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr ""
+
+#: variable.c:658 variable.c:660
+msgid "empty variable name"
+msgstr "�� ���� �̸�"
+
+#: variable.c:742
+msgid "makefile"
+msgstr ""
+
+#: variable.c:745
+msgid "environment under -e"
+msgstr "-e ���� ȯ��"
+
+#: variable.c:751
+msgid "`override' directive"
+msgstr "`override' ������"
+
+#: variable.c:822
+msgid "# No variables."
+msgstr "# ���� ����."
+
+#: variable.c:825
+#, possible-c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr ""
+
+#: variable.c:828
+#, possible-c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr ""
+
+#: variable.c:835
+#, possible-c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr ""
+
+#: variable.c:850
+msgid ""
+"\n"
+"# Variables\n"
+msgstr ""
+
+#: vpath.c:455
+msgid ""
+"\n"
+"# VPATH Search Paths\n"
+msgstr ""
+"\n"
+"# VPATH Ž�� ���\n"
+
+#: vpath.c:472
+msgid "# No `vpath' search paths."
+msgstr "# `vpath' Ž�� ��ΰ� ����."
+
+#: vpath.c:474
+#, possible-c-format
+msgid ""
+"\n"
+"# %u `vpath' search paths.\n"
+msgstr ""
+
+#: vpath.c:477
+msgid ""
+"\n"
+"# No general (`VPATH' variable) search path."
+msgstr ""
+"\n"
+"# �Ϲ����� (`VPATH' ����) Ž�� ��ΰ� ����."
+
+#: vpath.c:483
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# �Ϲ����� (`VPATH' ����) Ž�� ���:\n"
+"# "
+
+#: getloadavg.c:948
+msgid "Error getting load average"
+msgstr "����: ���� ����� ���� �� ����"
+
+#: getloadavg.c:952
+#, possible-c-format
+msgid "1-minute: %f "
+msgstr "1 ��: %f "
+
+#: getloadavg.c:954
+#, possible-c-format
+msgid "5-minute: %f "
+msgstr "5 ��: %f "
+
+#: getloadavg.c:956
+#, possible-c-format
+msgid "15-minute: %f "
+msgstr "15 ��: %f "
+
+#: getopt.c:565
+#, possible-c-format
+msgid "%s: option `%s' is ambiguous\n"
+msgstr "%s: `%s'�� �ָ��� �ɼ��Դϴ�\n"
+
+#: getopt.c:589
+#, possible-c-format
+msgid "%s: option `--%s' doesn't allow an argument\n"
+msgstr "%s: `--%s' �ɼ��� �μ��� ������� �ʽ��ϴ�\n"
+
+#: getopt.c:594
+#, possible-c-format
+msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgstr "%s: `%c%s' �ɼ��� �μ��� ������� �ʽ��ϴ�\n"
+
+#: getopt.c:611
+#, possible-c-format
+msgid "%s: option `%s' requires an argument\n"
+msgstr "%s: `%s' �ɼ��� �μ��� �ʿ��մϴ�\n"
+
+#: getopt.c:640
+#, possible-c-format
+msgid "%s: unrecognized option `--%s'\n"
+msgstr "%s: �ν��� �� ���� �ɼ� `--%s'\n"
+
+#: getopt.c:644
+#, possible-c-format
+msgid "%s: unrecognized option `%c%s'\n"
+msgstr "%s: �ν��� �� ���� �ɼ� `%c%s'\n"
+
+#: getopt.c:670
+#, possible-c-format
+msgid "%s: illegal option -- %c\n"
+msgstr "%s: �߸��� �ɼ� -- %c\n"
+
+#: getopt.c:673
+#, possible-c-format
+msgid "%s: invalid option -- %c\n"
+msgstr "%s: �������� �ɼ� -- %c\n"
+
+#: getopt.c:709
+#, possible-c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: �� �ɼ��� �μ��� �ʿ��մϴ� -- %c\n"
+
+#: getopt.c:777 getopt1.c:141
+msgid "digits occur in two different argv-elements.\n"
+msgstr "���ڰ� �� ���� �ٸ� argv ���ҿ� ��� �ֽ��ϴ�.\n"
+
+#: getopt.c:779 getopt1.c:143
+#, possible-c-format
+msgid "option %c\n"
+msgstr "�ɼ� %c\n"
+
+#: getopt.c:783 getopt1.c:147
+msgid "option a\n"
+msgstr "�ɼ� a\n"
+
+#: getopt.c:787 getopt1.c:151
+msgid "option b\n"
+msgstr "�ɼ� b\n"
+
+#: getopt.c:791 getopt1.c:155
+#, possible-c-format
+msgid "option c with value `%s'\n"
+msgstr "`%s'�� ������ ������ �ɼ� c\n"
+
+#: getopt.c:798 getopt1.c:166
+#, possible-c-format
+msgid "?? getopt returned character code 0%o ??\n"
+msgstr "?? getopt�� ���� �ڵ� 0%o�� ���� �־����ϴ� ??\n"
+
+#: getopt.c:804 getopt1.c:172
+msgid "non-option ARGV-elements: "
+msgstr "�ɼ��� �ƴ� ARGV�� ����: "
+
+#: getopt1.c:159
+#, possible-c-format
+msgid "option d with value `%s'\n"
+msgstr "`%s'�� ������ ������ �ɼ� d\n"
+
+#: signame.c:57
+msgid "unknown signal"
+msgstr "�� �� ���� ��ȣ"
+
+#: signame.c:107
+msgid "Hangup"
+msgstr "������"
+
+#: signame.c:110
+msgid "Interrupt"
+msgstr "���ͷ�Ʈ"
+
+#: signame.c:113
+msgid "Quit"
+msgstr "����"
+
+#: signame.c:116
+msgid "Illegal Instruction"
+msgstr "�߸��� ����"
+
+#: signame.c:119
+msgid "Trace/breakpoint trap"
+msgstr "����/�ߴ��� Ʈ��"
+
+#: signame.c:124
+msgid "Aborted"
+msgstr "�ߴܵ�"
+
+#: signame.c:127
+msgid "IOT trap"
+msgstr "IOT Ʈ��"
+
+#: signame.c:130
+msgid "EMT trap"
+msgstr "EMT Ʈ��"
+
+#: signame.c:133
+msgid "Floating point exception"
+msgstr "�ε� �Ҽ��� ����"
+
+#: signame.c:136
+msgid "Killed"
+msgstr "�׾���"
+
+#: signame.c:139
+msgid "Bus error"
+msgstr "���� ����"
+
+#: signame.c:142
+msgid "Segmentation fault"
+msgstr ""
+
+#: signame.c:145
+msgid "Bad system call"
+msgstr "�߸��� �ý��� ȣ��"
+
+#: signame.c:148
+msgid "Broken pipe"
+msgstr "������ ������"
+
+#: signame.c:151
+msgid "Alarm clock"
+msgstr "�ڸ��� �ð�"
+
+#: signame.c:154
+msgid "Terminated"
+msgstr "�����"
+
+#: signame.c:157
+msgid "User defined signal 1"
+msgstr "����� ���� ��ȣ 1"
+
+#: signame.c:160
+msgid "User defined signal 2"
+msgstr "����� ���� ��ȣ 2"
+
+#: signame.c:165 signame.c:168
+msgid "Child exited"
+msgstr "�ڽ��� ����Ǿ���"
+
+#: signame.c:171
+msgid "Power failure"
+msgstr "���� �ߴ�"
+
+#: signame.c:174
+msgid "Stopped"
+msgstr ""
+
+#: signame.c:177
+msgid "Stopped (tty input)"
+msgstr ""
+
+#: signame.c:180
+msgid "Stopped (tty output)"
+msgstr ""
+
+#: signame.c:183
+msgid "Stopped (signal)"
+msgstr ""
+
+#: signame.c:186
+msgid "CPU time limit exceeded"
+msgstr "CPU �ð� ���� �ʰ���"
+
+#: signame.c:189
+msgid "File size limit exceeded"
+msgstr "���� ũ�� ���� �ʰ���"
+
+#: signame.c:192
+msgid "Virtual timer expired"
+msgstr "���� Ÿ�̸� �ð� �ʰ���"
+
+#: signame.c:195
+msgid "Profiling timer expired"
+msgstr "�������ϸ� Ÿ�̸� �ð� �ʰ���"
+
+#: signame.c:201
+msgid "Window changed"
+msgstr "â�� �ٲ����"
+
+#: signame.c:204
+msgid "Continued"
+msgstr "��ӵ�"
+
+#: signame.c:207
+msgid "Urgent I/O condition"
+msgstr "����� ����� ��Ȳ"
+
+#: signame.c:214 signame.c:223
+msgid "I/O possible"
+msgstr "����� ����"
+
+#: signame.c:217
+msgid "SIGWIND"
+msgstr ""
+
+#: signame.c:220
+msgid "SIGPHONE"
+msgstr ""
+
+#: signame.c:226
+msgid "Resource lost"
+msgstr "�ڿ� �ս�"
+
+#: signame.c:229
+msgid "Danger signal"
+msgstr "���� ��ȣ"
+
+#: signame.c:232
+msgid "Information request"
+msgstr "���� ��û"
+
+#: signame.c:286
+#, possible-c-format
+msgid "%s: unknown signal"
+msgstr "%s: �� �� ���� ��ȣ"
+
+#: signame.c:299
+msgid "Signal 12345678901234567890"
+msgstr "��ȣ 12345678901234567890"
+
+#: signame.c:304
+#, possible-c-format
+msgid "Signal %d"
+msgstr "��ȣ %d"
diff --git a/i18n/nl.po b/i18n/nl.po
new file mode 100644
index 0000000..a0280a8
--- /dev/null
+++ b/i18n/nl.po
@@ -0,0 +1,1441 @@
+# Dutch messages for GNU make.
+# Copyright (C) 1996 Free Software Foundation, Inc.
+# Erick Branderhorst <branderh@debian.org>, 1996.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: make 3.74.4\n"
+"POT-Creation-Date: 1996-05-22 09:11-0400\n"
+"PO-Revision-Date: 1996-08-27 10:26 MET DST\n"
+"Last-Translator: Erick Branderhorst <branderh@debian.org>\n"
+"Language-Team: Dutch <nl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#: ar.c:48
+#, possible-c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "poging tot gebruik van een niet ondersteunde feature: `%s'"
+
+#: ar.c:142
+#, possible-c-format
+msgid "Error in lbr$ini_control, %d\n"
+msgstr "Fout in lbr$ini_control, %d\n"
+
+#: ar.c:147
+#, possible-c-format
+msgid "Error opening library %s to lookup member %s, %d\n"
+msgstr "Fout bij openen bibliotheek %s bij opzoeken onderdeel %s, %d\n"
+
+#: ar.c:153
+#, possible-c-format
+msgid "Error looking up module %s in library %s, %d\n"
+msgstr "Fout bij opzoeken van module %s in bibliotheekbestand %s, %d\n"
+
+#: ar.c:159
+#, possible-c-format
+msgid "Error getting module info, %d\n"
+msgstr "Fout bij verkrijgen module informatie, %d\n"
+
+#: ar.c:244
+msgid "touch archive member is not available on VMS"
+msgstr "touch archief onderdeel is niet beschikbaar onder VMS"
+
+#: ar.c:276
+#, possible-c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "touch: Archief `%s' bestaat niet"
+
+#: ar.c:279
+#, possible-c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "touch: `%s' is geen geldig archief"
+
+#: ar.c:282
+msgid "touch: "
+msgstr "touch: "
+
+#: ar.c:285
+#, possible-c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "touch: Onderdeel `%s' bestaat niet in `%s'"
+
+#: ar.c:291
+#, possible-c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr "touch: Onjuist return code uit ar onderdeel touch op `%s' (FIXME)"
+
+#: arscan.c:550
+msgid " (name might be truncated)"
+msgstr " (naam kan ingekort zijn)"
+
+#: arscan.c:552
+#, possible-c-format
+msgid " Date %s"
+msgstr " Datum %s"
+
+#: arscan.c:553
+#, possible-c-format
+msgid " uid = %d, gid = %d, mode = 0%o.\n"
+msgstr " uid = %d, gid = %d, mode = 0%o.\n"
+
+#: dir.c:678
+msgid ""
+"\n"
+"# Directories\n"
+msgstr "\n# Directories\n"
+
+#: dir.c:686
+#, possible-c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr "# %s: kan niet worden gestat'd (FIXME).\n"
+
+#: dir.c:689
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr "# %s (apparaat %d, inode [%d,%d,%d]): kan niet worden geopend.\n"
+
+#: dir.c:694
+#, possible-c-format
+msgid "# %s (device %d, inode %d): could not be opened.\n"
+msgstr "# %s (apparaat %d, inode %d): kan niet worden geopend.\n"
+
+#: dir.c:709
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): "
+msgstr "# %s (apparaat %d, inode [%d,%d,%d]): "
+
+#: dir.c:714
+#, possible-c-format
+msgid "# %s (device %d, inode %d): "
+msgstr "# %s (apparaat %d, inode %d): "
+
+#: dir.c:718 dir.c:738
+msgid "No"
+msgstr "Nee"
+
+#: dir.c:721 dir.c:741
+msgid " files, "
+msgstr " bestanden, "
+
+#: dir.c:723 dir.c:743
+msgid "no"
+msgstr "nee"
+
+#: dir.c:726
+msgid " impossibilities"
+msgstr " onmogelijkheden"
+
+#: dir.c:730
+msgid " so far."
+msgstr " tot zo ver."
+
+#: dir.c:746
+#, possible-c-format
+msgid " impossibilities in %u directories.\n"
+msgstr " onmogelijkheden in in %u directories.\n"
+
+#: expand.c:92 expand.c:97
+#, possible-c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "Recursieve variabele `%s' refereert (uiteindelijk) naar zichzelf"
+
+#: expand.c:120
+#, possible-c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "let op: ongedefinieerde variabele `%.*s'"
+
+#: expand.c:223 expand.c:225
+msgid "unterminated variable reference"
+msgstr "niet getermineerde variabele referentie"
+
+#: file.c:264
+#, possible-c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr "Commando's zijn specifiek voor bestand `%s' op %s:%u,"
+
+#: file.c:270
+#, possible-c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr "Commando's voor bestand `%s' zijn gevonden door implicite zoek regels."
+
+#: file.c:274
+#, possible-c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr "maar `%s' wordt nu beschouwd als het zelfde bestand als `%s'."
+
+#: file.c:278
+#, possible-c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr "Commando's voor `%s' worden genegeerd ten faveure van die voor `%s'."
+
+#: file.c:299
+#, possible-c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr "kan enkele colon `%s' niet hernoemen naar dubbele colon `%s' (FIXME)"
+
+#: file.c:302
+#, possible-c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr "kan dubbele colon `%s' niet hernoemen in enkele colon `%s'"
+
+#: file.c:363
+#, possible-c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr "*** Verwijderen tijdelijk bestand `%s'"
+
+#: file.c:523
+msgid "# Not a target:"
+msgstr "# Niet een bestemming:"
+
+#: file.c:531
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr "# Precious bestand (afhankelijk van .PRECIOUS)."
+
+#: file.c:533
+msgid "# Phony target (dependency of .PHONY)."
+msgstr "# Phony doel (afhankelijk van .PHONY)."
+
+#: file.c:535
+msgid "# Command-line target."
+msgstr "# Commando-regel doel."
+
+#: file.c:537
+msgid "# A default or MAKEFILES makefile."
+msgstr "# Een standaard of MAKEFILES makefile."
+
+#: file.c:538
+#, possible-c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# Impliciete zoek regel is%s uitgevoerd.\n"
+
+#: file.c:539 file.c:564
+msgid " not"
+msgstr " niet"
+
+#: file.c:541
+#, possible-c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr "# Impliciete/statische patroon stem: `%s'\n"
+
+#: file.c:543
+msgid "# File is an intermediate dependency."
+msgstr "# Bestand is een tijdelijke afhankelijke."
+
+#: file.c:546
+msgid "# Also makes:"
+msgstr "# Maakt ook:"
+
+#: file.c:552
+msgid "# Modification time never checked."
+msgstr "# Wijziging tijd nooit gecontroleerd."
+
+#: file.c:554
+msgid "# File does not exist."
+msgstr "# Bestand bestaat niet."
+
+#: file.c:557
+#, possible-c-format
+msgid "# Last modified %.24s (%0lx)\n"
+msgstr "# Laatst gewijzigd %.24s (%0lx)\n"
+
+#: file.c:560
+#, possible-c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# Laatst gewijzigd %.24s (%ld)\n"
+
+#: file.c:563
+#, possible-c-format
+msgid "# File has%s been updated.\n"
+msgstr "# Bestand is%s gewijzigd.\n"
+
+#: file.c:568
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# Commando's welke nu uitgevoerd worden (THIS IS A BUG)."
+
+#: file.c:571
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# Afhankelijken commando's welke nu uitgevoerd worden (THIS IS A BUG)."
+
+#: file.c:580
+msgid "# Successfully updated."
+msgstr "# Wijziging succesvol."
+
+#: file.c:584
+msgid "# Needs to be updated (-q is set)."
+msgstr "# Dient geupdate te worden (-q is aktie)."
+
+#: file.c:587
+msgid "# Failed to be updated."
+msgstr "# Updaten faalde."
+
+#: file.c:590
+msgid "# Invalid value in `update_status' member!"
+msgstr "# Ongeldige waarde in `update_status' onderdeel!"
+
+#: file.c:597
+msgid "# Invalid value in `command_state' member!"
+msgstr "# Ongeldige waarde in `command_state' deelnemer!"
+
+#: file.c:616
+msgid ""
+"\n"
+"# Files"
+msgstr "\n# Bestanden"
+
+#: file.c:639
+msgid ""
+"\n"
+"# No files."
+msgstr "\n# Geen bestanden."
+
+#: file.c:642
+#, possible-c-format
+msgid ""
+"\n"
+"# %u files in %u hash buckets.\n"
+msgstr "\n# %u bestanden in %u hash buckets (FIXME).\n"
+
+#: file.c:644
+#, possible-c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr "# gemiddeld %.1f bestanden per bucket, maximaal %u bestanden in een bucket (FIXME).\n"
+
+#: function.c:648
+msgid "undefined"
+msgstr "ongedefinieerd"
+
+#: function.c:657 variable.c:736
+msgid "default"
+msgstr "standaard"
+
+#: function.c:660 variable.c:739
+msgid "environment"
+msgstr "omgeving"
+
+#: function.c:663
+msgid "file"
+msgstr "bestand"
+
+#: function.c:666
+msgid "environment override"
+msgstr "omgevings overschrijving (FIXME)"
+
+#: function.c:669 variable.c:748
+msgid "command line"
+msgstr "commando-regel"
+
+#: function.c:672
+msgid "override"
+msgstr "overschrijf"
+
+#: function.c:675 variable.c:754
+msgid "automatic"
+msgstr "automatisch"
+
+#: function.c:1087 function.c:1089
+msgid "non-numeric first argument to `word' function"
+msgstr "niet-numeriek eerste argument voor `word' functie"
+
+#: function.c:1097 function.c:1100
+msgid "the `word' function takes a one-origin index argument"
+msgstr "de `word' functie accepteert een een-origineel index argument (??)"
+
+#: function.c:1341
+#, possible-c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "niet getermineerde aanroep naar functie `%s': ontbrekend `%c'"
+
+#: implicit.c:38
+#, possible-c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "Zoeken naar een impliciete regel voor `%s'.\n"
+
+#: implicit.c:53
+#, possible-c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr "Zoek naar een archief-onderdeel impliciete regel voor `%s'.\n"
+
+#: implicit.c:190
+#, possible-c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "Vermijden impliciete regel recursie.%s%s\n"
+
+#: implicit.c:326
+#, possible-c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr "Probeer patroon regel met stam `%.*s'.\n"
+
+#: implicit.c:365
+#, possible-c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr "Verwerpen onmogelijke %s afhankelijkheid `%s'.\n"
+
+#: implicit.c:366 implicit.c:374
+msgid "implicit"
+msgstr "impliciet"
+
+#: implicit.c:366 implicit.c:374
+msgid "rule"
+msgstr "regel"
+
+#: implicit.c:373
+#, possible-c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr "Probeer %s afhankelijkheid `%s'.\n"
+
+#: implicit.c:393
+#, possible-c-format
+msgid "Found dependency as `%s'.%s\n"
+msgstr "Afhankelijkheid gevonden als `%s'.%s\n"
+
+#: implicit.c:408
+#, possible-c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr "Zoeken naar een regel met %s bestand `%s'.\n"
+
+#: implicit.c:409
+msgid "intermediate"
+msgstr "intermediair"
+
+#: job.c:190
+#, possible-c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] Fout 0x%x%s"
+
+#: job.c:190
+msgid " (ignored)"
+msgstr " (genegeerd)"
+
+#: job.c:193
+#, possible-c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] Fout %d (genegeerd)"
+
+#: job.c:194
+#, possible-c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] Fout %d"
+
+#: job.c:199
+msgid " (core dumped)"
+msgstr " (core gedumpt)"
+
+#: job.c:234
+#, possible-c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr "Got a SIGCHLD; %d unreaped sub-processen.\n"
+
+#: job.c:265
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** Wachten op onafgeronde jobs..."
+
+#: job.c:290
+#, possible-c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr "Aktief sub-proces 0x%08lx PID %d%s\n"
+
+#: job.c:292 job.c:427 job.c:514 job.c:919
+msgid " (remote)"
+msgstr " (op afstand)"
+
+#: job.c:414
+#, possible-c-format
+msgid "Unknown%s job %d"
+msgstr "Onbekend%s job %d"
+
+#: job.c:414
+msgid " remote"
+msgstr " op afstand"
+
+#: job.c:419
+#, possible-c-format
+msgid "%s finished."
+msgstr "%s afgerond."
+
+#: job.c:424
+#, possible-c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr "Reaping %s sub-proces 0x%08lx PID %d%s\n"
+
+#: job.c:425
+msgid "losing"
+msgstr "verliezen"
+
+#: job.c:425
+msgid "winning"
+msgstr "winnen"
+
+#: job.c:512
+#, possible-c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr "Verwijder sub-proces 0x%08lx PID %d%s uit reeks.\n"
+
+#: job.c:917
+#, possible-c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr "Plaats sub-proces 0x%08lx PID %05d%s in reeks.\n"
+
+#: job.c:1140
+msgid "cannot enforce load limits on this operating system"
+msgstr "kan geen belastingslimiet opleggen onder dit besturingssysteem"
+
+#: job.c:1142
+msgid "cannot enforce load limit: "
+msgstr "kan geen belastingslimiet opleggen: "
+
+#: job.c:1244
+#, possible-c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "interne fout: `%s' commando_status %d bij sub-proces regelaar"
+
+#: job.c:1350
+#, possible-c-format
+msgid "Executing %s instead\n"
+msgstr "In plaats hiervan yitvoeren van %s\n"
+
+#: job.c:1381
+#, possible-c-format
+msgid "Error spawning, %d\n"
+msgstr "Fout spawning, %d\n"
+
+#: job.c:1442
+#, possible-c-format
+msgid "%s: Command not found"
+msgstr "%s: Commando niet gevonden"
+
+#: job.c:1471
+#, possible-c-format
+msgid "%s: Shell program not found"
+msgstr "%s: Shell programa niet gevonden"
+
+#: main.c:224
+msgid "Ignored for compatibility"
+msgstr "Genegeerd voor compatibiliteitsredenen"
+
+#: main.c:227
+msgid "Change to DIRECTORY before doing anything"
+msgstr "Veranderen naar DIRECTORY voordat iets gedaan wordt"
+
+#: main.c:230
+msgid "Print lots of debugging information"
+msgstr "Toon veel debug informatie"
+
+#: main.c:233
+msgid "Environment variables override makefiles"
+msgstr "Omgevingsvariabele overschrijven makefiles"
+
+#: main.c:236
+msgid "Read FILE as a makefile"
+msgstr "Lees BESTAND als een makefile"
+
+#: main.c:239
+msgid "Print this message and exit"
+msgstr "Toon deze melding en be�indig programma"
+
+#: main.c:242
+msgid "Ignore errors from commands"
+msgstr "Negeer fouten van commando's"
+
+#: main.c:245
+msgid "Search DIRECTORY for included makefiles"
+msgstr "Doorzoek DIRECTORY voor te includeren makefiles"
+
+#: main.c:249
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr "Sta N jobs tegelijkertijd toe; oneindig veel jobs bij geen argument"
+
+#: main.c:253
+msgid "Keep going when some targets can't be made"
+msgstr "Doorgaan wanneer sommige doelen niet aangemaakt kunnen worden"
+
+#: main.c:258 main.c:263
+msgid "Don't start multiple jobs unless load is below N"
+msgstr "Start niet meerdere jobs tenzij de belasting beneden N is"
+
+#: main.c:270
+msgid "Don't actually run any commands; just print them"
+msgstr "Voer geen commando's uit; laat ze alleen maar zien"
+
+#: main.c:273
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "Veronderstel BESTAND zeer oud is en maak het niet opnieuw"
+
+#: main.c:276
+msgid "Print make's internal database"
+msgstr "Toon make's interne gegevensbeheer"
+
+#: main.c:279
+msgid "Run no commands; exit status says if up to date"
+msgstr "Voer geen commando's uit; exit status vertelt up to date zijn (FIXME)"
+
+#: main.c:282
+msgid "Disable the built-in implicit rules"
+msgstr "Schakel de ingebouwde impliciete regels uit"
+
+#: main.c:285
+msgid "Don't echo commands"
+msgstr "Laat geen commando's zien"
+
+#: main.c:289
+msgid "Turns off -k"
+msgstr "-k is uitgezet"
+
+#: main.c:292
+msgid "Touch targets instead of remaking them"
+msgstr "Touch doelen in plaats van opnieuw aanmaken"
+
+#: main.c:295
+msgid "Print the version number of make and exit"
+msgstr "Toon het versie-nummer van make en be�indig programma"
+
+#: main.c:298
+msgid "Print the current directory"
+msgstr "Toon de huidige directory"
+
+#: main.c:301
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "Zet -w uit, zelfs als het impliciet aangezet is"
+
+#: main.c:304
+msgid "Consider FILE to be infinitely new"
+msgstr "Veronderstel dat BESTAND oneindig nieuw is"
+
+#: main.c:307
+msgid "Warn when an undefined variable is referenced"
+msgstr "Waarschuw indien naar een ongedefinieerde variabele wordt gerefereerd"
+
+#: main.c:394
+msgid "empty string invalid as file name"
+msgstr "lege string is een ongeldige bestandsnaam"
+
+#: main.c:781
+msgid "fopen (temporary file)"
+msgstr "fopen (tijdelijk bestand)"
+
+#: main.c:787
+msgid "fwrite (temporary file)"
+msgstr "fwrite (tijdelijk bestand)"
+
+#: main.c:930
+msgid "Updating makefiles...."
+msgstr "Updaten van makefiles..."
+
+#: main.c:955
+#, possible-c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr "Makefile `%s' kan `loopen'; wordt niet opnieuw aangemaakt.\n"
+
+#: main.c:1029
+#, possible-c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "Gefaald in het opnieuw aanmaken van makefile `%s'."
+
+#: main.c:1044
+#, possible-c-format
+msgid "Included makefile `%s' was not found."
+msgstr "Ge�ncludeerde makefile `%s' was niet gevonden."
+
+#: main.c:1049
+#, possible-c-format
+msgid "Makefile `%s' was not found"
+msgstr "Makefile `%s' was niet gevonden"
+
+#: main.c:1108
+msgid "Couldn't change back to original directory."
+msgstr "Kan niet terug naar originele directory."
+
+#: main.c:1142
+msgid "Re-executing:"
+msgstr "Heruitvoeren:"
+
+#: main.c:1186
+msgid "Updating goal targets...."
+msgstr "Updaten doel bestemmingen..."
+
+#: main.c:1211
+msgid "No targets specified and no makefile found"
+msgstr "Geen doelen gespecificeerd en geen makefile gevonden"
+
+#: main.c:1213
+msgid "No targets"
+msgstr "Geen doelen"
+
+#: main.c:1439
+#, possible-c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "de `-%c' optie vereist een positief integral argument"
+
+#: main.c:1490
+#, possible-c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "Gebruik: %s [opties] [doel] ...\n"
+
+#: main.c:1492
+msgid "Options:\n"
+msgstr "Opties:\n"
+
+#: main.c:1967
+#, possible-c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make versie %s"
+
+#: main.c:1971
+#, possible-c-format
+msgid ""
+", by Richard Stallman and Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sThis is free software; see the source for copying conditions.\n"
+"%sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n"
+"%sPARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+", door Richard Stallman en Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sDit is vrije software; bekijk de broncode voor copieer condities.\n"
+"%sEr is GEEN garantie; niet voor VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN\n"
+"%sSPECIFIC DOEL.\n"
+"\n"
+
+#: main.c:1993
+#, possible-c-format
+msgid ""
+"\n"
+"# Make data base, printed on %s"
+msgstr "\n# Make data base, geprint op %s"
+
+#: main.c:2002
+#, possible-c-format
+msgid ""
+"\n"
+"# Finished Make data base on %s\n"
+msgstr "\n# Klaar met Make data base op %s\n"
+
+#: main.c:2053
+msgid "Entering"
+msgstr "Binnengaan van"
+
+#: main.c:2053
+msgid "Leaving"
+msgstr "Verdwijnen uit"
+
+#: main.c:2072
+msgid "an unknown directory"
+msgstr "een onbekende directory"
+
+#: main.c:2074
+#, possible-c-format
+msgid "directory `%s'\n"
+msgstr "directory `%s'\n"
+
+#: misc.c:212 misc.c:260
+msgid ". Stop.\n"
+msgstr ". Stop.\n"
+
+#: misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "Onbekende fout 12345678901234567890"
+
+#: misc.c:282
+#, possible-c-format
+msgid "Unknown error %d"
+msgstr "Onbekende fout %d"
+
+#: misc.c:318 misc.c:330 read.c:2151
+msgid "virtual memory exhausted"
+msgstr "geen virtueel geheugen meer beschikbaar"
+
+#: misc.c:536
+#, possible-c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr "%s toegang: gebruiker %d (werkelijk %d), groep %d (werkelijk %d)\n"
+
+#: misc.c:556
+msgid "Initialized"
+msgstr "Ge�nitialiseerd"
+
+#: misc.c:635
+msgid "User"
+msgstr "Gebruiker"
+
+#: misc.c:683
+msgid "Make"
+msgstr "Maak"
+
+#: misc.c:717
+msgid "Child"
+msgstr "Sub-proces"
+
+#: read.c:129
+msgid "Reading makefiles..."
+msgstr "Lezen maakbestanden..."
+
+#: read.c:298
+#, possible-c-format
+msgid "Reading makefile `%s'"
+msgstr "Lezen maakbestand `%s'"
+
+#: read.c:300
+msgid " (no default goal)"
+msgstr " (geen standaard doel)"
+
+#: read.c:302
+msgid " (search path)"
+msgstr " (zoek pad)"
+
+#: read.c:304
+msgid " (don't care)"
+msgstr " (kan me niet schelen)"
+
+#: read.c:306
+msgid " (no ~ expansion)"
+msgstr " (geen ~ expansie)"
+
+#: read.c:466
+msgid "invalid syntax in conditional"
+msgstr "ongeldige syntax in conditie"
+
+#: read.c:474
+msgid "extraneous `endef'"
+msgstr "extraneous `endef'"
+
+#: read.c:500 read.c:522
+msgid "empty `override' directive"
+msgstr "lege `overschrijf' directief"
+
+#: read.c:584
+#, possible-c-format
+msgid "no file name for `%sinclude'"
+msgstr "geen bestandsnaam voor `%sinclude'"
+
+#: read.c:670
+msgid "commands commence before first target"
+msgstr "commando's vangen aan voor het eerste doel"
+
+#: read.c:714
+msgid "missing rule before commands"
+msgstr "ontbrekende regel voor commando's"
+
+#: read.c:733
+msgid "missing separator"
+msgstr "ontbrekend scheidingsteken"
+
+#: read.c:782
+msgid "missing target pattern"
+msgstr "ontbrekend doel patroon"
+
+#: read.c:784
+msgid "multiple target patterns"
+msgstr "meerdere doel patronen"
+
+#: read.c:789
+msgid "target pattern contains no `%%'"
+msgstr "doel patroon bevat geen `%%'"
+
+#: read.c:829
+msgid "missing `endif'"
+msgstr "ontbrekend `endif'"
+
+#: read.c:887
+msgid "Extraneous text after `endef' directive"
+msgstr "Extraneous tekst na `endef' directief"
+
+#: read.c:917
+msgid "missing `endef', unterminated `define'"
+msgstr "onbrekend `endef', niet getermineerde `define'"
+
+#: read.c:973 read.c:1120
+#, possible-c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "Extraneous tekst na `%s' directief"
+
+#: read.c:977
+#, possible-c-format
+msgid "extraneous `%s'"
+msgstr ""
+
+#: read.c:982
+msgid "only one `else' per conditional"
+msgstr "slecht een `else' per conditie"
+
+#: read.c:1230
+msgid "mixed implicit and static pattern rules"
+msgstr "gemengde impliciete en statische patroon regels"
+
+#: read.c:1233
+msgid "mixed implicit and normal rules"
+msgstr "gemengde implicite en normale regels"
+
+#: read.c:1273
+#, possible-c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr "doel `%s' komt niet overeen met doel patroon"
+
+#: read.c:1305 read.c:1407
+#, possible-c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr "doel bestand `%s' heeft zowel : als :: ingangen"
+
+#: read.c:1313
+#, possible-c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr "doel `%s' komt meer dan een maal voor in dezelfde regel."
+
+#: read.c:1322
+#, possible-c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr "let op: overschrijven commando's voor doel `%s'"
+
+#: read.c:1325
+#, possible-c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr "let op: negeren oude commando's voor doel `%s'"
+
+#: read.c:1815
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr "let op: NUL karakter aanwezig; rest van regel genegeerd"
+
+#: remake.c:212
+#, possible-c-format
+msgid "Nothing to be done for `%s'."
+msgstr "Niets te doen voor `%s'."
+
+#: remake.c:213
+#, possible-c-format
+msgid "`%s' is up to date."
+msgstr ""
+
+#: remake.c:310
+#, possible-c-format
+msgid "Considering target file `%s'.\n"
+msgstr "Overwegen doel bestand `%s'.\n"
+
+#: remake.c:316
+#, possible-c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr "Recentelijk geprobeerd en gefaald bij updaten bestand `%s'.\n"
+
+#: remake.c:320
+#, possible-c-format
+msgid "File `%s' was considered already.\n"
+msgstr "Bestand `%s' was reeds in overweging genomen. (FIXME)\n"
+
+#: remake.c:330
+#, possible-c-format
+msgid "Still updating file `%s'.\n"
+msgstr "Immer updaten bestand `%s'.\n"
+
+#: remake.c:333
+#, possible-c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "Klaar met updaten bestand `%s'.\n"
+
+#: remake.c:354
+#, possible-c-format
+msgid "File `%s' does not exist.\n"
+msgstr "Bestand `%s' bestaat niet.\n"
+
+#: remake.c:364 remake.c:728
+#, possible-c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "Implicite regel gevonden voor `%s'.\n"
+
+#: remake.c:366 remake.c:730
+#, possible-c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "Geen implicite regel gevonden voor `%s'.\n"
+
+#: remake.c:372 remake.c:736
+#, possible-c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "Gebruik standaard commando's voor `%s'.\n"
+
+#: remake.c:392 remake.c:760
+#, possible-c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr "Niet doorgegaan met rondgaande %s <- %s afhankelijkheid."
+
+#: remake.c:474
+#, possible-c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr "Klaar met afhankelijkheden voor doel bestand `%s'.\n"
+
+#: remake.c:480
+#, possible-c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr "De afhankelijkheden voor `%s' worden gemaakt.\n"
+
+#: remake.c:493
+#, possible-c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr "Geef het op voor doel bestand `%s'.\n"
+
+#: remake.c:497
+#, possible-c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "Doel `%s' niet opnieuw gemaakt vanwege fouten."
+
+#: remake.c:542
+#, possible-c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "Afhankelijkheid `%s' bestaat niet.\n"
+
+#: remake.c:544
+#, possible-c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr "Afhankelijkheid `%s' is %s dan afhankelijke `%s'.\n"
+
+#: remake.c:545
+msgid "newer"
+msgstr "nieuwer"
+
+#: remake.c:545
+msgid "older"
+msgstr "ouder"
+
+#: remake.c:556
+#, possible-c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr "Doel `%s' is dubbele punt en heeft geen afhankelijkheden.\n"
+
+#: remake.c:561
+#, possible-c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr "Geen commando's voor `%s' en geen gewijzigde afhankelijkheden.\n"
+
+#: remake.c:566
+#, possible-c-format
+msgid "No need to remake target `%s'.\n"
+msgstr "Geen reden voor opnieuw aanmaken van doel `%s'.\n"
+
+#: remake.c:571
+#, possible-c-format
+msgid "Must remake target `%s'.\n"
+msgstr "Doel `%s' moet opnieuw gemaakt worden.\n"
+
+#: remake.c:578
+#, possible-c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "Commando's van `%s' worden uitgevoerd.\n"
+
+#: remake.c:585
+#, possible-c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "Gefaald bij opnieuw aanmaken van doel bestand `%s'.\n"
+
+#: remake.c:588
+#, possible-c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "Succesvol opnieuw doel bestand `%s' aangemaakt.\n"
+
+#: remake.c:591
+#, possible-c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr "Doel bestand `%s' dient opnieuw aangemaakt te worden onder -q.\n"
+
+#: remake.c:880
+#, possible-c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%sGeen regel voor het maken van doel `%s'%s"
+
+#: remake.c:882
+#, possible-c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr "%sGeen regel voor aanmaken doel `%s', nodig voor `%s'%s"
+
+#: remake.c:1053
+#, possible-c-format
+msgid "*** File `%s' has modification time in the future"
+msgstr "*** Bestand `%s' heeft een wijzigingstijd in de toekomst"
+
+#: remote-cstms.c:94
+#, possible-c-format
+msgid "Customs won't export: %s\n"
+msgstr "Customs zullen niet exporteren: %s\n"
+
+#: remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr "exporteren: Kan geen return socket aanmaken."
+
+#: remote-cstms.c:138
+msgid "exporting: "
+msgstr "exporteren: "
+
+#: remote-cstms.c:171
+#, possible-c-format
+msgid "exporting: %s"
+msgstr "exporteren: %s"
+
+#: remote-cstms.c:185
+#, possible-c-format
+msgid "Job exported to %s ID %u\n"
+msgstr "Job ge�xporteerd naar %s ID %u\n"
+
+#: rule.c:556
+msgid ""
+"\n"
+"# Implicit Rules"
+msgstr "\n# Impliciete regels"
+
+#: rule.c:571
+msgid ""
+"\n"
+"# No implicit rules."
+msgstr "\n# Geen implicite regels."
+
+#: rule.c:574
+#, possible-c-format
+msgid ""
+"\n"
+"# %u implicit rules, %u"
+msgstr "\n# %u implicite regels, %u"
+
+#: rule.c:583
+msgid " terminal."
+msgstr ""
+
+#: rule.c:587
+#, possible-c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr "BUG: onjuist aantal patroon regels! %u != %u"
+
+#: variable.c:658 variable.c:660
+msgid "empty variable name"
+msgstr "lege variabele naam"
+
+#: variable.c:742
+msgid "makefile"
+msgstr "maakbestand"
+
+#: variable.c:745
+msgid "environment under -e"
+msgstr "omgeving onder -e"
+
+#: variable.c:751
+msgid "`override' directive"
+msgstr "`overschrijf' directief"
+
+#: variable.c:822
+msgid "# No variables."
+msgstr "# Geen variabelen."
+
+#: variable.c:825
+#, possible-c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr "# %u variabelen in %u hash buckets.\n"
+
+#: variable.c:828
+#, possible-c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr "# gemiddelde van %.1f variabelen per bucket, maximaal %u in een bucket.\n"
+
+#: variable.c:835
+#, possible-c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr "# gemiddelde van %d.%d variabelen per bucket, maximaal %u in een bucket.\n"
+
+#: variable.c:850
+msgid ""
+"\n"
+"# Variables\n"
+msgstr "\n# Variabelen\n"
+
+#: vpath.c:455
+msgid ""
+"\n"
+"# VPATH Search Paths\n"
+msgstr "\n# VPATH Zoekpaden\n"
+
+#: vpath.c:472
+msgid "# No `vpath' search paths."
+msgstr "# Geen `vpath' zoekpaden."
+
+#: vpath.c:474
+#, possible-c-format
+msgid ""
+"\n"
+"# %u `vpath' search paths.\n"
+msgstr "\n# %u `vpath' zoekpaden.\n"
+
+#: vpath.c:477
+msgid ""
+"\n"
+"# No general (`VPATH' variable) search path."
+msgstr "\n# Geen standaard (`VPATH' variabele) zoekpad."
+
+#: vpath.c:483
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# Algemeen (`VPATH' variabele) zoekpad:\n"
+"# "
+
+#: getloadavg.c:948
+msgid "Error getting load average"
+msgstr "Fout bij achterhalen belastingsgemiddelde"
+
+#: getloadavg.c:952
+#, possible-c-format
+msgid "1-minute: %f "
+msgstr "1-minuut: %f "
+
+#: getloadavg.c:954
+#, possible-c-format
+msgid "5-minute: %f "
+msgstr "5-minuten: %f "
+
+#: getloadavg.c:956
+#, possible-c-format
+msgid "15-minute: %f "
+msgstr "15-minuten: %f "
+
+#: getopt.c:565
+#, possible-c-format
+msgid "%s: option `%s' is ambiguous\n"
+msgstr "%s: optie `%s' is niet eenduidig\n"
+
+#: getopt.c:589
+#, possible-c-format
+msgid "%s: option `--%s' doesn't allow an argument\n"
+msgstr "%s: optie `--%s' staat geen argument toe\n"
+
+#: getopt.c:594
+#, possible-c-format
+msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgstr "%s: optie `%c%s' staat geen argument toe\n"
+
+#: getopt.c:611
+#, possible-c-format
+msgid "%s: option `%s' requires an argument\n"
+msgstr "%s: optie `%s' vereist een argument\n"
+
+#: getopt.c:640
+#, possible-c-format
+msgid "%s: unrecognized option `--%s'\n"
+msgstr "%s: onbekende optie `--%s'\n"
+
+#: getopt.c:644
+#, possible-c-format
+msgid "%s: unrecognized option `%c%s'\n"
+msgstr "%s: onbekende optie `%c%s'\n"
+
+#: getopt.c:670
+#, possible-c-format
+msgid "%s: illegal option -- %c\n"
+msgstr "%s: ongeldige optie -- %c\n"
+
+#: getopt.c:673
+#, possible-c-format
+msgid "%s: invalid option -- %c\n"
+msgstr "%s: onjuiste optie -- %c\n"
+
+#: getopt.c:709
+#, possible-c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: optie vereist een argument -- %c\n"
+
+#: getopt.c:777 getopt1.c:141
+msgid "digits occur in two different argv-elements.\n"
+msgstr "cijfers komen voor in twee verschillende argv-elementen.\n"
+
+#: getopt.c:779 getopt1.c:143
+#, possible-c-format
+msgid "option %c\n"
+msgstr "optie %c\n"
+
+#: getopt.c:783 getopt1.c:147
+msgid "option a\n"
+msgstr "optie a\n"
+
+#: getopt.c:787 getopt1.c:151
+msgid "option b\n"
+msgstr "optie b\n"
+
+#: getopt.c:791 getopt1.c:155
+#, possible-c-format
+msgid "option c with value `%s'\n"
+msgstr "optie c met waarde `%s'\n"
+
+#: getopt.c:798 getopt1.c:166
+#, possible-c-format
+msgid "?? getopt returned character code 0%o ??\n"
+msgstr "?? getopt geeft karakter code 0%o ??\n"
+
+#: getopt.c:804 getopt1.c:172
+msgid "non-option ARGV-elements: "
+msgstr "niet-optionele ARGV-elementen: "
+
+#: getopt1.c:159
+#, possible-c-format
+msgid "option d with value `%s'\n"
+msgstr "optie d met waarde `%s'\n"
+
+#: signame.c:57
+msgid "unknown signal"
+msgstr "onbekend signaal"
+
+#: signame.c:107
+msgid "Hangup"
+msgstr "Ophangen"
+
+#: signame.c:110
+msgid "Interrupt"
+msgstr "Interrupt"
+
+#: signame.c:113
+msgid "Quit"
+msgstr "Quit"
+
+#: signame.c:116
+msgid "Illegal Instruction"
+msgstr "Ongeldige instructie"
+
+#: signame.c:119
+msgid "Trace/breakpoint trap"
+msgstr "Trace/breakpoint trap"
+
+#: signame.c:124
+msgid "Aborted"
+msgstr "Afgebroken"
+
+#: signame.c:127
+msgid "IOT trap"
+msgstr "IOT trap"
+
+#: signame.c:130
+msgid "EMT trap"
+msgstr "EMT trap"
+
+#: signame.c:133
+msgid "Floating point exception"
+msgstr "Drijvende komma exceptie"
+
+#: signame.c:136
+msgid "Killed"
+msgstr "Gedood"
+
+#: signame.c:139
+msgid "Bus error"
+msgstr "Bus fout"
+
+#: signame.c:142
+msgid "Segmentation fault"
+msgstr "Segmentatie fout"
+
+#: signame.c:145
+msgid "Bad system call"
+msgstr "Onjuiste systeem aanroep"
+
+#: signame.c:148
+msgid "Broken pipe"
+msgstr "Gebroken doorsturing"
+
+#: signame.c:151
+msgid "Alarm clock"
+msgstr "Alarmklok"
+
+#: signame.c:154
+msgid "Terminated"
+msgstr "Getermineerd"
+
+#: signame.c:157
+msgid "User defined signal 1"
+msgstr "Gebruiker gedefinieerd singaal 1"
+
+#: signame.c:160
+msgid "User defined signal 2"
+msgstr "Gebruiker gedefinieerd signaal 2"
+
+#: signame.c:165 signame.c:168
+msgid "Child exited"
+msgstr "Sub-proces afgelopen"
+
+#: signame.c:171
+msgid "Power failure"
+msgstr "Voeding faald"
+
+#: signame.c:174
+msgid "Stopped"
+msgstr "Gestopt"
+
+#: signame.c:177
+msgid "Stopped (tty input)"
+msgstr "Gestopt (tty invoer)"
+
+#: signame.c:180
+msgid "Stopped (tty output)"
+msgstr "Gestopt (tty uitvoer)"
+
+#: signame.c:183
+msgid "Stopped (signal)"
+msgstr "Gestopt (signaal)"
+
+#: signame.c:186
+msgid "CPU time limit exceeded"
+msgstr "CPU tijd limiet overschreden"
+
+#: signame.c:189
+msgid "File size limit exceeded"
+msgstr "Bestandsgroottelimiet overschreden"
+
+#: signame.c:192
+msgid "Virtual timer expired"
+msgstr "Virtuele timer afgelopen"
+
+#: signame.c:195
+msgid "Profiling timer expired"
+msgstr "Profiling timer afgelopen"
+
+#: signame.c:201
+msgid "Window changed"
+msgstr "Venster gewijzigd"
+
+#: signame.c:204
+msgid "Continued"
+msgstr "Gecontinueerd"
+
+#: signame.c:207
+msgid "Urgent I/O condition"
+msgstr "Urgente I/O conditie"
+
+#: signame.c:214 signame.c:223
+msgid "I/O possible"
+msgstr "I/O mogelijk"
+
+#: signame.c:217
+msgid "SIGWIND"
+msgstr "SIGWIND"
+
+#: signame.c:220
+msgid "SIGPHONE"
+msgstr "SIGPHONE"
+
+#: signame.c:226
+msgid "Resource lost"
+msgstr "Resource verloren"
+
+#: signame.c:229
+msgid "Danger signal"
+msgstr "Gevaar signaal"
+
+#: signame.c:232
+msgid "Information request"
+msgstr "Verzoek om informatie"
+
+#: signame.c:286
+#, possible-c-format
+msgid "%s: unknown signal"
+msgstr "%s: onbekend signaal"
+
+#: signame.c:299
+msgid "Signal 12345678901234567890"
+msgstr "Signaal 12345678901234567890"
+
+#: signame.c:304
+#, possible-c-format
+msgid "Signal %d"
+msgstr "Signaal %d"
diff --git a/i18n/pl.po b/i18n/pl.po
new file mode 100644
index 0000000..570e885
--- /dev/null
+++ b/i18n/pl.po
@@ -0,0 +1,1467 @@
+# Polish translation for GNU make.
+# Copyright (C) 1996 Free Software Foundation, Inc.
+# Pawe� Krawczyk <kravietz@pipeta.chemia.pk.edu.pl>, 1996.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: make 3.74.4\n"
+"POT-Creation-Date: 1996-05-22 09:11-0400\n"
+"PO-Revision-Date: 1996-08-27 21:20+0200\n"
+"Last-Translator: Pawe� Krawczyk <kravietz@pipeta.chemia.pk.edu.pl>\n"
+"Language-Team: Polish <pl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-2\n"
+"Content-Transfer-Encoding: 8-bit\n"
+
+#: ar.c:48
+#, possible-c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "pr�ba u�ycia nieistniej�cej funkcji: `%s'"
+
+#: ar.c:142
+#, possible-c-format
+msgid "Error in lbr$ini_control, %d\n"
+msgstr "B��d w lbr$ini_control, %d\n"
+
+#: ar.c:147
+#, possible-c-format
+msgid "Error opening library %s to lookup member %s, %d\n"
+msgstr "B��d otwarcia biblioteki %s podczas szukania elementu %s, %d\n"
+
+#: ar.c:153
+#, possible-c-format
+msgid "Error looking up module %s in library %s, %d\n"
+msgstr "B��d podczas szukania modu�u %s w bibliotece %s, %d\n"
+
+#: ar.c:159
+#, possible-c-format
+msgid "Error getting module info, %d\n"
+msgstr "B��d podczas pobierania informacji o module, %d\n"
+
+#: ar.c:244
+msgid "touch archive member is not available on VMS"
+msgstr "element biblioteki `touch' jest niedost�pny pod VMS"
+
+#: ar.c:276
+#, possible-c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "touch: Archiwum `%s' nie istnieje"
+
+#: ar.c:279
+#, possible-c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "touch: `%s' nie jest poprawnym archiwum"
+
+#: ar.c:282
+msgid "touch: "
+msgstr "touch: "
+
+#: ar.c:285
+#, possible-c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "touch: Brak elementu `%s' w `%s'"
+
+#: ar.c:291
+#, possible-c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr "touch: B��dny kod powrotu z ar_member_touch w `%s'"
+
+#: arscan.c:550
+msgid " (name might be truncated)"
+msgstr " (nazwa mo�e zosta� okrojona)"
+
+#: arscan.c:552
+#, possible-c-format
+msgid " Date %s"
+msgstr " Data %s"
+
+#: arscan.c:553
+#, possible-c-format
+msgid " uid = %d, gid = %d, mode = 0%o.\n"
+msgstr " uid = %d, gid = %d, mode = 0%o.\n"
+
+#: dir.c:678
+msgid ""
+"\n"
+"# Directories\n"
+msgstr ""
+"\n"
+"# Katalogi\n"
+
+#: dir.c:686
+#, possible-c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr "# %s: stat() zwraca b��d.\n"
+
+#: dir.c:689
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr "# %s (urz�dzenie %d, i-w�ze� [%d,%d,%d]): otwarcie by�o niemo�liwe.\n"
+
+#: dir.c:694
+#, possible-c-format
+msgid "# %s (device %d, inode %d): could not be opened.\n"
+msgstr "# %s (urz�dzenie %d, i-w�ze� %d): otwarcie by�o niemo�liwe.\n"
+
+#: dir.c:709
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): "
+msgstr "# %s (urz�dzenie %d, i-w�ze� [%d,%d,%d]): "
+
+#: dir.c:714
+#, possible-c-format
+msgid "# %s (device %d, inode %d): "
+msgstr "# %s (urz�dzenie %d, i-w�ze� %d): "
+
+#: dir.c:718 dir.c:738
+msgid "No"
+msgstr "Nie"
+
+#: dir.c:721 dir.c:741
+msgid " files, "
+msgstr " pliki, "
+
+#: dir.c:723 dir.c:743
+msgid "no"
+msgstr "nie"
+
+#: dir.c:726
+msgid " impossibilities"
+msgstr " niemo�liwo�ci"
+
+#: dir.c:730
+msgid " so far."
+msgstr " jak dot�d."
+
+#: dir.c:746
+#, possible-c-format
+msgid " impossibilities in %u directories.\n"
+msgstr " niemo�liwo�ci w %u katalogach.\n"
+
+#: expand.c:92 expand.c:97
+#, possible-c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "Rekurencyjna zmienna `%s' wskazuje na sam� siebie"
+
+#: expand.c:120
+#, possible-c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "uwaga: niezdefiniowana zmienna `%.*s'"
+
+#: expand.c:223 expand.c:225
+msgid "unterminated variable reference"
+msgstr "niezako�czone odwo�anie do zmiennej"
+
+#: file.c:264
+#, possible-c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr "Polecenia dla pliku `%s' podano w %s:%u,"
+
+#: file.c:270
+#, possible-c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr "Polecenia dla pliku `%s' zosta�y wyznaczone na podstawie regu� standardowych,"
+
+#: file.c:274
+#, possible-c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr "ale `%s' jest teraz uznawany za ten sam plik co `%s'."
+
+#: file.c:278
+#, possible-c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr "Polecenia dla `%s' zosta�y zignorowane na rzecz polece� dla `%s'."
+
+#: file.c:299
+#, possible-c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr "nie mog� przemianowa� zale�no�ci single-colon `%s' na double-colon `%s'"
+
+#: file.c:302
+#, possible-c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr "nie mog� przemianowa� zale�no�ci double-colon `%s' na single-colon `%s'"
+
+#: file.c:363
+#, possible-c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr "*** Kasuj� plik po�redni `%s'"
+
+#: file.c:523
+msgid "# Not a target:"
+msgstr "# To nie jest obiekt:"
+
+#: file.c:531
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr "# Cenny plik (zale�no�� .PRECIOUS)."
+
+#: file.c:533
+msgid "# Phony target (dependency of .PHONY)."
+msgstr "# Obiekt niejawny (zale�no�� .PHONY)."
+
+#: file.c:535
+msgid "# Command-line target."
+msgstr "# Obiekt podany w linii polece�."
+
+#: file.c:537
+msgid "# A default or MAKEFILES makefile."
+msgstr "# Makefile domy�lny lub wymieniony w MAKEFILES."
+
+#: file.c:538
+#, possible-c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# Szukanie regu� domy�lnych%s zosta�o zako�czone.\n"
+
+#: file.c:539 file.c:564
+msgid " not"
+msgstr " nie"
+
+#: file.c:541
+#, possible-c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr "# �odyga wzorc�w domy�lnych/statycznych: `%s'\n"
+
+#: file.c:543
+msgid "# File is an intermediate dependency."
+msgstr "# Plik jest zale�no�ci� przej�ciow�."
+
+#: file.c:546
+msgid "# Also makes:"
+msgstr "# Robi r�wnie�:"
+
+#: file.c:552
+msgid "# Modification time never checked."
+msgstr "# Czas modyfikacji nie by� sprawdzany."
+
+#: file.c:554
+msgid "# File does not exist."
+msgstr "# Plik nie instnieje."
+
+#: file.c:557
+#, possible-c-format
+msgid "# Last modified %.24s (%0lx)\n"
+msgstr "# Ostatnio modyfikowany %.24s (%0lx)\n"
+
+#: file.c:560
+#, possible-c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# Ostatnio modyfikowany %.24s (%ld)\n"
+
+#: file.c:563
+#, possible-c-format
+msgid "# File has%s been updated.\n"
+msgstr "# Plik%s zosta� uaktualniony.\n"
+
+#: file.c:568
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# Aktualnie uruchamiane polecenia (TO JEST PLUSKWA)."
+
+#: file.c:571
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# Aktualnie uruchamiane polecenia zale�no�ci (TO JEST PLUSKWA)."
+
+#: file.c:580
+msgid "# Successfully updated."
+msgstr "# Uaktualnienie powiod�o si�."
+
+#: file.c:584
+msgid "# Needs to be updated (-q is set)."
+msgstr "# Powinien by� uaktualniony (-q jest w��czone)."
+
+#: file.c:587
+msgid "# Failed to be updated."
+msgstr "# Uaktualnianie nie powiod�o si�."
+
+#: file.c:590
+msgid "# Invalid value in `update_status' member!"
+msgstr "# B��dna warto�� w elemencie `update_status'!"
+
+#: file.c:597
+msgid "# Invalid value in `command_state' member!"
+msgstr "# B��dna warto�� w elemencie `command_state'!"
+
+#: file.c:616
+msgid ""
+"\n"
+"# Files"
+msgstr ""
+"\n"
+"# Pliki"
+
+#: file.c:639
+msgid ""
+"\n"
+"# No files."
+msgstr ""
+"\n"
+"# Brak plik�w."
+
+#: file.c:642
+#, possible-c-format
+msgid ""
+"\n"
+"# %u files in %u hash buckets.\n"
+msgstr ""
+"\n"
+"# %u plik�w w %u zbiorach mieszania.\n"
+
+#: file.c:644
+#, possible-c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr "# �rednio %.1f plik�w na zbi�r, max. %u plik�w w jednym zbiorze.\n"
+
+#: function.c:648
+msgid "undefined"
+msgstr "niezdefiniowana"
+
+#: function.c:657 variable.c:736
+msgid "default"
+msgstr "domy�lna"
+
+#: function.c:660 variable.c:739
+msgid "environment"
+msgstr "�rodowiskowa"
+
+#: function.c:663
+msgid "file"
+msgstr "plik"
+
+#: function.c:666
+msgid "environment override"
+msgstr "�rodowisko zakrywa"
+
+#: function.c:669 variable.c:748
+msgid "command line"
+msgstr "z linii polece�"
+
+#: function.c:672
+msgid "override"
+msgstr "zakrywa"
+
+#: function.c:675 variable.c:754
+msgid "automatic"
+msgstr "automatyczna"
+
+#: function.c:1087 function.c:1089
+msgid "non-numeric first argument to `word' function"
+msgstr "pierwszy argument funkcji `word' nie jest numeryczny"
+
+#: function.c:1097 function.c:1100
+msgid "the `word' function takes a one-origin index argument"
+msgstr "funkcja `word' przyjmuje argument b�d�cy indeksem"
+
+#: function.c:1341
+#, possible-c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "niedoko�czone wywo�anie funkcji `%s': brak `%c'"
+
+#: implicit.c:38
+#, possible-c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "Szukam standardowej regu�y dla `%s'.\n"
+
+#: implicit.c:53
+#, possible-c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr "Szukam standardowej regu�y typu archive-member dla `%s'.\n"
+
+#: implicit.c:190
+#, possible-c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "Pomijam rekurencyjne wywo�anie regu�y standardowej.%s%s\n"
+
+#: implicit.c:326
+#, possible-c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr "Pr�buj� regu�y wzorcowej z ga��zi� `%.*s'.\n"
+
+#: implicit.c:365
+#, possible-c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr "Odrzucam niemo�liw� zale�no�� %s `%s'.\n"
+
+#: implicit.c:366 implicit.c:374
+msgid "implicit"
+msgstr "standardow�"
+
+#: implicit.c:366 implicit.c:374
+msgid "rule"
+msgstr "wg regu�y"
+
+#: implicit.c:373
+#, possible-c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr "Pr�buj� %s zale�nosci `%s'.\n"
+
+#: implicit.c:393
+#, possible-c-format
+msgid "Found dependency as `%s'.%s\n"
+msgstr "Znalaz�em zale�no�� postaci `%s'.%s\n"
+
+#: implicit.c:408
+#, possible-c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr "Szukam regu�y zawieraj�cej plik %s `%s'.\n"
+
+#: implicit.c:409
+msgid "intermediate"
+msgstr "po�redni"
+
+#: job.c:190
+#, possible-c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] B��d 0x%x%s"
+
+#: job.c:190
+msgid " (ignored)"
+msgstr " (zignorowany)"
+
+#: job.c:193
+#, possible-c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] B��d %d (zignorowany)"
+
+#: job.c:194
+#, possible-c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] B��d %d"
+
+#: job.c:199
+msgid " (core dumped)"
+msgstr " (zrzut pami�ci)"
+
+#: job.c:234
+#, possible-c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr "Otrzyma�em SIGCHLD; %d niezako�czonych potomk�w.\n"
+
+#: job.c:265
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** Czekam na niezako�czone zadania...."
+
+#: job.c:290
+#, possible-c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr "�yj�cy potomek 0x%08lx PID %d%s\n"
+
+#: job.c:292 job.c:427 job.c:514 job.c:919
+msgid " (remote)"
+msgstr " (zdalne)"
+
+#: job.c:414
+#, possible-c-format
+msgid "Unknown%s job %d"
+msgstr "Nieznane%s zadanie %d"
+
+#: job.c:414
+msgid " remote"
+msgstr " zdalne"
+
+#: job.c:419
+#, possible-c-format
+msgid "%s finished."
+msgstr "%s zako�czone."
+
+#: job.c:424
+#, possible-c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr "Zbieram %s potomka 0x%08lx PID %d%s\n"
+
+#: job.c:425
+msgid "losing"
+msgstr "przegrywaj�cego"
+
+#: job.c:425
+msgid "winning"
+msgstr "wygrywaj�cego"
+
+#: job.c:512
+#, possible-c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr "Usuwam potomka 0x%08lx PID %d%s z kolejki.\n"
+
+#: job.c:917
+#, possible-c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr "Wstawiam potomka 0x%08lx PID %05d%s do kolejki.\n"
+
+#: job.c:1140
+msgid "cannot enforce load limits on this operating system"
+msgstr "niemo�liwe wymuszenie limit�w obci��enia w tym systemie"
+
+#: job.c:1142
+msgid "cannot enforce load limit: "
+msgstr "niemo�liwe wymuszenie limitu obci��enia: "
+
+#: job.c:1244
+#, possible-c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "b��d wewn�trzny: `%s' command_state %d w child_handler"
+
+#: job.c:1350
+#, possible-c-format
+msgid "Executing %s instead\n"
+msgstr "Zamiast tego wykonuj� %s\n"
+
+#: job.c:1381
+#, possible-c-format
+msgid "Error spawning, %d\n"
+msgstr "B��d podczas uruchamiania, %d\n"
+
+#: job.c:1442
+#, possible-c-format
+msgid "%s: Command not found"
+msgstr "%s: Polecenie nie znalezione"
+
+#: job.c:1471
+#, possible-c-format
+msgid "%s: Shell program not found"
+msgstr "%s: Nie znaleziono programu pow�oki"
+
+#: main.c:224
+msgid "Ignored for compatibility"
+msgstr "Zignorowane dla kompatybilno�ci"
+
+#: main.c:227
+msgid "Change to DIRECTORY before doing anything"
+msgstr "Przejd� do KATALOGu przed robieniem czegokolwiek"
+
+#: main.c:230
+msgid "Print lots of debugging information"
+msgstr "Wy�wietla du�o informacji uruchomieniowej"
+
+#: main.c:233
+msgid "Environment variables override makefiles"
+msgstr "Zmienne �rodowiskowe przykrywaj� makefile"
+
+#: main.c:236
+msgid "Read FILE as a makefile"
+msgstr "Wczytaj PLIK jako makefile"
+
+#: main.c:239
+msgid "Print this message and exit"
+msgstr "Wy�wietl ten komunikat i zako�cz"
+
+#: main.c:242
+msgid "Ignore errors from commands"
+msgstr "Ignoruj b��dy polece�"
+
+#: main.c:245
+msgid "Search DIRECTORY for included makefiles"
+msgstr "Szukaj w��czonych makefile w KATALOGu"
+
+#: main.c:249
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr "Dopuszczaj N zada� naraz; brak argumentu oznacza bez ogranicze�"
+
+#: main.c:253
+msgid "Keep going when some targets can't be made"
+msgstr "Kontynuuj je�li nie da si� zrobi� jakich� obiekt�w"
+
+#: main.c:258 main.c:263
+msgid "Don't start multiple jobs unless load is below N"
+msgstr "Nie zaczynaj nast�pnych zada� dop�ki obci��enie nie jest poni�ej N"
+
+#: main.c:270
+msgid "Don't actually run any commands; just print them"
+msgstr "Nie wykonuj �adnych polece�; wy�wietlaj je tylko"
+
+#: main.c:273
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "Przyjmuj �e PLIK jest bardzo stary i nie r�b go ponownie"
+
+#: main.c:276
+msgid "Print make's internal database"
+msgstr "Wy�wietl wewn�trzn� baz� danych make"
+
+#: main.c:279
+msgid "Run no commands; exit status says if up to date"
+msgstr "Nie uruchamiaj �adnych polece�; status powrotu wskazuje aktualno��"
+
+#: main.c:282
+msgid "Disable the built-in implicit rules"
+msgstr "Wy��cz wbudowane regu�y standardowe"
+
+#: main.c:285
+msgid "Don't echo commands"
+msgstr "Wy��cz echo polece�"
+
+#: main.c:289
+msgid "Turns off -k"
+msgstr "Wy��cza -k"
+
+#: main.c:292
+msgid "Touch targets instead of remaking them"
+msgstr "Uaktualniaj obiekty zamiast je robi�"
+
+#: main.c:295
+msgid "Print the version number of make and exit"
+msgstr "Wy�wietl wersj� make i zako�cz"
+
+#: main.c:298
+msgid "Print the current directory"
+msgstr "Wy�wietl aktualny katalog"
+
+#: main.c:301
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "Wy��cza -w, nawet je�li by�o ono w��czone domy�lnie"
+
+#: main.c:304
+msgid "Consider FILE to be infinitely new"
+msgstr "Traktuj PLIK jako zawsze nowy"
+
+#: main.c:307
+msgid "Warn when an undefined variable is referenced"
+msgstr "Ostrzegaj przy odwo�aniach do niezdefiniowanych zmiennych"
+
+#: main.c:394
+msgid "empty string invalid as file name"
+msgstr "pusty string nie mo�e by� nazw� pliku"
+
+#: main.c:781
+msgid "fopen (temporary file)"
+msgstr "fopen (plik tymczasowy)"
+
+#: main.c:787
+msgid "fwrite (temporary file)"
+msgstr "fwrite (plik tymczasowy)"
+
+#: main.c:930
+msgid "Updating makefiles...."
+msgstr "Uaktualniam makefile...."
+
+#: main.c:955
+#, possible-c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr "Makefile `%s' mo�e si� zap�tli�; nie przetwarzam go.\n"
+
+#: main.c:1029
+#, possible-c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "Nie uda�o si� zrobi� makefile `%s'."
+
+#: main.c:1044
+#, possible-c-format
+msgid "Included makefile `%s' was not found."
+msgstr "Nie znaleziono w��czanych makefile `%s'."
+
+#: main.c:1049
+#, possible-c-format
+msgid "Makefile `%s' was not found"
+msgstr "Nie znaleziono makefile `%s'"
+
+#: main.c:1108
+msgid "Couldn't change back to original directory."
+msgstr "Niemo�liwy powr�t do katalogu startowego."
+
+#: main.c:1142
+msgid "Re-executing:"
+msgstr "Ponownie uruchamiam:"
+
+#: main.c:1186
+msgid "Updating goal targets...."
+msgstr "Uaktualniam obiekty docelowe...."
+
+#: main.c:1211
+msgid "No targets specified and no makefile found"
+msgstr "Nie poda�e� obiekt�w lub nie znalaz�em makefile"
+
+#: main.c:1213
+msgid "No targets"
+msgstr "Brak obiekt�w"
+
+#: main.c:1439
+#, possible-c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "opcja `-%c' wymaga argumentu ca�kowitego dodatniego"
+
+#: main.c:1490
+#, possible-c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "U�ycie: %s [opcje] [obiekt] ...\n"
+
+#: main.c:1492
+msgid "Options:\n"
+msgstr "Opcje:\n"
+
+#: main.c:1967
+#, possible-c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make wersja %s"
+
+#: main.c:1971
+#, possible-c-format
+msgid ""
+", by Richard Stallman and Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sThis is free software; see the source for copying conditions.\n"
+"%sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n"
+"%sPARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+", Richard Stallman i Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sTen program jest darmowy; warunki kopiowania s� opisane w �r�d�ach.\n"
+"%sAutorzy nie daj� �ADNYCH gwarancji, w tym nawet gwarancji SPRZEDAWALNO�CI\n"
+"%slub PRZYDATNO�CI DO KONKRETNYCH CEL�W.\n"
+"\n"
+
+#: main.c:1993
+#, possible-c-format
+msgid ""
+"\n"
+"# Make data base, printed on %s"
+msgstr ""
+"\n"
+"# Baza danych Make, wy�wietlana na %s"
+
+#: main.c:2002
+#, possible-c-format
+msgid ""
+"\n"
+"# Finished Make data base on %s\n"
+msgstr ""
+"\n"
+"# Zako�czy�em tworzenie bazy danych Make na %s\n"
+
+#: main.c:2053
+msgid "Entering"
+msgstr "Wchodz�"
+
+#: main.c:2053
+msgid "Leaving"
+msgstr "Opuszczam"
+
+#: main.c:2072
+msgid "an unknown directory"
+msgstr "nieznany katalog"
+
+#: main.c:2074
+#, possible-c-format
+msgid "directory `%s'\n"
+msgstr "katalog `%s'\n"
+
+#: misc.c:212 misc.c:260
+msgid ". Stop.\n"
+msgstr ". Stop.\n"
+
+#: misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "Nieznany b��d 12345678901234567890"
+
+#: misc.c:282
+#, possible-c-format
+msgid "Unknown error %d"
+msgstr "Nieznany b��d %d"
+
+#: misc.c:318 misc.c:330 read.c:2151
+msgid "virtual memory exhausted"
+msgstr "brak pami�ci wirtualnej"
+
+#: misc.c:536
+#, possible-c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr "%s dost�p: u�ytkownik %d (rzeczywisty %d), grupa %d (rzeczywista %d)\n"
+
+#: misc.c:556
+msgid "Initialized"
+msgstr "Zainicjalizowany"
+
+#: misc.c:635
+msgid "User"
+msgstr "U�ytkownik"
+
+#: misc.c:683
+msgid "Make"
+msgstr "Make"
+
+#: misc.c:717
+msgid "Child"
+msgstr "Potomek"
+
+#: read.c:129
+msgid "Reading makefiles..."
+msgstr "Czytam makefile..."
+
+#: read.c:298
+#, possible-c-format
+msgid "Reading makefile `%s'"
+msgstr "Czytam makefile `%s'"
+
+#: read.c:300
+msgid " (no default goal)"
+msgstr " (brak celu domy�lnego)"
+
+#: read.c:302
+msgid " (search path)"
+msgstr " (przeszukiwana �cie�ka)"
+
+#: read.c:304
+msgid " (don't care)"
+msgstr " (niewa�ne)"
+
+#: read.c:306
+msgid " (no ~ expansion)"
+msgstr " (brak rozszerzenia ~)"
+
+#: read.c:466
+msgid "invalid syntax in conditional"
+msgstr "b��dna sk�adnia wyra�enia warunkowego"
+
+#: read.c:474
+msgid "extraneous `endef'"
+msgstr "nie zwi�zany `endef'"
+
+#: read.c:500 read.c:522
+msgid "empty `override' directive"
+msgstr "pusta dyrektywa `override'"
+
+#: read.c:584
+#, possible-c-format
+msgid "no file name for `%sinclude'"
+msgstr "brak nazwy pliku dla `%sinclude'"
+
+#: read.c:670
+msgid "commands commence before first target"
+msgstr "polecenia zaczynaj� sie przed pierwszym obiektem"
+
+#: read.c:714
+msgid "missing rule before commands"
+msgstr "brakuje regu�y przed poleceniami"
+
+#: read.c:733
+msgid "missing separator"
+msgstr "brakuj�cy separator"
+
+#: read.c:782
+msgid "missing target pattern"
+msgstr "brakuj�cy wzorzec obiektu"
+
+#: read.c:784
+msgid "multiple target patterns"
+msgstr "wielokrotne wzorce obiektu"
+
+#: read.c:789
+msgid "target pattern contains no `%%'"
+msgstr "wzorzec obiektu nie zawiera `%%'"
+
+#: read.c:829
+msgid "missing `endif'"
+msgstr "brakuj�cy `endif'"
+
+#: read.c:887
+msgid "Extraneous text after `endef' directive"
+msgstr "Niezwi�zany tekst po dyrektywie `endef'"
+
+#: read.c:917
+msgid "missing `endef', unterminated `define'"
+msgstr "brakuj�cy `endef', niezako�czone `define'"
+
+#: read.c:973 read.c:1120
+#, possible-c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "Niezwi�zany tekst po dyrektywie `%s'"
+
+#: read.c:977
+#, possible-c-format
+msgid "extraneous `%s'"
+msgstr "niezwi�zany `%s'"
+
+#: read.c:982
+msgid "only one `else' per conditional"
+msgstr "tylko jedno `else' w wyra�eniu warunkowym"
+
+#: read.c:1230
+msgid "mixed implicit and static pattern rules"
+msgstr "pomieszane standardowe i statyczne regu�y wzorc�w"
+
+#: read.c:1233
+msgid "mixed implicit and normal rules"
+msgstr "pomieszane standardowe i normalne regu�y"
+
+#: read.c:1273
+#, possible-c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr "obiekt `%s' nie pasuje do wzorca obiektu"
+
+#: read.c:1305 read.c:1407
+#, possible-c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr "plik obiektowy `%s' ma pozycje i : i ::"
+
+#: read.c:1313
+#, possible-c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr "obiekt `%s' wyspecyfikowany wielokrotnie w tej samej regule"
+
+#: read.c:1322
+#, possible-c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr "ostrze�enie: polecenia zakrywaj�ce dla obiektu `%s'"
+
+#: read.c:1325
+#, possible-c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr "ostrze�enie: ignoruj� stare polecenia dla obiektu `%s'"
+
+#: read.c:1815
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr "ostrze�enie: napotka�em na znak NUL; reszta linii zignorowana"
+
+#: remake.c:212
+#, possible-c-format
+msgid "Nothing to be done for `%s'."
+msgstr "Nie nic do roboty w `%s'."
+
+#: remake.c:213
+#, possible-c-format
+msgid "`%s' is up to date."
+msgstr "`%s' jest aktualne."
+
+#: remake.c:310
+#, possible-c-format
+msgid "Considering target file `%s'.\n"
+msgstr "Przetwarzam obiektowy plik `%s'.\n"
+
+#: remake.c:316
+#, possible-c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr "Ju� bez powodzenia pr�bowa�em uaktualni� plik `%s'.\n"
+
+#: remake.c:320
+#, possible-c-format
+msgid "File `%s' was considered already.\n"
+msgstr "Plik `%s' by� ju� przetwarzany.\n"
+
+#: remake.c:330
+#, possible-c-format
+msgid "Still updating file `%s'.\n"
+msgstr "Wci�� uaktualniam plik `%s'.\n"
+
+#: remake.c:333
+#, possible-c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "Sko�czy�em uaktualnia� plik `%s'.\n"
+
+#: remake.c:354
+#, possible-c-format
+msgid "File `%s' does not exist.\n"
+msgstr "Plik `%s' nie istnieje.\n"
+
+#: remake.c:364 remake.c:728
+#, possible-c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "Znalaz�em standardow� regu�� dla `%s'.\n"
+
+#: remake.c:366 remake.c:730
+#, possible-c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "Brak standardowych regu� dla `%s'.\n"
+
+#: remake.c:372 remake.c:736
+#, possible-c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "Stosuj� standardowe polecenia dla `%s'.\n"
+
+#: remake.c:392 remake.c:760
+#, possible-c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr "Okr�na dyrektywa %s <- %s porzucona."
+
+#: remake.c:474
+#, possible-c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr "Sko�czy�em zale�no�ci pliku obiektowego `%s'.\n"
+
+#: remake.c:480
+#, possible-c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr "Zale�no�ci `%s' s� wykonywane.\n"
+
+#: remake.c:493
+#, possible-c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr "Zaniechany plik obiektowy `%s'.\n"
+
+#: remake.c:497
+#, possible-c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "Obiekt `%s' nie zosta� wykonany z powodu b��d�w."
+
+#: remake.c:542
+#, possible-c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "Zale�no�� `%s' nie istnieje.\n"
+
+#: remake.c:544
+#, possible-c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr "Zale�no�� `%s' jest %s ni� zale�ne `%s'.\n"
+
+#: remake.c:545
+msgid "newer"
+msgstr "m�odsza"
+
+#: remake.c:545
+msgid "older"
+msgstr "starsza"
+
+#: remake.c:556
+#, possible-c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr "Obiekt `%s' jest typu double-colon i nie ma �adnych zale�no�ci.\n"
+
+#: remake.c:561
+#, possible-c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr "Brak polece� dla `%s' i brak zmienionych zale�no�ci.\n"
+
+#: remake.c:566
+#, possible-c-format
+msgid "No need to remake target `%s'.\n"
+msgstr "Nie ma potrzeby przerabia� obiektu `%s'.\n"
+
+#: remake.c:571
+#, possible-c-format
+msgid "Must remake target `%s'.\n"
+msgstr "Konieczne przerobienie obiektu `%s'.\n"
+
+#: remake.c:578
+#, possible-c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "Uruchomiono polecenia dla `%s'.\n"
+
+#: remake.c:585
+#, possible-c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "Przerabianie pliku obiektowego `%s' nie powiod�o si�.\n"
+
+#: remake.c:588
+#, possible-c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "Przerabianie pliku obiektowego `%s' powiod�o si�.\n"
+
+#: remake.c:591
+#, possible-c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr "Plik obiektowy `%s' powinien by� przerobiony z opcj� -q.\n"
+
+#: remake.c:880
+#, possible-c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%sBrak regu� do wykonania obiektu `%s'%s"
+
+#: remake.c:882
+#, possible-c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr "%sBrak regu� do zrobienia obiektu `%s', wymaganego przez `%s'%s"
+
+#: remake.c:1053
+#, possible-c-format
+msgid "*** File `%s' has modification time in the future"
+msgstr "*** Plik `%s' ma czas modyfikacji z przysz�o�ci"
+
+#: remote-cstms.c:94
+#, possible-c-format
+msgid "Customs won't export: %s\n"
+msgstr "Zasady nie eksportowane: %s\n"
+
+#: remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr "eksportuj�: Niemo�liwe stworzenie gniazda powrotnego."
+
+#: remote-cstms.c:138
+msgid "exporting: "
+msgstr "eksportuj�: "
+
+#: remote-cstms.c:171
+#, possible-c-format
+msgid "exporting: %s"
+msgstr "eksportuj�: %s"
+
+#: remote-cstms.c:185
+#, possible-c-format
+msgid "Job exported to %s ID %u\n"
+msgstr "Zadanie wyeksportowane do %s ID %u\n"
+
+#: rule.c:556
+msgid ""
+"\n"
+"# Implicit Rules"
+msgstr ""
+"\n"
+"# Regu�y stadardowe"
+
+#: rule.c:571
+msgid ""
+"\n"
+"# No implicit rules."
+msgstr ""
+"\n"
+"# Brak standardowych regu�."
+
+#: rule.c:574
+#, possible-c-format
+msgid ""
+"\n"
+"# %u implicit rules, %u"
+msgstr ""
+"\n"
+"# %u standardowych regu�, %u"
+
+#: rule.c:583
+msgid " terminal."
+msgstr ""
+
+#: rule.c:587
+#, possible-c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr "PLUSKWA: z�e num_pattern_rules! %u != %u"
+
+#: variable.c:658 variable.c:660
+msgid "empty variable name"
+msgstr "pusta nazwa zmiennej"
+
+#: variable.c:742
+msgid "makefile"
+msgstr "makefile"
+
+#: variable.c:745
+msgid "environment under -e"
+msgstr "�rodowisko pod -e"
+
+#: variable.c:751
+msgid "`override' directive"
+msgstr "dyrektywa `override'"
+
+#: variable.c:822
+msgid "# No variables."
+msgstr "# Brak zmiennych."
+
+#: variable.c:825
+#, possible-c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr "# %u zmiennych w %u zbiorach mieszaj�cych.\n"
+
+#: variable.c:828
+#, possible-c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr "# �rednio %.1f zmiennych w zbiorze, max. %u w jednym zbiorze.\n"
+
+#: variable.c:835
+#, possible-c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr "# �rednio %d.%d zmiennych w zbiorze, max. %u w jednym zbiorze.\n"
+
+#: variable.c:850
+msgid ""
+"\n"
+"# Variables\n"
+msgstr ""
+"\n"
+"# Zmienne\n"
+
+#: vpath.c:455
+msgid ""
+"\n"
+"# VPATH Search Paths\n"
+msgstr ""
+"\n"
+"# �cie�ki przeszukiwania VPATH\n"
+
+#: vpath.c:472
+msgid "# No `vpath' search paths."
+msgstr "# Brak �cie�ek przeszukiwania `vpath'"
+
+#: vpath.c:474
+#, possible-c-format
+msgid ""
+"\n"
+"# %u `vpath' search paths.\n"
+msgstr ""
+"\n"
+"# %u �cie�ek przeszukiwania `vpath'.\n"
+
+#: vpath.c:477
+msgid ""
+"\n"
+"# No general (`VPATH' variable) search path."
+msgstr ""
+"\n"
+"# Brak og�lnej (zmienna `VPATH') �cie�ki przeszukiwania."
+
+#: vpath.c:483
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# Og�lna (zmienna `VPATH') �cie�ka przeszukiwania:\n"
+"# "
+
+#: getloadavg.c:948
+msgid "Error getting load average"
+msgstr "B��d podczas uzyskiwania informacji o �rednim obci��eniu"
+
+#: getloadavg.c:952
+#, possible-c-format
+msgid "1-minute: %f "
+msgstr "1-no minutowe: %f "
+
+#: getloadavg.c:954
+#, possible-c-format
+msgid "5-minute: %f "
+msgstr "5-cio minutowe: %f "
+
+#: getloadavg.c:956
+#, possible-c-format
+msgid "15-minute: %f "
+msgstr "15-sto minutowe: %f "
+
+#: getopt.c:565
+#, possible-c-format
+msgid "%s: option `%s' is ambiguous\n"
+msgstr "%s: opcja `%s' jest niejednoznaczna\n"
+
+#: getopt.c:589
+#, possible-c-format
+msgid "%s: option `--%s' doesn't allow an argument\n"
+msgstr "%s: opcja `--%s' nie przyjmuje argument�w\n"
+
+#: getopt.c:594
+#, possible-c-format
+msgid "%s: option `%c%s' doesn't allow an argument\n"
+msgstr "%s: opcja `%c%s' nie przyjmuje argument�w\n"
+
+#: getopt.c:611
+#, possible-c-format
+msgid "%s: option `%s' requires an argument\n"
+msgstr "%s: opcja `%s' wymaga argumentu\n"
+
+#: getopt.c:640
+#, possible-c-format
+msgid "%s: unrecognized option `--%s'\n"
+msgstr "%s: nierozpoznana opcja `--%s'\n"
+
+#: getopt.c:644
+#, possible-c-format
+msgid "%s: unrecognized option `%c%s'\n"
+msgstr "%s: nierozpoznan opcja `%c%s'\n"
+
+#: getopt.c:670
+#, possible-c-format
+msgid "%s: illegal option -- %c\n"
+msgstr "%s: niedozwolona opcja -- %c\n"
+
+#: getopt.c:673
+#, possible-c-format
+msgid "%s: invalid option -- %c\n"
+msgstr "%s: b��dna opcja -- %c\n"
+
+#: getopt.c:709
+#, possible-c-format
+msgid "%s: option requires an argument -- %c\n"
+msgstr "%s: opcja wymaga argumentu -- %c\n"
+
+#: getopt.c:777 getopt1.c:141
+msgid "digits occur in two different argv-elements.\n"
+msgstr "cyfry pojawiaj� si� w dw�ch r�nych sk�adnikach argv\n"
+
+#: getopt.c:779 getopt1.c:143
+#, possible-c-format
+msgid "option %c\n"
+msgstr "opcja %c\n"
+
+#: getopt.c:783 getopt1.c:147
+msgid "option a\n"
+msgstr "opcja a\n"
+
+#: getopt.c:787 getopt1.c:151
+msgid "option b\n"
+msgstr "opcja b\n"
+
+#: getopt.c:791 getopt1.c:155
+#, possible-c-format
+msgid "option c with value `%s'\n"
+msgstr "opcja c o warto�ci `%s'\n"
+
+#: getopt.c:798 getopt1.c:166
+#, possible-c-format
+msgid "?? getopt returned character code 0%o ??\n"
+msgstr "?? getopt zwr�ci�a znak o kodzie 0%o ??\n"
+
+#: getopt.c:804 getopt1.c:172
+msgid "non-option ARGV-elements: "
+msgstr "sk�adniki argv nie b�d�ce opcjami: "
+
+#: getopt1.c:159
+#, possible-c-format
+msgid "option d with value `%s'\n"
+msgstr "opcja d o warto�ci `%s'\n"
+
+#: signame.c:57
+msgid "unknown signal"
+msgstr "nieznany sygna�"
+
+#: signame.c:107
+msgid "Hangup"
+msgstr "Roz��czenie"
+
+#: signame.c:110
+msgid "Interrupt"
+msgstr "Przerwanie"
+
+#: signame.c:113
+msgid "Quit"
+msgstr "Wyj�cie"
+
+#: signame.c:116
+msgid "Illegal Instruction"
+msgstr "B��dna instrukcja"
+
+#: signame.c:119
+msgid "Trace/breakpoint trap"
+msgstr "Pu�apka �ledzenia"
+
+#: signame.c:124
+msgid "Aborted"
+msgstr "Przerwany"
+
+#: signame.c:127
+msgid "IOT trap"
+msgstr "Pu�apka IOT"
+
+#: signame.c:130
+msgid "EMT trap"
+msgstr "Pu�apka EMT"
+
+#: signame.c:133
+msgid "Floating point exception"
+msgstr "Wyj�tek zmiennoprzecinkowy"
+
+#: signame.c:136
+msgid "Killed"
+msgstr "Zabity"
+
+#: signame.c:139
+msgid "Bus error"
+msgstr "B��d szyny"
+
+#: signame.c:142
+msgid "Segmentation fault"
+msgstr "Naruszenie segmentacji"
+
+#: signame.c:145
+msgid "Bad system call"
+msgstr "B��dne wywo�anie systemowe"
+
+#: signame.c:148
+msgid "Broken pipe"
+msgstr "Przerwany potok"
+
+#: signame.c:151
+msgid "Alarm clock"
+msgstr "Budzik"
+
+#: signame.c:154
+msgid "Terminated"
+msgstr "Zako�czony"
+
+#: signame.c:157
+msgid "User defined signal 1"
+msgstr "Sygna� u�ytkownika 1"
+
+#: signame.c:160
+msgid "User defined signal 2"
+msgstr "Sygna� u�ytkownika 2"
+
+#: signame.c:165 signame.c:168
+msgid "Child exited"
+msgstr "Potomek powr�ci�"
+
+#: signame.c:171
+msgid "Power failure"
+msgstr "Przerwa w zasilaniu"
+
+#: signame.c:174
+msgid "Stopped"
+msgstr "Zatrzymany"
+
+#: signame.c:177
+msgid "Stopped (tty input)"
+msgstr "Zatrzymany (wej�cie z tty)"
+
+#: signame.c:180
+msgid "Stopped (tty output)"
+msgstr "Zatrzymany (wyj�cie na tty)"
+
+#: signame.c:183
+msgid "Stopped (signal)"
+msgstr "Zatrzymany (sygna�)"
+
+#: signame.c:186
+msgid "CPU time limit exceeded"
+msgstr "Przekroczony czas CPU"
+
+#: signame.c:189
+msgid "File size limit exceeded"
+msgstr "Przekroczony limit wielko�ci pliku"
+
+#: signame.c:192
+msgid "Virtual timer expired"
+msgstr "Wyczerpany stoper wirtualny"
+
+#: signame.c:195
+msgid "Profiling timer expired"
+msgstr "Wyczerpany stoper profiluj�cy"
+
+#: signame.c:201
+msgid "Window changed"
+msgstr "Zmienione okno"
+
+#: signame.c:204
+msgid "Continued"
+msgstr "Kontynuowany"
+
+#: signame.c:207
+msgid "Urgent I/O condition"
+msgstr "Nag�a sytuacja I/O"
+
+#: signame.c:214 signame.c:223
+msgid "I/O possible"
+msgstr "I/O mo�liwe"
+
+#: signame.c:217
+msgid "SIGWIND"
+msgstr "SIGWIND"
+
+#: signame.c:220
+msgid "SIGPHONE"
+msgstr "SIGPHONE"
+
+#: signame.c:226
+msgid "Resource lost"
+msgstr "Zaginione zasoby"
+
+#: signame.c:229
+msgid "Danger signal"
+msgstr "Sygna� niebezpiecze�stwa"
+
+#: signame.c:232
+msgid "Information request"
+msgstr "��danie informacji"
+
+#: signame.c:286
+#, possible-c-format
+msgid "%s: unknown signal"
+msgstr "%s: nieznany sygna�"
+
+#: signame.c:299
+msgid "Signal 12345678901234567890"
+msgstr "Sygna� 12345678901234567890"
+
+#: signame.c:304
+#, possible-c-format
+msgid "Signal %d"
+msgstr "Sygna� %d"
diff --git a/i18n/ru.po b/i18n/ru.po
new file mode 100644
index 0000000..93af904
--- /dev/null
+++ b/i18n/ru.po
@@ -0,0 +1,1424 @@
+# ����������� make
+# Copyright (C) 1998 Free Software Foundation, Inc.
+# Oleg S. Tihonov <tihonov@ffke-campus.mipt.ru>, 1998
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: make 3.74.4\n"
+"POT-Creation-Date: 1996-05-22 09:11-0400\n"
+"PO-Revision-Date: 1998-12-02 23:00+03:00\n"
+"Last-Translator: Oleg S. Tihonov <tihonov@ffke-campus.mipt.ru>\n"
+"Language-Team: Russian <ru@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=koi8-r\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ar.c:48
+#, possible-c-format
+msgid "attempt to use unsupported feature: `%s'"
+msgstr "������� ������������� ����������������� ��������: `%s'"
+
+#: ar.c:142
+#, possible-c-format
+msgid "Error in lbr$ini_control, %d\n"
+msgstr "������ � lbr$ini_control, %d\n"
+
+#: ar.c:147
+#, possible-c-format
+msgid "Error opening library %s to lookup member %s, %d\n"
+msgstr "������ �������� ���������� %s ��� ������ ����� %s; %d\n"
+
+#: ar.c:153
+#, possible-c-format
+msgid "Error looking up module %s in library %s, %d\n"
+msgstr "������ ������ ������ %s � ���������� %s, %d\n"
+
+#: ar.c:159
+#, possible-c-format
+msgid "Error getting module info, %d\n"
+msgstr "������ ��������� �������� � ������, %d\n"
+
+#: ar.c:244
+msgid "touch archive member is not available on VMS"
+msgstr "���������� ������� ��������� ����� ������ ���������� � ������� VMS"
+
+#: ar.c:276
+#, possible-c-format
+msgid "touch: Archive `%s' does not exist"
+msgstr "���������� ������� ���������: ����� `%s' �� ����������"
+
+#: ar.c:279
+#, possible-c-format
+msgid "touch: `%s' is not a valid archive"
+msgstr "���������� ������� ���������: �������� �����: `%s'"
+
+#: ar.c:282
+msgid "touch: "
+msgstr "���������� ������� ���������: "
+
+#: ar.c:285
+#, possible-c-format
+msgid "touch: Member `%s' does not exist in `%s'"
+msgstr "���������� ������� ���������: ���� `%s' �� ���������� � `%s'"
+
+#: ar.c:291
+#, possible-c-format
+msgid "touch: Bad return code from ar_member_touch on `%s'"
+msgstr ""
+"���������� ������� ���������: ������� ar_member_touch �������\n"
+"��������� �������� ��� `%s'"
+
+#: arscan.c:550
+msgid " (name might be truncated)"
+msgstr " (��� ����� ���� �������)"
+
+#: arscan.c:552
+#, possible-c-format
+msgid " Date %s"
+msgstr " ���� %s"
+
+#~ #: arscan.c:553
+#~ #, possible-c-format
+#~ msgid " uid = %d, gid = %d, mode = 0%o.\n"
+#~ msgstr ""
+
+#: dir.c:678
+msgid "\n# Directories\n"
+msgstr "\n# ��������\n"
+
+#: dir.c:686
+#, possible-c-format
+msgid "# %s: could not be stat'd.\n"
+msgstr "# %s: ���������� �������� �������� ������� stat.\n"
+
+#: dir.c:689
+#, possible-c-format
+msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
+msgstr "# %s (device %d, inode [%d,%d,%d]): ���������� �������.\n"
+
+#: dir.c:694
+#, possible-c-format
+msgid "# %s (device %d, inode %d): could not be opened.\n"
+msgstr "# %s (device %d, inode %d): ���������� �������.\n"
+
+#~ #: dir.c:709
+#~ #, possible-c-format
+#~ msgid "# %s (device %d, inode [%d,%d,%d]): "
+#~ msgstr ""
+
+#~ #: dir.c:714
+#~ #, possible-c-format
+#~ msgid "# %s (device %d, inode %d): "
+#~ msgstr ""
+
+#: dir.c:718 dir.c:738
+msgid "No"
+msgstr "���"
+
+#: dir.c:721 dir.c:741
+msgid " files, "
+msgstr " ������,"
+
+#: dir.c:723 dir.c:743
+msgid "no"
+msgstr "���"
+
+#: dir.c:726
+msgid " impossibilities"
+msgstr " ������������ �����"
+
+#: dir.c:730
+msgid " so far."
+msgstr " �� ������� ������."
+
+#: dir.c:746
+#, possible-c-format
+msgid " impossibilities in %u directories.\n"
+msgstr " ������������ ����� � %u ���������.\n"
+
+#: expand.c:92 expand.c:97
+#, possible-c-format
+msgid "Recursive variable `%s' references itself (eventually)"
+msgstr "����������� ���������� `%s' ��������� ���� �� ���� (� ����������)"
+
+#: expand.c:120
+#, possible-c-format
+msgid "warning: undefined variable `%.*s'"
+msgstr "��������������: �������������� ���������� `%.*s'"
+
+#: expand.c:223 expand.c:225
+msgid "unterminated variable reference"
+msgstr "������������� ������ �� ����������"
+
+#: file.c:264
+#, possible-c-format
+msgid "Commands were specified for file `%s' at %s:%u,"
+msgstr "������� ��� ����� `%s' ���� ������ %s:%u,"
+
+#: file.c:270
+#, possible-c-format
+msgid "Commands for file `%s' were found by implicit rule search,"
+msgstr "������� ��� ����� `%s' ���� ������� �� �������� �������,"
+
+#: file.c:274
+#, possible-c-format
+msgid "but `%s' is now considered the same file as `%s'."
+msgstr "�� `%s' � `%s' ������ ��������� ����� � ��� �� ������. "
+
+#: file.c:278
+#, possible-c-format
+msgid "Commands for `%s' will be ignored in favor of those for `%s'."
+msgstr "������� ��� `%s' ������������, ����� ������������ ������� ��� `%s'."
+
+#: file.c:299
+#, possible-c-format
+msgid "can't rename single-colon `%s' to double-colon `%s'"
+msgstr "���������� ������������� `%s' � ����� ���������� � `%s' � ����� �����������"
+
+#: file.c:302
+#, possible-c-format
+msgid "can't rename double-colon `%s' to single-colon `%s'"
+msgstr "���������� ������������� `%s' � ����� ����������� � `%s' � ����� ����������"
+
+#: file.c:363
+#, possible-c-format
+msgid "*** Deleting intermediate file `%s'"
+msgstr "*** �������� �������������� ����� `%s'"
+
+#: file.c:523
+msgid "# Not a target:"
+msgstr "# �� �������� �����:"
+
+#: file.c:531
+msgid "# Precious file (dependency of .PRECIOUS)."
+msgstr "# ������ ���� (����������� .PRECIOUS)."
+
+#: file.c:533
+msgid "# Phony target (dependency of .PHONY)."
+msgstr "# ���������� (����������� �� .PHONY)."
+
+#: file.c:535
+msgid "# Command-line target."
+msgstr "# ����, ���������� �� ��������� ������."
+
+#: file.c:537
+msgid "# A default or MAKEFILES makefile."
+msgstr "# makefile �� ��������� ��� �� MAKEFILES."
+
+#: file.c:538
+#, possible-c-format
+msgid "# Implicit rule search has%s been done.\n"
+msgstr "# ����� ������� ������%s ������������.\n"
+
+#: file.c:539 file.c:564
+msgid " not"
+msgstr " ��"
+
+#: file.c:541
+#, possible-c-format
+msgid "# Implicit/static pattern stem: `%s'\n"
+msgstr "# ������ �������� ��� ������������ �������: `%s'\n"
+
+#: file.c:543
+msgid "# File is an intermediate dependency."
+msgstr "# ���� -- ������������� ����������."
+
+#: file.c:546
+msgid "# Also makes:"
+msgstr "# �������� �����:"
+
+#: file.c:552
+msgid "# Modification time never checked."
+msgstr "# ����� ��������� ������� �� �����������."
+
+#: file.c:554
+msgid "# File does not exist."
+msgstr "# ���� �� ����������."
+
+#: file.c:557
+#, possible-c-format
+msgid "# Last modified %.24s (%0lx)\n"
+msgstr "# ����� ���������� ��������� %.24s (%0lx)\n"
+
+#: file.c:560
+#, possible-c-format
+msgid "# Last modified %.24s (%ld)\n"
+msgstr "# ����� ���������� ��������� %.24s (%ld)\n"
+
+#: file.c:563
+#, possible-c-format
+msgid "# File has%s been updated.\n"
+msgstr "# ����%s ��� ��������.\n"
+
+#: file.c:568
+msgid "# Commands currently running (THIS IS A BUG)."
+msgstr "# � ������ ������ ����������� ��������� ������� (��� ������)."
+
+#: file.c:571
+msgid "# Dependencies commands running (THIS IS A BUG)."
+msgstr "# � ������ ������ ����������� ������� ��������� ����������� (��� ������)."
+
+#: file.c:580
+msgid "# Successfully updated."
+msgstr "# ������� ���������."
+
+#: file.c:584
+msgid "# Needs to be updated (-q is set)."
+msgstr "# ������ ���� ��������� (���������� ���� -q)."
+
+#: file.c:587
+msgid "# Failed to be updated."
+msgstr "# ������� ���������� ����������."
+
+#: file.c:590
+msgid "# Invalid value in `update_status' member!"
+msgstr "# �������� �������� ����� `update_status'!"
+
+#: file.c:597
+msgid "# Invalid value in `command_state' member!"
+msgstr "# �������� �������� ����� `command_state'!"
+
+#: file.c:616
+msgid "\n# Files"
+msgstr "\n# �����"
+
+#: file.c:639
+msgid "\n# No files."
+msgstr "\n# ������ ���."
+
+#: file.c:642
+#, possible-c-format
+msgid "\n# %u files in %u hash buckets.\n"
+msgstr "\n# %u ������ in %u ������� ���-�������..\n"
+
+#: file.c:644
+#, possible-c-format
+msgid "# average %.1f files per bucket, max %u files in one bucket.\n"
+msgstr "# � ������� %.1f ������ � ������, ����. %u ������ � ����� ������.\n"
+
+#: function.c:648
+msgid "undefined"
+msgstr "�� ����������"
+
+#: function.c:657 variable.c:736
+msgid "default"
+msgstr "�� ���������"
+
+#: function.c:660 variable.c:739
+msgid "environment"
+msgstr "���������� � �����"
+
+#: function.c:663
+msgid "file"
+msgstr "����"
+
+#: function.c:666
+msgid "environment override"
+msgstr "��������� ���������� �����"
+
+#: function.c:669 variable.c:748
+msgid "command line"
+msgstr "���������� � ��������� ������"
+
+#: function.c:672
+msgid "override"
+msgstr "���������"
+
+#: function.c:675 variable.c:754
+msgid "automatic"
+msgstr "��������������"
+
+#: function.c:1087 function.c:1089
+msgid "non-numeric first argument to `word' function"
+msgstr "���������� ������ �������� ��� ������� `word'"
+
+#: function.c:1097 function.c:1100
+msgid "the `word' function takes a one-origin index argument"
+msgstr "�������, ������� ������� `word' ��������� ��� ���������, ���������� � 1"
+
+#: function.c:1341
+#, possible-c-format
+msgid "unterminated call to function `%s': missing `%c'"
+msgstr "������������� ����� ������� `%s'; ��������� `%c'"
+
+#: implicit.c:38
+#, possible-c-format
+msgid "Looking for an implicit rule for `%s'.\n"
+msgstr "����� �������� ������� ��� `%s'.\n"
+
+#: implicit.c:53
+#, possible-c-format
+msgid "Looking for archive-member implicit rule for `%s'.\n"
+msgstr "����� �������� ������� ��� ����� ������ `%s'.\n"
+
+#: implicit.c:190
+#, possible-c-format
+msgid "Avoiding implicit rule recursion.%s%s\n"
+msgstr "��������� ������������ ������ �������� �������.%s%s\n"
+
+#: implicit.c:326
+#, possible-c-format
+msgid "Trying pattern rule with stem `%.*s'.\n"
+msgstr "������� ���������� ������� � ��������, ������ `%.*s'.\n"
+
+#: implicit.c:365
+#, possible-c-format
+msgid "Rejecting impossible %s dependency `%s'.\n"
+msgstr "���������� ����������� %s ����������� `%s'.\n"
+
+#: implicit.c:366 implicit.c:374
+msgid "implicit"
+msgstr "�������"
+
+#: implicit.c:366 implicit.c:374
+msgid "rule"
+msgstr "�������� ��������"
+
+#: implicit.c:373
+#, possible-c-format
+msgid "Trying %s dependency `%s'.\n"
+msgstr "������� ���������� %s ����������� `%s'.\n"
+
+#: implicit.c:393
+#, possible-c-format
+msgid "Found dependency as `%s'.%s\n"
+msgstr "����������� ������� ��� `%s'.%s\n"
+
+#: implicit.c:408
+#, possible-c-format
+msgid "Looking for a rule with %s file `%s'.\n"
+msgstr "����� ������� � %s ������ `%s'.\n"
+
+#: implicit.c:409
+msgid "intermediate"
+msgstr "�������������"
+
+#: job.c:190
+#, possible-c-format
+msgid "*** [%s] Error 0x%x%s"
+msgstr "*** [%s] ������ 0x%x%s"
+
+#: job.c:190
+msgid " (ignored)"
+msgstr " (������������) "
+
+#: job.c:193
+#, possible-c-format
+msgid "[%s] Error %d (ignored)"
+msgstr "[%s] ������ %d (������������)"
+
+#: job.c:194
+#, possible-c-format
+msgid "*** [%s] Error %d"
+msgstr "*** [%s] ������ %d"
+
+#: job.c:199
+msgid " (core dumped)"
+msgstr " (������ ���� ������)"
+
+#: job.c:234
+#, possible-c-format
+msgid "Got a SIGCHLD; %d unreaped children.\n"
+msgstr "������� ������ SIGCHLD; �������� � ��������������� ������������ %d.\n"
+
+#: job.c:265
+msgid "*** Waiting for unfinished jobs...."
+msgstr "*** �������� ���������� �������..."
+
+#: job.c:290
+#, possible-c-format
+msgid "Live child 0x%08lx PID %d%s\n"
+msgstr "������������� ������� 0x%08lx PID %d%s\n"
+
+#: job.c:292 job.c:427 job.c:514 job.c:919
+msgid " (remote)"
+msgstr " (���������)"
+
+#: job.c:414
+#, possible-c-format
+msgid "Unknown%s job %d"
+msgstr "�����������%s ������� %d"
+
+#: job.c:414
+msgid " remote"
+msgstr " ���������"
+
+#: job.c:419
+#, possible-c-format
+msgid "%s finished."
+msgstr "%s ���������."
+
+#: job.c:424
+#, possible-c-format
+msgid "Reaping %s child 0x%08lx PID %d%s\n"
+msgstr "��������� ����������� %s ������ ������� 0x%08lx PID %d%s\n"
+
+#: job.c:425
+msgid "losing"
+msgstr "��������"
+
+#: job.c:425
+msgid "winning"
+msgstr "����������"
+
+#: job.c:512
+#, possible-c-format
+msgid "Removing child 0x%08lx PID %d%s from chain.\n"
+msgstr "�������� ������� 0x%08lx PID %d%s �� ������� �������� ��������.\n"
+
+#: job.c:917
+#, possible-c-format
+msgid "Putting child 0x%08lx PID %05d%s on the chain.\n"
+msgstr "��������� ������� 0x%08lx PID %d%s � ������� �������� ��������.\n"
+
+#: job.c:1140
+msgid "cannot enforce load limits on this operating system"
+msgstr "��� ������������ ������� �� ��������� ������������� ������� ��������"
+
+#: job.c:1142
+msgid "cannot enforce load limit: "
+msgstr "���������� ���������� ������� ��������: "
+
+#: job.c:1244
+#, possible-c-format
+msgid "internal error: `%s' command_state %d in child_handler"
+msgstr "���������� ������: `%s' command_state %d � child_handler"
+
+#: job.c:1350
+#, possible-c-format
+msgid "Executing %s instead\n"
+msgstr "������ ��������� ����������� %s\n"
+
+#: job.c:1381
+#, possible-c-format
+msgid "Error spawning, %d\n"
+msgstr "������ ���������� ��������, %d\n"
+
+#: job.c:1442
+#, possible-c-format
+msgid "%s: Command not found"
+msgstr "%s: ������� �� �������"
+
+#: job.c:1471
+#, possible-c-format
+msgid "%s: Shell program not found"
+msgstr "%s: ��������� ��������� �� ������"
+
+#: main.c:224
+msgid "Ignored for compatibility"
+msgstr "������������ ��� �������������"
+
+#: main.c:227
+msgid "Change to DIRECTORY before doing anything"
+msgstr "������� � ������� ����� ������� ������"
+
+#: main.c:230
+msgid "Print lots of debugging information"
+msgstr "�������� ���������� ���������"
+
+#: main.c:233
+msgid "Environment variables override makefiles"
+msgstr "���������� ����� ����������� ����������, ������������ � make-�����"
+
+#: main.c:236
+msgid "Read FILE as a makefile"
+msgstr "������� ���� ��� make-����"
+
+#: main.c:239
+msgid "Print this message and exit"
+msgstr "�������� ��� ������� � �����"
+
+#: main.c:242
+msgid "Ignore errors from commands"
+msgstr "������������ ������ ������"
+
+#: main.c:245
+msgid "Search DIRECTORY for included makefiles"
+msgstr "������ ���������� make-����� � ��������"
+
+#: main.c:249
+msgid "Allow N jobs at once; infinite jobs with no arg"
+msgstr ""
+"��������� ������������ �� � �������; ���� �������� �� �����,\n"
+" ����� ������� ������������"
+
+#: main.c:253
+msgid "Keep going when some targets can't be made"
+msgstr "���������� ������, ���� ���� ��������� ���� �� ����������"
+
+#: main.c:258 main.c:263
+msgid "Don't start multiple jobs unless load is below N"
+msgstr "�� ��������� ����������� ������� ���� �������� �� �������� �� �"
+
+#: main.c:270
+msgid "Don't actually run any commands; just print them"
+msgstr "�� ��������� �������, ������ ���������� ��"
+
+#: main.c:273
+msgid "Consider FILE to be very old and don't remake it"
+msgstr "������� ���� ����� ������ � �� ������������ ���"
+
+#: main.c:276
+msgid "Print make's internal database"
+msgstr "���������� ���������� ���� ������ make"
+
+#: main.c:279
+msgid "Run no commands; exit status says if up to date"
+msgstr "�� ��������� �������, ������������ �������� ���������� ������ �������������"
+
+#: main.c:282
+msgid "Disable the built-in implicit rules"
+msgstr "�� ������������ ���������� ������� �������"
+
+#: main.c:285
+msgid "Don't echo commands"
+msgstr "�� �������� ����������� �������"
+
+#: main.c:289
+msgid "Turns off -k"
+msgstr "�������� ���� -k"
+
+#: main.c:292
+msgid "Touch targets instead of remaking them"
+msgstr "���������� ����� ������� �����, � �� ������������ ��"
+
+#: main.c:295
+msgid "Print the version number of make and exit"
+msgstr "�������� ���������� � ������ � �����"
+
+#: main.c:298
+msgid "Print the current directory"
+msgstr "���������� ������� �������"
+
+#: main.c:301
+msgid "Turn off -w, even if it was turned on implicitly"
+msgstr "�������� ���� -w, ���� ���� �� ��� ���� ������"
+
+#: main.c:304
+msgid "Consider FILE to be infinitely new"
+msgstr "������� ���� ������������� �����"
+
+#: main.c:307
+msgid "Warn when an undefined variable is referenced"
+msgstr "�������� �������������� ��� ������ �� �������������� ����������"
+
+#: main.c:394
+msgid "empty string invalid as file name"
+msgstr "������ ������ ����������� � �������� ����� �����"
+
+#: main.c:781
+msgid "fopen (temporary file)"
+msgstr "fopen (��������� ����)"
+
+#: main.c:787
+msgid "fwrite (temporary file)"
+msgstr "fwrite (��������� ����)"
+
+#: main.c:930
+msgid "Updating makefiles...."
+msgstr "���������� make-������..."
+
+#: main.c:955
+#, possible-c-format
+msgid "Makefile `%s' might loop; not remaking it.\n"
+msgstr "Make-���� `%s', ��������, ��������, �� �� ����� ��������������.\n"
+
+#: main.c:1029
+#, possible-c-format
+msgid "Failed to remake makefile `%s'."
+msgstr "������� ����������� make-���� `%s' ���������."
+
+#: main.c:1044
+#, possible-c-format
+msgid "Included makefile `%s' was not found."
+msgstr "���������� make-���� `%s' �� ������."
+
+#: main.c:1049
+#, possible-c-format
+msgid "Makefile `%s' was not found"
+msgstr "Make-���� `%s' �� ������"
+
+#: main.c:1108
+msgid "Couldn't change back to original directory."
+msgstr "���������� ������� � �������������� �������."
+
+#: main.c:1142
+msgid "Re-executing:"
+msgstr "��������� ����������:"
+
+#: main.c:1186
+msgid "Updating goal targets...."
+msgstr "���������� �����..."
+
+#: main.c:1211
+msgid "No targets specified and no makefile found"
+msgstr "�� ������ ���� � �� ������ make-����"
+
+#: main.c:1213
+msgid "No targets"
+msgstr "��� �����"
+
+#: main.c:1439
+#, possible-c-format
+msgid "the `-%c' option requires a positive integral argument"
+msgstr "���� `-%c' ������ �������������� � ����� ������������� ����������"
+
+#: main.c:1490
+#, possible-c-format
+msgid "Usage: %s [options] [target] ...\n"
+msgstr "�������������: %s [����]... [����]...\n"
+
+#: main.c:1492
+msgid "Options:\n"
+msgstr "�����:\n"
+
+#: main.c:1967
+#, possible-c-format
+msgid "%sGNU Make version %s"
+msgstr "%sGNU Make ������ %s"
+
+#: main.c:1971
+#, possible-c-format
+msgid ""
+", by Richard Stallman and Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%sThis is free software; see the source for copying conditions.\n"
+"%sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\n"
+"%sPARTICULAR PURPOSE.\n"
+"\n"
+msgstr ""
+", ������ Richard Stallman � Roland McGrath.\n"
+"%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95 Free Software Foundation, Inc.\n"
+"%s��� ��������� ���������; ����������� �� �������� ��������������� ��������\n"
+"%s� �������� ������. �� �� ������������� ��������; ���� ��������\n"
+"%s������������ �������� ��� ����������� ��� ���������� ����.\n"
+"\n"
+
+#: main.c:1993
+#, possible-c-format
+msgid "\n# Make data base, printed on %s"
+msgstr "\n# ���� ������ Make, ���������� %s"
+
+#: main.c:2002
+#, possible-c-format
+msgid "\n# Finished Make data base on %s\n"
+msgstr "\n# ������ ���� ������ Make ��������� %s\n"
+
+#: main.c:2053
+msgid "Entering"
+msgstr "���� �"
+
+#: main.c:2053
+msgid "Leaving"
+msgstr "����� ��"
+
+#: main.c:2072
+msgid "an unknown directory"
+msgstr "����������� �������"
+
+#: main.c:2074
+#, possible-c-format
+msgid "directory `%s'\n"
+msgstr "������� `%s'\n"
+
+#: misc.c:212 misc.c:260
+msgid ". Stop.\n"
+msgstr ". �������.\n"
+
+#: misc.c:277
+msgid "Unknown error 12345678901234567890"
+msgstr "����������� ������ 12345678901234567890"
+
+#: misc.c:282
+#, possible-c-format
+msgid "Unknown error %d"
+msgstr "����������� ������ %d"
+
+#: misc.c:318 misc.c:330 read.c:2151
+msgid "virtual memory exhausted"
+msgstr "����������� ������ ���������"
+
+#: misc.c:536
+#, possible-c-format
+msgid "%s access: user %d (real %d), group %d (real %d)\n"
+msgstr ""
+"����� ������� � %s: ������������ %d (�������������� %d),\n"
+"������ %d (�������������� %d)\n"
+
+#: misc.c:556
+msgid "Initialized"
+msgstr "���������������"
+
+#: misc.c:635
+msgid "User"
+msgstr "������������"
+
+#~ #: misc.c:683
+#~ msgid "Make"
+#~ msgstr ""
+
+#: misc.c:717
+msgid "Child"
+msgstr "�������"
+
+#: read.c:129
+msgid "Reading makefiles..."
+msgstr "������ make-������..."
+
+#: read.c:298
+#, possible-c-format
+msgid "Reading makefile `%s'"
+msgstr "������ make-����� `%s'"
+
+#: read.c:300
+msgid " (no default goal)"
+msgstr " (��� ���� �� ���������)"
+
+#: read.c:302
+msgid " (search path)"
+msgstr " (���� ������)"
+
+#: read.c:304
+msgid " (don't care)"
+msgstr " (������������ ������)"
+
+#: read.c:306
+msgid " (no ~ expansion)"
+msgstr " (�� ���������� ������ `~') "
+
+#: read.c:466
+msgid "invalid syntax in conditional"
+msgstr "�������� ��������� � �������� ���������"
+
+#: read.c:474
+msgid "extraneous `endef'"
+msgstr "�������� `endef'"
+
+#: read.c:500 read.c:522
+msgid "empty `override' directive"
+msgstr "������ ��������� `override'"
+
+#: read.c:584
+#, possible-c-format
+msgid "no file name for `%sinclude'"
+msgstr "�� ������ ��� ����� ��� `%sinclude'"
+
+#: read.c:670
+msgid "commands commence before first target"
+msgstr "������� ��������� �� ������� ����������� ����"
+
+#: read.c:714
+msgid "missing rule before commands"
+msgstr "����� ��������� ��������� �������"
+
+#: read.c:733
+msgid "missing separator"
+msgstr "�������� �����������"
+
+#: read.c:782
+msgid "missing target pattern"
+msgstr "�������� ������� ����"
+
+#: read.c:784
+msgid "multiple target patterns"
+msgstr "�� ���� ������� ����"
+
+#: read.c:789
+msgid "target pattern contains no `%%'"
+msgstr "������� ���� �� �������� `%%'"
+
+#: read.c:829
+msgid "missing `endif'"
+msgstr "��������� `endif'"
+
+#: read.c:887
+msgid "Extraneous text after `endef' directive"
+msgstr "�������� ����� ����� ��������� `endef'"
+
+#: read.c:917
+msgid "missing `endef', unterminated `define'"
+msgstr "��������� `endif', ������������� `define'"
+
+#: read.c:973 read.c:1120
+#, possible-c-format
+msgid "Extraneous text after `%s' directive"
+msgstr "�������� ����� ����� ��������� `%s'"
+
+#: read.c:977
+#, possible-c-format
+msgid "extraneous `%s'"
+msgstr "�������� `%s'"
+
+#: read.c:982
+msgid "only one `else' per conditional"
+msgstr "� �������� ��������� �������� ������ ���� `else'"
+
+#: read.c:1230
+msgid "mixed implicit and static pattern rules"
+msgstr "������� ������� ������� � ������� �� ������������ ���������"
+
+#: read.c:1233
+msgid "mixed implicit and normal rules"
+msgstr "������� ������� � ������� �������"
+
+#: read.c:1273
+#, possible-c-format
+msgid "target `%s' doesn't match the target pattern"
+msgstr "���� `%s' �� ������������� ������� �����"
+
+#: read.c:1305 read.c:1407
+#, possible-c-format
+msgid "target file `%s' has both : and :: entries"
+msgstr "������� ���� `%s' ����� ��������� � � `:', � � `::' "
+
+#: read.c:1313
+#, possible-c-format
+msgid "target `%s' given more than once in the same rule."
+msgstr "���� `%s' ������� ��������� ��� � ����� �������"
+
+#: read.c:1322
+#, possible-c-format
+msgid "warning: overriding commands for target `%s'"
+msgstr "��������������: ���������� ������ ��� ���� `%s'"
+
+#: read.c:1325
+#, possible-c-format
+msgid "warning: ignoring old commands for target `%s'"
+msgstr "��������������: ������������� ������ ������ ��� ���� `%s'"
+
+#: read.c:1815
+msgid "warning: NUL character seen; rest of line ignored"
+msgstr "��������������: �������� ������ NUL; ������������ �� ����� ������"
+
+#: remake.c:212
+#, possible-c-format
+msgid "Nothing to be done for `%s'."
+msgstr "���� `%s' �� ������� ���������� ������."
+
+#: remake.c:213
+#, possible-c-format
+msgid "`%s' is up to date."
+msgstr "`%s' �� ������� ����������."
+
+#: remake.c:310
+#, possible-c-format
+msgid "Considering target file `%s'.\n"
+msgstr "��������� �������� ����� `%s'.\n"
+
+#: remake.c:316
+#, possible-c-format
+msgid "Recently tried and failed to update file `%s'.\n"
+msgstr "���������� ������� �������� ���� `%s' ����������� ���������.\n"
+
+#: remake.c:320
+#, possible-c-format
+msgid "File `%s' was considered already.\n"
+msgstr "���� `%s' ��� ��� ���������.\n"
+
+#: remake.c:330
+#, possible-c-format
+msgid "Still updating file `%s'.\n"
+msgstr "���� `%s' ����������� � ������ ������.\n"
+
+#: remake.c:333
+#, possible-c-format
+msgid "Finished updating file `%s'.\n"
+msgstr "���������� ����� `%s' ���������.\n"
+
+#: remake.c:354
+#, possible-c-format
+msgid "File `%s' does not exist.\n"
+msgstr "���� `%s' �� ����������.\n"
+
+#: remake.c:364 remake.c:728
+#, possible-c-format
+msgid "Found an implicit rule for `%s'.\n"
+msgstr "������� ������� ������� ��� `%s'.\n"
+
+#: remake.c:366 remake.c:730
+#, possible-c-format
+msgid "No implicit rule found for `%s'.\n"
+msgstr "�� ������� ������� ������ ��� `%s'.\n"
+
+#: remake.c:372 remake.c:736
+#, possible-c-format
+msgid "Using default commands for `%s'.\n"
+msgstr "������������� ������ �� ��������� ��� `%s'.\n"
+
+#: remake.c:392 remake.c:760
+#, possible-c-format
+msgid "Circular %s <- %s dependency dropped."
+msgstr "����������� ����������� %s <- %s ���������."
+
+#: remake.c:474
+#, possible-c-format
+msgid "Finished dependencies of target file `%s'.\n"
+msgstr "���������� �����, �� ������� ������� ������� ���� `%s', ���������.\n"
+
+#: remake.c:480
+#, possible-c-format
+msgid "The dependencies of `%s' are being made.\n"
+msgstr "����, �� ������� ������� `%s', ���� �������.\n"
+
+#: remake.c:493
+#, possible-c-format
+msgid "Giving up on target file `%s'.\n"
+msgstr "��������� ������� �� ������� ����� `%s'.\n"
+
+#: remake.c:497
+#, possible-c-format
+msgid "Target `%s' not remade because of errors."
+msgstr "���� `%s' �� ���� ����������� ��-�� ������."
+
+#: remake.c:542
+#, possible-c-format
+msgid "Dependency `%s' does not exist.\n"
+msgstr "����������� `%s' �� ����������.\n"
+
+#: remake.c:544
+#, possible-c-format
+msgid "Dependency `%s' is %s than dependent `%s'.\n"
+msgstr "���� `%s' ������������ %s ��� ��������� �� ��� `%s'.\n"
+
+#: remake.c:545
+msgid "newer"
+msgstr "�����"
+
+#: remake.c:545
+msgid "older"
+msgstr "������"
+
+#: remake.c:556
+#, possible-c-format
+msgid "Target `%s' is double-colon and has no dependencies.\n"
+msgstr "���� `%s' ��������� � ����� ����������� � �� ����� ������������.\n"
+
+#: remake.c:561
+#, possible-c-format
+msgid "No commands for `%s' and no dependencies actually changed.\n"
+msgstr "������� ��� `%s' �� ������, � ����������� �� ���� ��������.\n"
+
+#: remake.c:566
+#, possible-c-format
+msgid "No need to remake target `%s'.\n"
+msgstr "��� ������������� ������������ ���� `%s'.\n"
+
+#: remake.c:571
+#, possible-c-format
+msgid "Must remake target `%s'.\n"
+msgstr "���������� ����������� ���� `%s'.\n"
+
+#: remake.c:578
+#, possible-c-format
+msgid "Commands of `%s' are being run.\n"
+msgstr "������� ��� `%s' ����������� � ��������� �����.\n"
+
+#: remake.c:585
+#, possible-c-format
+msgid "Failed to remake target file `%s'.\n"
+msgstr "������� ���������� �������� ����� `%s' ����������.\n"
+
+#: remake.c:588
+#, possible-c-format
+msgid "Successfully remade target file `%s'.\n"
+msgstr "������� ���� `%s' ������� ����������.\n"
+
+#: remake.c:591
+#, possible-c-format
+msgid "Target file `%s' needs remade under -q.\n"
+msgstr "������� ���� `%s' ������� ���������� � ������ -q.\n"
+
+#: remake.c:880
+#, possible-c-format
+msgid "%sNo rule to make target `%s'%s"
+msgstr "%s��� ������� ��� ������ ���� `%s'%s"
+
+#: remake.c:882
+#, possible-c-format
+msgid "%sNo rule to make target `%s', needed by `%s'%s"
+msgstr "%s��� ������� ��� ������ ���� `%s', ��������� ��� `%s'%s"
+
+#: remake.c:1053
+#, possible-c-format
+msgid "*** File `%s' has modification time in the future"
+msgstr "*** ���� `%s' ��� ������� � �������"
+
+#: remote-cstms.c:94
+#, possible-c-format
+msgid "Customs won't export: %s\n"
+msgstr ""
+
+#: remote-cstms.c:129
+msgid "exporting: Couldn't create return socket."
+msgstr "���������������: ���������� ������� ������������ �����."
+
+#: remote-cstms.c:138
+msgid "exporting: "
+msgstr "���������������: "
+
+#: remote-cstms.c:171
+#, possible-c-format
+msgid "exporting: %s"
+msgstr "���������������: %s"
+
+#: remote-cstms.c:185
+#, possible-c-format
+msgid "Job exported to %s ID %u\n"
+msgstr "������� �������������� �� %s ID %u\n"
+
+#: rule.c:556
+msgid "\n# Implicit Rules"
+msgstr "\n# ������� �������"
+
+#: rule.c:571
+msgid "\n# No implicit rules."
+msgstr "\n# ������� ������ ���."
+
+#: rule.c:574
+#, possible-c-format
+msgid "\n# %u implicit rules, %u"
+msgstr "\n# ������� ������: %u, ������������: %u"
+
+#: rule.c:583
+msgid " terminal."
+msgstr "."
+
+#: rule.c:587
+#, possible-c-format
+msgid "BUG: num_pattern_rules wrong! %u != %u"
+msgstr "������: �������� �������� num_pattern_rules! %u != %u"
+
+#: variable.c:658 variable.c:660
+msgid "empty variable name"
+msgstr "������ ��� ����������"
+
+#: variable.c:742
+msgid "makefile"
+msgstr "Make-����"
+
+#: variable.c:745
+msgid "environment under -e"
+msgstr "����� ���� -e"
+
+#: variable.c:751
+msgid "`override' directive"
+msgstr "��������� `override'"
+
+#: variable.c:822
+msgid "# No variables."
+msgstr "# ���������� ���."
+
+#: variable.c:825
+#, possible-c-format
+msgid "# %u variables in %u hash buckets.\n"
+msgstr "# %u ���������� � %u ������� ���-�������.\n"
+
+#: variable.c:828
+#, possible-c-format
+msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
+msgstr "# � ������� %.1f ���������� � ������, ����. %u � ����� ������.\n"
+
+#: variable.c:835
+#, possible-c-format
+msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
+msgstr "# � ������� %d.%d ���������� � ������, ����. %u � ����� ������.\n"
+
+#: variable.c:850
+msgid "\n# Variables\n"
+msgstr "\n# ����������\n"
+
+#: vpath.c:455
+msgid "\n# VPATH Search Paths\n"
+msgstr "\n# ���� ������ VPATH\n"
+
+#: vpath.c:472
+msgid "# No `vpath' search paths."
+msgstr "# �� ��������� ���� ������ `vpath'."
+
+#: vpath.c:474
+#, possible-c-format
+msgid "\n# %u `vpath' search paths.\n"
+msgstr "\n# %u `vpath' ���� ������.\n"
+
+#: vpath.c:477
+msgid "\n# No general (`VPATH' variable) search path."
+msgstr "\n# �� ��������� ����� (���������� `VPATH') ���� ������."
+
+#: vpath.c:483
+msgid ""
+"\n"
+"# General (`VPATH' variable) search path:\n"
+"# "
+msgstr ""
+"\n"
+"# ����� (���������� `VPATH') ���� ������:\n"
+"# "
+
+#: getloadavg.c:948
+msgid "Error getting load average"
+msgstr "������ ��������� �������� � ������� ��������"
+
+#: getloadavg.c:952
+#, possible-c-format
+msgid "1-minute: %f "
+msgstr "1 ������: %f "
+
+#: getloadavg.c:954
+#, possible-c-format
+msgid "5-minute: %f "
+msgstr "5 �����: %f "
+
+#: getloadavg.c:956
+#, possible-c-format
+msgid "15-minute: %f "
+msgstr "15 �����: %f "
+
+#~ # ��������� getopt ���������, �.�. ��� ��������� � ���
+#~ # ���������� ������ ���� ����������, � �������� � ��������� ������ make
+#~ #
+#~ #: getopt.c:565
+#~ #, possible-c-format
+#~ msgid "%s: option `%s' is ambiguous\n"
+#~ msgstr ""
+
+#~ #: getopt.c:589
+#~ #, possible-c-format
+#~ msgid "%s: option `--%s' doesn't allow an argument\n"
+#~ msgstr ""
+
+#~ #: getopt.c:594
+#~ #, possible-c-format
+#~ msgid "%s: option `%c%s' doesn't allow an argument\n"
+#~ msgstr ""
+
+#~ #: getopt.c:611
+#~ #, possible-c-format
+#~ msgid "%s: option `%s' requires an argument\n"
+#~ msgstr ""
+
+#~ #: getopt.c:640
+#~ #, possible-c-format
+#~ msgid "%s: unrecognized option `--%s'\n"
+#~ msgstr ""
+
+#~ #: getopt.c:644
+#~ #, possible-c-format
+#~ msgid "%s: unrecognized option `%c%s'\n"
+#~ msgstr ""
+
+#~ #: getopt.c:670
+#~ #, possible-c-format
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr ""
+
+#~ #: getopt.c:673
+#~ #, possible-c-format
+#~ msgid "%s: invalid option -- %c\n"
+#~ msgstr ""
+
+#~ #: getopt.c:709
+#~ #, possible-c-format
+#~ msgid "%s: option requires an argument -- %c\n"
+#~ msgstr ""
+
+#~ #: getopt.c:777 getopt1.c:141
+#~ msgid "digits occur in two different argv-elements.\n"
+#~ msgstr ""
+
+#~ #: getopt.c:779 getopt1.c:143
+#~ #, possible-c-format
+#~ msgid "option %c\n"
+#~ msgstr ""
+
+#~ #: getopt.c:783 getopt1.c:147
+#~ msgid "option a\n"
+#~ msgstr ""
+
+#~ #: getopt.c:787 getopt1.c:151
+#~ msgid "option b\n"
+#~ msgstr ""
+
+#~ #: getopt.c:791 getopt1.c:155
+#~ #, possible-c-format
+#~ msgid "option c with value `%s'\n"
+#~ msgstr ""
+
+#~ #: getopt.c:798 getopt1.c:166
+#~ #, possible-c-format
+#~ msgid "?? getopt returned character code 0%o ??\n"
+#~ msgstr ""
+
+#~ #: getopt.c:804 getopt1.c:172
+#~ msgid "non-option ARGV-elements: "
+#~ msgstr ""
+
+#~ #: getopt1.c:159
+#~ #, possible-c-format
+#~ msgid "option d with value `%s'\n"
+#~ msgstr ""
+
+#: signame.c:57
+msgid "unknown signal"
+msgstr "����������� ������"
+
+#: signame.c:107
+msgid "Hangup"
+msgstr "����� ������������ �����"
+
+#: signame.c:110
+msgid "Interrupt"
+msgstr "����������"
+
+#: signame.c:113
+msgid "Quit"
+msgstr "��������� ����������"
+
+#: signame.c:116
+msgid "Illegal Instruction"
+msgstr "������������ ����������"
+
+#: signame.c:119
+msgid "Trace/breakpoint trap"
+msgstr "���������� �� ����������� �����"
+
+#: signame.c:124
+msgid "Aborted"
+msgstr "��������"
+
+#: signame.c:127
+msgid "IOT trap"
+msgstr "������ IOT"
+
+#: signame.c:130
+msgid "EMT trap"
+msgstr "������ ������������"
+
+#: signame.c:133
+msgid "Floating point exception"
+msgstr "������ �������� � ��������� ������"
+
+#: signame.c:136
+msgid "Killed"
+msgstr "�����������"
+
+#: signame.c:139
+msgid "Bus error"
+msgstr "�������� ��������� � ������"
+
+#: signame.c:142
+msgid "Segmentation fault"
+msgstr "��������� ���� ������� � ������"
+
+#: signame.c:145
+msgid "Bad system call"
+msgstr "������������ ��������� �����"
+
+#: signame.c:148
+msgid "Broken pipe"
+msgstr "����� ������"
+
+#: signame.c:151
+msgid "Alarm clock"
+msgstr "������ �� �������"
+
+#: signame.c:154
+msgid "Terminated"
+msgstr "����������"
+
+#: signame.c:157
+msgid "User defined signal 1"
+msgstr "������������ ������������� ������ 1"
+
+#: signame.c:160
+msgid "User defined signal 2"
+msgstr "������������ ������������� ������ 2"
+
+#: signame.c:165 signame.c:168
+msgid "Child exited"
+msgstr "������� �������� ������"
+
+#: signame.c:171
+msgid "Power failure"
+msgstr "����� �������"
+
+#: signame.c:174
+msgid "Stopped"
+msgstr "�������"
+
+#: signame.c:177
+msgid "Stopped (tty input)"
+msgstr "������� (���� � ���������) "
+
+#: signame.c:180
+msgid "Stopped (tty output)"
+msgstr "������� (����� �� ��������)"
+
+#: signame.c:183
+msgid "Stopped (signal)"
+msgstr "������� (������)"
+
+#: signame.c:186
+msgid "CPU time limit exceeded"
+msgstr "�������� ������ ������������� �������"
+
+#: signame.c:189
+msgid "File size limit exceeded"
+msgstr "�������� ������ ������� �����"
+
+#: signame.c:192
+msgid "Virtual timer expired"
+msgstr "����������� ����� �������"
+
+#: signame.c:195
+msgid "Profiling timer expired"
+msgstr "����� �������������� �������"
+
+#: signame.c:201
+msgid "Window changed"
+msgstr "���� ��������"
+
+#: signame.c:204
+msgid "Continued"
+msgstr "�������������"
+
+#: signame.c:207
+msgid "Urgent I/O condition"
+msgstr "������� ����������� ����/�����"
+
+#: signame.c:214 signame.c:223
+msgid "I/O possible"
+msgstr "�������� ����/�����"
+
+#~ #: signame.c:217
+#~ msgid "SIGWIND"
+#~ msgstr ""
+
+#~ #: signame.c:220
+#~ msgid "SIGPHONE"
+#~ msgstr ""
+
+#: signame.c:226
+msgid "Resource lost"
+msgstr "������ �������"
+
+#: signame.c:229
+msgid "Danger signal"
+msgstr "������ ���������"
+
+#: signame.c:232
+msgid "Information request"
+msgstr "������ ����������"
+
+#: signame.c:286
+#, possible-c-format
+msgid "%s: unknown signal"
+msgstr "%s: ����������� ������"
+
+#: signame.c:299
+msgid "Signal 12345678901234567890"
+msgstr "������ 12345678901234567890"
+
+#: signame.c:304
+#, possible-c-format
+msgid "Signal %d"
+msgstr "������ %d"
diff --git a/make.h b/make.h
index d217632..3b79d5d 100644
--- a/make.h
+++ b/make.h
@@ -40,26 +40,14 @@ Boston, MA 02111-1307, USA. */
#endif /* C++ or ANSI C. */
-#if HAVE_LOCALE_H
-# include <locale.h>
-#endif
+#include "gettext.h"
+#define _(Text) gettext (Text)
+#define N_(Text) gettext_noop (Text)
+
#if !HAVE_SETLOCALE
# define setlocale(Category, Locale) /* empty */
#endif
-#if ENABLE_NLS
-# include <libintl.h>
-# define _(Text) gettext (Text)
-#else
-# undef bindtextdomain
-# define bindtextdomain(Domain, Directory) /* empty */
-# undef textdomain
-# define textdomain(Domain) /* empty */
-# define _(Text) Text
-# define gettext(Text) Text
-#endif
-#define N_(Text) Text
-
#ifdef CRAY
/* This must happen before #include <signal.h> so
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
deleted file mode 100644
index ea01d49..0000000
--- a/po/Makefile.in.in
+++ /dev/null
@@ -1,247 +0,0 @@
-# Makefile for program source directory in GNU NLS utilities package.
-# Copyright (C) 1995, 1996, 1997 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
-# but which still want to provide support for the GNU gettext functionality.
-# Please note that the actual code is *not* freely available.
-
-PACKAGE = @PACKAGE@
-VERSION = @VERSION@
-
-SHELL = /bin/sh
-@SET_MAKE@
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-
-prefix = @prefix@
-exec_prefix = @exec_prefix@
-datadir = $(prefix)/@DATADIRNAME@
-localedir = $(datadir)/locale
-gnulocaledir = $(prefix)/share/locale
-gettextsrcdir = $(prefix)/share/gettext/po
-subdir = po
-
-INSTALL = @INSTALL@
-INSTALL_DATA = @INSTALL_DATA@
-MKINSTALLDIRS = @MKINSTALLDIRS@
-
-CC = @CC@
-GENCAT = @GENCAT@
-GMSGFMT = PATH=../src:$$PATH @GMSGFMT@
-MSGFMT = @MSGFMT@
-XGETTEXT = PATH=../src:$$PATH @XGETTEXT@
-MSGMERGE = PATH=../src:$$PATH msgmerge
-
-DEFS = @DEFS@
-CFLAGS = @CFLAGS@
-CPPFLAGS = @CPPFLAGS@
-
-INCLUDES = -I.. -I$(top_srcdir)/intl
-
-COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
-
-SOURCES = cat-id-tbl.c
-POFILES = @POFILES@
-GMOFILES = @GMOFILES@
-DISTFILES = Makefile.in.in POTFILES.in $(PACKAGE).pot \
-stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
-
-POTFILES = \
-
-CATALOGS = @CATALOGS@
-CATOBJEXT = @CATOBJEXT@
-INSTOBJEXT = @INSTOBJEXT@
-
-.SUFFIXES:
-.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
-
-.c.o:
- $(COMPILE) $<
-
-.po.pox:
- $(MAKE) $(PACKAGE).pot
- $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
-
-.po.mo:
- $(MSGFMT) -o $@ $<
-
-.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
-
-
-all: all-@USE_NLS@
-
-all-yes: cat-id-tbl.c $(CATALOGS)
-all-no:
-
-$(srcdir)/$(PACKAGE).pot: $(POTFILES)
- $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
- --add-comments --keyword=_ --keyword=N_ \
- --files-from=$(srcdir)/POTFILES.in \
- && test ! -f $(PACKAGE).po \
- || ( 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 -x "$(MKINSTALLDIRS)"; then \
- $(MKINSTALLDIRS) $(DESTDIR)$(datadir); \
- else \
- $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir); \
- fi
- @catalogs='$(CATALOGS)'; \
- for cat in $$catalogs; do \
- cat=`basename $$cat`; \
- case "$$cat" in \
- *.gmo) destdir=$(DESTDIR)$(gnulocaledir);; \
- *) destdir=$(DESTDIR)$(localedir);; \
- esac; \
- lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
- dir=$$destdir/$$lang/LC_MESSAGES; \
- if test -r "$(MKINSTALLDIRS)"; then \
- $(MKINSTALLDIRS) $$dir; \
- else \
- $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \
- fi; \
- if test -r $$cat; then \
- $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
- echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \
- else \
- $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
- 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; \
- fi; \
- done
- if test "$(PACKAGE)" = "gettext"; then \
- if test -x "$(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:
-
-uninstall:
- catalogs='$(CATALOGS)'; \
- for cat in $$catalogs; do \
- cat=`basename $$cat`; \
- lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
- rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
- rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
- rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
- rm -f $(DESTDIR)$(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
- done
-
-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 -fr *.o
-
-clean: mostlyclean
-
-distclean: clean
- rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
-
-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)
- dists="$(DISTFILES)"; \
- for file in $$dists; do \
- ln $(srcdir)/$$file $(distdir) 2> /dev/null \
- || cp -p $(srcdir)/$$file $(distdir); \
- done
-
-update-po: Makefile
- $(MAKE) $(PACKAGE).pot
- PATH=`pwd`/../src:$$PATH; \
- cd $(srcdir); \
- catalogs='$(CATALOGS)'; \
- for cat in $$catalogs; do \
- cat=`basename $$cat`; \
- lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
- mv $$lang.po $$lang.old.po; \
- echo "$$lang:"; \
- if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
- rm -f $$lang.old.po; \
- else \
- echo "msgmerge for $$cat failed!"; \
- rm -f $$lang.po; \
- mv $$lang.old.po $$lang.po; \
- fi; \
- done
-
-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 .. \
- && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
- $(SHELL) ./config.status
-
-# 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:
diff --git a/po/POTFILES.in b/po/POTFILES.in
deleted file mode 100644
index c739b21..0000000
--- a/po/POTFILES.in
+++ /dev/null
@@ -1,27 +0,0 @@
-# List of source files containing translatable strings for GNU make.
-# Copyright (C) 2000 Free Software Foundation, Inc.
-
-# Sources from make proper
-
-ar.c
-arscan.c
-commands.c
-dir.c
-expand.c
-file.c
-function.c
-getopt.c
-implicit.c
-job.c
-main.c
-make.h
-misc.c
-read.c
-remake.c
-remote-cstms.c
-rule.c
-signame.c
-variable.c
-vpath.c
-
-# Sources in the Windows port