# German message translation file for GNU make
# Copyright © 1996, 1997, 2002, 2013, 2016 Free Software Foundation, Inc.
# This file is distributed under the same license as the make package.
# Philipp Thomas <pth@suse.de> 2013, 2016
# Karl Eichwalder <ke@suse.de>, 2002, 2005.
# Alexander Mader  <aumader@gmx.net>, 2000.
# Alexander Mader  <mader@wias-berlin.de>, 1997.
# Jochen Hein <jochen.hein@informatik.tu-clausthal.de>, 1996.
#
# Vereinheitlichen:
# =================
# command(s) -> Befehl(e)?  (nicht: Kommando(s))
# target(s)  -> Ziel(e)     (nicht: Target(s))
#
msgid ""
msgstr ""
"Project-Id-Version: make 4.2.1\n"
"Report-Msgid-Bugs-To: bug-make@gnu.org\n"
"POT-Creation-Date: 2019-05-30 20:18-0700\n"
"PO-Revision-Date: 2016-06-20 15:03+0200\n"
"Last-Translator: Philipp Thomas <pth@suse.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"

#: ar.c:46
#, c-format
msgid "attempt to use unsupported feature: '%s'"
msgstr "Versuch, eine nicht unterstützte Funktionalität zu verwenden: „%s“"

#: ar.c:123
msgid "touch archive member is not available on VMS"
msgstr ""
"VMS bietet keine Möglichkeit einer Änderung \n"
"der Zeitmarken von Archiveinträgen"

#: ar.c:147
#, c-format
msgid "touch: Archive '%s' does not exist"
msgstr "touch: Archiv „%s“ existiert nicht"

#: ar.c:150
#, c-format
msgid "touch: '%s' is not a valid archive"
msgstr "touch: „%s“ ist kein gültiges Archiv"

#: ar.c:157
#, c-format
msgid "touch: Member '%s' does not exist in '%s'"
msgstr "touch: Eintrag „%s“ existiert nicht in „%s“"

#: ar.c:164
#, c-format
msgid "touch: Bad return code from ar_member_touch on '%s'"
msgstr ""
"touch: Ungültiger Rückgabewert beim Zugriff \n"
"von ar_member_touch auf „%s“"

#: arscan.c:130
#, c-format
msgid "lbr$set_module() failed to extract module info, status = %d"
msgstr "„lbr$set_module()“ konnte keine Modulinformation auslesen; Status = %d"

#: arscan.c:236
#, c-format
msgid "lbr$ini_control() failed with status = %d"
msgstr "„lbr$ini_control()“ scheiterte mit Status = %d"

#: arscan.c:261
#, c-format
msgid "unable to open library '%s' to lookup member status %d"
msgstr ""
"Die Bibliothek „%s“ konnte nicht geöffnet werden um nach Eintragsstatus %d "
"zu suchen"

#: arscan.c:965
#, c-format
msgid "Member '%s'%s: %ld bytes at %ld (%ld).\n"
msgstr ""
"Eintrag „%s“ %s: \n"
"%ld Bytes an Position %ld (%ld).\n"

#: arscan.c:966
msgid " (name might be truncated)"
msgstr " (der Name ist möglicherweise abgeschnitten)"

#: arscan.c:968
#, c-format
msgid "  Date %s"
msgstr "  Datum %s"

#: arscan.c:969
#, c-format
msgid "  uid = %d, gid = %d, mode = 0%o.\n"
msgstr "  Nutzer-ID = %d, Gruppen-ID = %d, Modus = 0%o.\n"

#: commands.c:402
#, c-format
msgid "Recipe has too many lines (%ud)"
msgstr "Die Regel hat zu viele Zeilen (%ud)"

#: commands.c:503
msgid "*** Break.\n"
msgstr "*** Abbruch.\n"

#: commands.c:627
#, c-format
msgid "*** [%s] Archive member '%s' may be bogus; not deleted"
msgstr "*** [%s] Archiveintrag „%s“ ist möglicherweise falsch; nicht gelöscht"

#: commands.c:631
#, c-format
msgid "*** Archive member '%s' may be bogus; not deleted"
msgstr "*** Archiveintrag „%s“ ist möglicherweise falsch; nicht gelöscht"

#: commands.c:645
#, c-format
msgid "*** [%s] Deleting file '%s'"
msgstr "*** [%s] Datei „%s“ wird gelöscht"

#: commands.c:647
#, c-format
msgid "*** Deleting file '%s'"
msgstr "*** Datei „%s“ wird gelöscht"

#: commands.c:683
msgid "#  recipe to execute"
msgstr "#  Auszuführende Regel"

#: commands.c:686
msgid " (built-in):"
msgstr " (eingebaut):"

#: commands.c:688
#, c-format
msgid " (from '%s', line %lu):\n"
msgstr " (aus „%s“, Zeile %lu):\n"

#: dir.c:1069
msgid ""
"\n"
"# Directories\n"
msgstr ""
"\n"
"# Verzeichnisse\n"

#: dir.c:1081
#, c-format
msgid "# %s: could not be stat'd.\n"
msgstr "# %s: Status konnte nicht festgestellt werden.\n"

#: dir.c:1085
msgid "# %s (key %s, mtime %I64u): could not be opened.\n"
msgstr ""
"# %s ( Schlüssel %s,  letzte Änderung %I64u): Öffnen scheiterte.\n"
"Konnte nicht geöffnet werden.\n"

#: dir.c:1090
#, c-format
msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
msgstr ""
"# %s (Gerät %d, Inode [%d,%d,%d]): \n"
"Konnte nicht geöffnet werden.\n"

#: dir.c:1095
#, c-format
msgid "# %s (device %ld, inode %ld): could not be opened.\n"
msgstr ""
"# %s (Gerät %ld, Inode %ld): \n"
"Konnte nicht geöffnet werden.\n"

#: dir.c:1122
msgid "# %s (key %s, mtime %I64u): "
msgstr "# %s (Schlüssel %s,  letzte Änderung %%I64u): "

#: dir.c:1127
#, c-format
msgid "# %s (device %d, inode [%d,%d,%d]): "
msgstr "# %s (Gerät %d, Inode [%d,%d,%d]): "

#: dir.c:1132
#, c-format
msgid "# %s (device %ld, inode %ld): "
msgstr "# %s (Gerät %ld, Inode %ld): "

#: dir.c:1138 dir.c:1159
msgid "No"
msgstr "Keine"

#: dir.c:1141 dir.c:1162
msgid " files, "
msgstr " Dateien, "

#: dir.c:1143 dir.c:1164
msgid "no"
msgstr "keine"

#: dir.c:1146
msgid " impossibilities"
msgstr " Unmöglichkeiten"

#: dir.c:1150
msgid " so far."
msgstr " bisher."

#: dir.c:1167
#, c-format
msgid " impossibilities in %lu directories.\n"
msgstr " Unmöglichkeiten in %lu Verzeichnissen.\n"

#: expand.c:125
#, c-format
msgid "Recursive variable '%s' references itself (eventually)"
msgstr "Rekursive Variable „%s“ referenziert sich (schließlich) selbst"

#: expand.c:271
msgid "unterminated variable reference"
msgstr "Nicht abgeschlossene Variablenreferenz"

#: file.c:278
#, c-format
msgid "Recipe was specified for file '%s' at %s:%lu,"
msgstr "Die Regel für die Datei „%s“ wurde in %s angegeben:%lu,"

#: file.c:283
#, c-format
msgid "Recipe for file '%s' was found by implicit rule search,"
msgstr ""
"Die Regel für die Datei „%s“ wurden aufgrund \n"
"der Suche nach impliziten Regeln gefunden,"

#: file.c:287
#, 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."

#: file.c:290
#, c-format
msgid "Recipe for '%s' will be ignored in favor of the one for '%s'."
msgstr ""
"Die Regel für „%s“ wird ignoriert, \n"
"die für „%s“ wird bevorzugt."

#: file.c:310
#, 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"

#: file.c:316
#, 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"

#: file.c:408
#, c-format
msgid "*** Deleting intermediate file '%s'"
msgstr "*** Löschen der übergangsweise angelegten Datei „%s“"

#: file.c:412
msgid "Removing intermediate files...\n"
msgstr "Die übergangsweise angelegte Datei „%s“ wird gelöscht...\n"

#: file.c:818
msgid "Current time"
msgstr "Aktuelle Zeit"

#: file.c:822
#, c-format
msgid "%s: Timestamp out of range; substituting %s"
msgstr "%s: Zeitstempel außerhalb des Gültigkeitsbereichs; %s wird ersetzt"

#: file.c:962
msgid "# Not a target:"
msgstr "# Dies ist kein Ziel:"

#: file.c:967
msgid "#  Precious file (prerequisite of .PRECIOUS)."
msgstr "#  Wertvolle Datei (benötigt von .PRECIOUS)."

#: file.c:969
msgid "#  Phony target (prerequisite of .PHONY)."
msgstr "#  Vorgetäuschtes Ziel (benötigt von .PHONY)."

#: file.c:971
msgid "#  Command line target."
msgstr "#  Kommandozeilen-Ziel (target)."

#: file.c:973
msgid "#  A default, MAKEFILES, or -include/sinclude makefile."
msgstr "#  Eine standardmässige, MAKEFILES oder -include/sinclude Makedatei."

#: file.c:975
msgid "#  Builtin rule"
msgstr "# Eingebaute Regel"

#: file.c:977
msgid "#  Implicit rule search has been done."
msgstr "#  Die Suche nach impliziten Regeln wurde durchgeführt."

#: file.c:978
msgid "#  Implicit rule search has not been done."
msgstr "#  Die Suche nach impliziten Regeln wurde nicht durchgeführt."

#: file.c:980
#, c-format
msgid "#  Implicit/static pattern stem: '%s'\n"
msgstr "#  Wurzel impliziter/statischer Muster: „%s“\n"

#: file.c:982
msgid "#  File is an intermediate prerequisite."
msgstr "#  Datei ist ein Zwischenschritt in den Abhängigkeiten."

#: file.c:986
msgid "#  Also makes:"
msgstr "#  Erzeugt außerdem:"

#: file.c:992
msgid "#  Modification time never checked."
msgstr "#  Zeit der letzten Änderung wurde nicht überprüft."

#: file.c:994
msgid "#  File does not exist."
msgstr "#  Die Datei existiert nicht."

#: file.c:996
msgid "#  File is very old."
msgstr "#  Datei ist sehr alt."

#: file.c:1001
#, c-format
msgid "#  Last modified %s\n"
msgstr "#  Zuletzt geändert %s\n"

#: file.c:1004
msgid "#  File has been updated."
msgstr "#  Datei wurde aktualisiert."

#: file.c:1004
msgid "#  File has not been updated."
msgstr "#  Datei wurde nicht aktualisiert."

#: file.c:1008
msgid "#  Recipe currently running (THIS IS A BUG)."
msgstr "#  Derzeit laufende Regel (DAS IST EIN FEHLER)."

#: file.c:1011
msgid "#  Dependencies recipe running (THIS IS A BUG)."
msgstr "#  Derzeit läuft die Regel für Abhängigkeiten (DAS IST EIN FEHLER)."

#: file.c:1020
msgid "#  Successfully updated."
msgstr "#  Erfolgreich aktualisiert."

#: file.c:1024
msgid "#  Needs to be updated (-q is set)."
msgstr "#  Eine Aktualisierung ist notwendig (-q ist angegeben)."

#: file.c:1027
msgid "#  Failed to be updated."
msgstr "#  Aktualisierung ist fehlgeschlagen."

#: file.c:1032
msgid "#  Invalid value in 'command_state' member!"
msgstr "#  Ungültiger Wert im „command_state“-Strukturelement!"

#: file.c:1051
msgid ""
"\n"
"# Files"
msgstr ""
"\n"
"# Dateien"

#: file.c:1055
msgid ""
"\n"
"# files hash-table stats:\n"
"# "
msgstr ""
"\n"
"# Statistik der Hash-Tabelle für Dateien:\n"
"# "

#: file.c:1065
#, c-format
msgid "%s: Field '%s' not cached: %s"
msgstr "%s: Feld „%s“ wird nicht zwischengespeichert: %s"

#: function.c:790
msgid "non-numeric first argument to 'word' function"
msgstr "Nicht-numerisches erstes Argument für die „word“-Funktion"

#: function.c:795
msgid "first argument to 'word' function must be greater than 0"
msgstr "Das erste Argument für  die „word“-Funktion muss größer als 0 sein"

#: function.c:815
msgid "non-numeric first argument to 'wordlist' function"
msgstr "Nicht-numerisches erstes Argument für die „wordlist“-Funktion"

#: function.c:817
msgid "non-numeric second argument to 'wordlist' function"
msgstr "Nicht-numerisches zweites Argument zur „wordlist“-Funktion"

#: function.c:1525
#, c-format
msgid "windows32_openpipe: DuplicateHandle(In) failed (e=%ld)\n"
msgstr "„windows32_openpipe“: „DuplicateHandle(In)“ schlug fehl (e=%ld)\n"

#: function.c:1549
#, c-format
msgid "windows32_openpipe: DuplicateHandle(Err) failed (e=%ld)\n"
msgstr "„cwindows32_openpipe“: „DuplicateHandle(Err)“ schlug fehl (e=%ld)\n"

#: function.c:1556
#, c-format
msgid "CreatePipe() failed (e=%ld)\n"
msgstr "„CreatePipe()“ schlug fehl (e=%ld)\n"

#: function.c:1564
msgid "windows32_openpipe(): process_init_fd() failed\n"
msgstr "windows32_openpipe(): process_init_fd() schlug fehl\n"

#: function.c:1858
#, c-format
msgid "Cleaning up temporary batch file %s\n"
msgstr "Die temporäre Stapelverarbeitungsdatei %s wird gelöscht\n"

#: function.c:2215 function.c:2240
msgid "file: missing filename"
msgstr "Datei: fehlender Dateiname"

#: function.c:2219 function.c:2250
#, c-format
msgid "open: %s: %s"
msgstr "Öffnen: %s: %s"

#: function.c:2227
#, c-format
msgid "write: %s: %s"
msgstr "Schreiben: %s: %s"

#: function.c:2230 function.c:2267
#, c-format
msgid "close: %s: %s"
msgstr "schließend: %s: %s"

#: function.c:2243
msgid "file: too many arguments"
msgstr "Datei: zu viele Argumente"

#: function.c:2262
#, c-format
msgid "read: %s: %s"
msgstr "Lesen: %s: %s"

#: function.c:2275
#, c-format
msgid "file: invalid file operation: %s"
msgstr "Unzulässige Dateioperation: %s"

#: function.c:2390
#, c-format
msgid "insufficient number of arguments (%d) to function '%s'"
msgstr "Zuwenig Argumente (%d) für die Funktion „%s“"

#: function.c:2402
#, c-format
msgid "unimplemented on this platform: function '%s'"
msgstr "Auf dieser Rechnerkonfiguration nicht implementiert: Funktion „%s“"

#: function.c:2466
#, c-format
msgid "unterminated call to function '%s': missing '%c'"
msgstr "Nicht beendeter Aufruf der Funktion „%s“: „%c“ fehlt"

#: function.c:2650
msgid "Empty function name"
msgstr "Leerer Funktionsname"

#: function.c:2652
#, c-format
msgid "Invalid function name: %s"
msgstr "Unzulässiger Funktionsname: %s"

#: function.c:2654
#, c-format
msgid "Function name too long: %s"
msgstr "Der Funktionsname ist zu lang: %s"

#: function.c:2657
#, c-format
msgid "Invalid minimum argument count (%u) for function %s"
msgstr "Ungültige minimale Anzahl von Argumenten (%u) für die Funktion „%s“"

#: function.c:2660
#, c-format
msgid "Invalid maximum argument count (%u) for function %s"
msgstr "Ungülte maximale Anzahl an Argumenten (%u) für die Funktion „%s“"

#: getopt.c:659
#, c-format
msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: Option „%s“ ist mehrdeutig\n"

#: getopt.c:683
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: Option „--%s“ erlaubt kein Argument\n"

#: getopt.c:688
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: Option „%c%s“ erlaubt kein Argument\n"

#: getopt.c:705 getopt.c:878
#, c-format
msgid "%s: option '%s' requires an argument\n"
msgstr "%s: Option „%s“ erfordert ein Argument\n"

#: getopt.c:734
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: unbekannte Option „--%s“\n"

#: getopt.c:738
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: unbekannte Option „%c%s“\n"

#: getopt.c:764
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: unzulässige Option -- %c\n"

#: getopt.c:767
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: ungültige Option -- %c\n"

#: getopt.c:797 getopt.c:927
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: Option erfordert ein Argument -- %c\n"

#: getopt.c:844
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: Option „-W %s“ ist mehrdeutig\n"

#: getopt.c:862
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: Option „-W %s“ erlaubt kein Argument\n"

#: guile.c:58
#, c-format
msgid "guile: Expanding '%s'\n"
msgstr "guile: Verarbeite „%s“\n"

#: guile.c:74
#, c-format
msgid "guile: Evaluating '%s'\n"
msgstr "guile: begutachte „%s“\n"

#: hash.c:49
#, c-format
msgid "can't allocate %lu bytes for hash table: memory exhausted"
msgstr ""
"es können keine %lu Bytes für die Hashtabelle reserviert werden: "
"Hauptspeicher erschöpft"

#: hash.c:280
#, c-format
msgid "Load=%ld/%ld=%.0f%%, "
msgstr "Auslastung=%ld/%ld=%.0f%%, "

#: hash.c:282
#, c-format
msgid "Rehash=%d, "
msgstr "Rehash=%d, "

#: hash.c:283
#, c-format
msgid "Collisions=%ld/%ld=%.0f%%"
msgstr "Kollisionen=%ld/%ld%.0f%%"

#: implicit.c:38
#, c-format
msgid "Looking for an implicit rule for '%s'.\n"
msgstr "Es wird nach einer impliziten Regel für „%s“ gesucht.\n"

#: implicit.c:54
#, c-format
msgid "Looking for archive-member implicit rule for '%s'.\n"
msgstr ""
"Es wird nach einer impliziten Regel für Archiveinträge für „%s“ gesucht.\n"

#: implicit.c:311
msgid "Avoiding implicit rule recursion.\n"
msgstr "Rekursion in den impliziten Regeln wird vermieden.\n"

#: implicit.c:486
#, c-format
msgid "Stem too long: '%.*s'.\n"
msgstr "Wurzel zu lang: „%.*s“.\n"

#: implicit.c:491
#, c-format
msgid "Trying pattern rule with stem '%.*s'.\n"
msgstr "Muster-Regel mit Wurzel „%.*s“ wird probiert.\n"

#: implicit.c:697
#, c-format
msgid "Rejecting impossible rule prerequisite '%s'.\n"
msgstr "Unmögliche Voraussetzung „%s“ für eine Regel wird abgelehnt.\n"

#: implicit.c:698
#, c-format
msgid "Rejecting impossible implicit prerequisite '%s'.\n"
msgstr "Unmögliche implizite Voraussetzung „%s“ wird abgelehnt.\n"

#: implicit.c:711
#, c-format
msgid "Trying rule prerequisite '%s'.\n"
msgstr "Regel-Voraussetzung „%s“ wird auprobiert.\n"

#: implicit.c:712
#, c-format
msgid "Trying implicit prerequisite '%s'.\n"
msgstr "Implizite Voraussetzung „%s“ wird ausprobiert.\n"

#: implicit.c:751
#, c-format
msgid "Found prerequisite '%s' as VPATH '%s'\n"
msgstr "Die Voraussetzung „%s“ wurde als VPATH „%s“ gefunden\n"

#: implicit.c:765
#, c-format
msgid "Looking for a rule with intermediate file '%s'.\n"
msgstr ""
"Es wird nach einer Regel mit der übergangsweise verwendeten Datei „%s“ "
"gesucht.\n"

#: job.c:363
msgid "Cannot create a temporary file\n"
msgstr "Eine temporäre Datei kann nicht erzeugt werden\n"

#: job.c:485
msgid " (core dumped)"
msgstr " (Speicherauszug erstellt)"

#: job.c:490
msgid " (ignored)"
msgstr " (ignoriert)"

#: job.c:494 job.c:1828
msgid "<builtin>"
msgstr "<eingebaut>"

#: job.c:510
#, c-format
msgid "%s[%s: %s] Error %d%s"
msgstr "%s[%s: %s] Fehler %d%s"

#: job.c:599
msgid "*** Waiting for unfinished jobs...."
msgstr "*** Es wird auf noch nicht beendete Prozesse gewartet...."

#: job.c:629
#, c-format
msgid "Live child %p (%s) PID %s %s\n"
msgstr "Aktiver Kindprozess %p (%s) PID %s %s\n"

#: job.c:631 job.c:833 job.c:952 job.c:1583
msgid " (remote)"
msgstr " (entfernt)"

#: job.c:831
#, c-format
msgid "Reaping losing child %p PID %s %s\n"
msgstr "Sammle erfolglosen Kindprozess %p PID %s %s\n"

#: job.c:832
#, c-format
msgid "Reaping winning child %p PID %s %s\n"
msgstr "Sammle erfolgreichen Kindprozess %p PID %s %s\n"

#: job.c:839
#, c-format
msgid "Cleaning up temp batch file %s\n"
msgstr "Lösche temporäre Stapelverarbeitungsdatei „%s“\n"

#: job.c:845
#, c-format
msgid "Cleaning up temp batch file %s failed (%d)\n"
msgstr "Löschen der temporären Stapelverarbeitungsdatei „%s“ scheiterte (%d)\n"

#: job.c:951
#, c-format
msgid "Removing child %p PID %s%s from chain.\n"
msgstr "Entferne Kindprozess %p PID %s%s aus der Kette.\n"

#: job.c:1006
#, c-format
msgid "Released token for child %p (%s).\n"
msgstr "Token des Kindprozesses %p PID (%s) freigegeben.\n"

#: job.c:1508 job.c:2201
#, c-format
msgid "process_easy() failed to launch process (e=%ld)\n"
msgstr "„process_easy()“ konnte den Prozess nicht starten (e=%ld)\n"

#: job.c:1512 job.c:2205
#, c-format
msgid ""
"\n"
"Counted %d args in failed launch\n"
msgstr ""
"\n"
"%d Argumente gehörten zum fehlgeschlagenen Prozessstart\n"

#: job.c:1581
#, c-format
msgid "Putting child %p (%s) PID %s%s on the chain.\n"
msgstr "Nehme Kindprozess %p (%s) PID %s%s in die Kette auf.\n"

#: job.c:1811
#, c-format
msgid "Obtained token for child %p (%s).\n"
msgstr "Token für den Kindprozess %p (%s) erhalten.\n"

#: job.c:1838
#, c-format
msgid "%s: target '%s' does not exist"
msgstr "%s: Archiv „%s“ existiert nicht"

#: job.c:1841
#, c-format
msgid "%s: update target '%s' due to: %s"
msgstr "%s: Ziel „%s“ wird aktualisiert wegen: %s"

#: job.c:1956
msgid "cannot enforce load limits on this operating system"
msgstr ""
"Auf diesem Betriebssystem kann die Einhaltung\n"
"der Lastbeschränkung nicht erzwungen werden"

#: job.c:1958
msgid "cannot enforce load limit: "
msgstr "Lasteinschränkung kann nicht erzwungen werden: "

#: job.c:2048
msgid "no more file handles: could not duplicate stdin\n"
msgstr ""
"Keine weiteren Dateireferenzen verfügbar: die Standardeingabe konnte\n"
"nicht dupliziert werden\n"

#: job.c:2060
msgid "no more file handles: could not duplicate stdout\n"
msgstr ""
"Keine weiteren Dateireferenzen verfügbar: die Standardausgabe konnte\n"
"nicht dupliziert werden\n"

#: job.c:2074
msgid "no more file handles: could not duplicate stderr\n"
msgstr ""
"Keine weiteren Dateireferenzen verfügbar: Standardfehler konnte\n"
"nicht dupliziert werden\n"

#: job.c:2089
msgid "Could not restore stdin\n"
msgstr "Die Standardeingabe konnte nicht wieder hergestellt werden\n"

#: job.c:2097
msgid "Could not restore stdout\n"
msgstr "Die Standardausgabe konnte nicht wieder hergestellt werden\n"

#: job.c:2105
msgid "Could not restore stderr\n"
msgstr "Standardfehler konnte nicht wieder hergestellt werden\n"

#: job.c:2234
#, c-format
msgid "make reaped child pid %s, still waiting for pid %s\n"
msgstr ""
"„make“ registrierte die Beendigung des Kindprozesses mit ID %s,\n"
"wartet jedoch noch auf den Prozess mit ID %s.\n"

#: job.c:2275
#, c-format
msgid "%s: %s: Command not found\n"
msgstr "%s: %s: Kommando nicht gefunden\n"

#: job.c:2277
#, c-format
msgid "%s[%u]: %s: Command not found\n"
msgstr "%s[%u]: %s: Befehl nicht gefunden\n"

#: job.c:2337
#, c-format
msgid "%s: Shell program not found"
msgstr "%s: Shell-Programm wurde nicht gefunden"

#: job.c:2346
msgid "spawnvpe: environment space might be exhausted"
msgstr "spawnvpe: der Platz in der Programmumgebung könnte erschöpft sein"

#: job.c:2584
#, c-format
msgid "$SHELL changed (was '%s', now '%s')\n"
msgstr "$SHELL gewechselt (war „%s“, ist jetzt „%s“)\n"

#: job.c:3022 job.c:3207
#, c-format
msgid "Creating temporary batch file %s\n"
msgstr "Temporäre Stapelverarbeitungsdatei %s wird erstellt\n"

#: job.c:3030
msgid ""
"Batch file contents:\n"
"\t@echo off\n"
msgstr ""
"Inhalt der Stapelverarbeitungsdatei:\n"
"\t@echo off\n"

#: job.c:3219
#, c-format
msgid ""
"Batch file contents:%s\n"
"\t%s\n"
msgstr ""
"Inhalt der Stapelverarbeitungsdatei:%s\n"
"\t%s\n"

#: job.c:3327
#, c-format
msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n"
msgstr "%s (Zeile %d) Falscher Shell-Kontext (!unixy && !batch_mode_shell)\n"

#: job.h:43
msgid "-O[TYPE] (--output-sync[=TYPE]) is not configured for this build."
msgstr ""
"-O[TYPE] (--output-sync[=TYPE]) ist für diese Bau-Aufgabe nicht konfiguriert."

#: load.c:60
#, c-format
msgid "Failed to open global symbol table: %s"
msgstr "Die globale Symboltabelle konnte nicht geöffnet werden: %s"

#: load.c:97
#, c-format
msgid "Loaded object %s is not declared to be GPL compatible"
msgstr "Ds geladede Objekt %s wurde nicht als GPL-kompatibel deklariert"

#: load.c:104
#, c-format
msgid "Failed to load symbol %s from %s: %s"
msgstr "Symbol %s konnte nicht aus %s geladen werden: %s"

#: load.c:149
#, c-format
msgid "Empty symbol name for load: %s"
msgstr "Zu ladedender Symbolname ist leer: %s"

#: load.c:204
#, c-format
msgid "Loading symbol %s from %s\n"
msgstr "Symbol %s wird aus %s geladen\n"

#: load.c:256
msgid "The 'load' operation is not supported on this platform."
msgstr "Die Operation „load“ wird auf dieser Plattform nicht unterstützt."

#: main.c:338
msgid "Options:\n"
msgstr "Optionen:\n"

#: main.c:339
msgid "  -b, -m                      Ignored for compatibility.\n"
msgstr ""
"  -b, -m                      Wird aus Kompatibilitätsgründen ignoriert\n"

#: main.c:341
msgid "  -B, --always-make           Unconditionally make all targets.\n"
msgstr "  -B, --always-make           Alle Ziele ohne Bedingungen erstellen\n"

#: main.c:343
msgid ""
"  -C DIRECTORY, --directory=DIRECTORY\n"
"                              Change to DIRECTORY before doing anything.\n"
msgstr ""
"  -C VERZEICHNIS, --directory=VERZEICHNIS\n"
"                              In VERZEICHNIS wechseln, bevor etwas getan "
"wird\n"

#: main.c:346
msgid "  -d                          Print lots of debugging information.\n"
msgstr ""
"  -d                          Viele Informationen zur Fehlersuche ausgeben.\n"

#: main.c:348
msgid ""
"  --debug[=FLAGS]             Print various types of debugging information.\n"
msgstr ""
"  --debug[=KENNUNGEN]         Verschiedene Arten von Debug-Information "
"ausgeben\n"

#: main.c:350
msgid ""
"  -e, --environment-overrides\n"
"                              Environment variables override makefiles.\n"
msgstr ""
"  -e, --environment-overrides\n"
"                              Umgebungsvariablen überschreiben „make“-"
"Steuerdateien\n"

#: main.c:353
msgid ""
"  --eval=STRING               Evaluate STRING as a makefile statement.\n"
msgstr ""
"  --eval=ZEIENKETTE           ZEICHENKETTE wie einen Makedatei-Eintrag "
"auswerten.\n"

#: main.c:355
msgid ""
"  -f FILE, --file=FILE, --makefile=FILE\n"
"                              Read FILE as a makefile.\n"
msgstr ""
"  -f DATEI, --file=DATEI, --makefile=DATEI\n"
"                              DATEI als Makefile lesen\n"

#: main.c:358
msgid "  -h, --help                  Print this message and exit.\n"
msgstr "  -h, --help                  Diese Meldung ausgeben und beenden\n"

#: main.c:360
msgid "  -i, --ignore-errors         Ignore errors from recipes.\n"
msgstr "  -i, --ignore-errors         Fehler in Regeln werden irgnoriert\n"

#: main.c:362
msgid ""
"  -I DIRECTORY, --include-dir=DIRECTORY\n"
"                              Search DIRECTORY for included makefiles.\n"
msgstr ""
"  -I VERZEICHNIS, --include-dir=VERZEICHNIS\n"
"                              VERZEICHNIS nach eingebundenen\n"
"                              Makedateien durchsuchen\n"

#: main.c:365
msgid ""
"  -j [N], --jobs[=N]          Allow N jobs at once; infinite jobs with no "
"arg.\n"
msgstr ""
"  -j [N], --jobs[=N]          N Jobs gleichzeitig erlauben; unbegrenzte "
"Anzahl \n"
"                              von Jobs ohne Argument\n"

#: main.c:367
msgid ""
"  -k, --keep-going            Keep going when some targets can't be made.\n"
msgstr ""
"  -k, --keep-going            Weiterlaufen, auch wenn einige Targets nicht\n"
"                              erzeugt werden konnten\n"

#: main.c:369
msgid ""
"  -l [N], --load-average[=N], --max-load[=N]\n"
"                              Don't start multiple jobs unless load is below "
"N.\n"
msgstr ""
"  -l [N], --load-average[=N], --max-load[=N]\n"
"                              Keine Jobs starten bevor die Auslastung nicht "
"unter N ist.\n"

#: main.c:372
msgid ""
"  -L, --check-symlink-times   Use the latest mtime between symlinks and "
"target.\n"
msgstr ""
"  -L, --check-symlink-times   Den neueste Modifizierungszeit zwischen\n"
"                              symbolischer Verküpfung und dem Ziel "
"verwenden.\n"

#: main.c:374
msgid ""
"  -n, --just-print, --dry-run, --recon\n"
"                              Don't actually run any recipe; just print "
"them.\n"
msgstr ""
"  -n, --just-print, --dry-run, --recon\n"
"                              Keine Regel ausführen, nur ausgeben.\n"

#: main.c:377
msgid ""
"  -o FILE, --old-file=FILE, --assume-old=FILE\n"
"                              Consider FILE to be very old and don't remake "
"it.\n"
msgstr ""
"  -o DATEI, --old-file=DATEI, --assume-old=DATEI\n"
"                              DATEI als sehr alt ansehen und nicht neu "
"erzeugen.\n"

#: main.c:380
msgid ""
"  -O[TYPE], --output-sync[=TYPE]\n"
"                              Synchronize output of parallel jobs by TYPE.\n"
msgstr ""
"  -O[TYP], --output-sync[=TYP]\n"
"                              Synchronisiert die Ausgabe paralleler Jobs per "
"TYP.\n"

#: main.c:383
msgid "  -p, --print-data-base       Print make's internal database.\n"
msgstr ""
"  -p, --print-data-base       Die interne Datenbank von „make“ ausgeben\n"

#: main.c:385
msgid ""
"  -q, --question              Run no recipe; exit status says if up to "
"date.\n"
msgstr ""
"  -q, --question              Keine Regel ausführen; der Exit-Status gibt "
"an, ob die Dateien\n"
"                              aktuell sind\n"

#: main.c:387
msgid "  -r, --no-builtin-rules      Disable the built-in implicit rules.\n"
msgstr ""
"  -r, --no-builtin-rules      Die eingebauten impliziten Regeln "
"deaktivieren.\n"

#: main.c:389
msgid "  -R, --no-builtin-variables  Disable the built-in variable settings.\n"
msgstr ""
"  -R, --no-builtin-variables  Die eingebauten Variablenbelegungen "
"deaktivieren.\n"

#: main.c:391
msgid "  -s, --silent, --quiet       Don't echo recipes.\n"
msgstr "  -s, --silent, --quiet       Regeln nicht ausgeben.\n"

#: main.c:393
msgid ""
"  -S, --no-keep-going, --stop\n"
"                              Turns off -k.\n"
msgstr ""
"  -S, --no-keep-going, --stop\n"
"                              -k abschalten.\n"

#: main.c:396
msgid "  -t, --touch                 Touch targets instead of remaking them.\n"
msgstr ""
"  -t, --touch                 Die Ziele werden nur als aktualisiert "
"markiert,\n"
"                              nicht tatsächlich erneuert\n"

#: main.c:398
msgid "  --trace                     Print tracing information.\n"
msgstr ""
"  --trace                     Viele Informationen zur Fehlersuche ausgeben\n"

#: main.c:400
msgid ""
"  -v, --version               Print the version number of make and exit.\n"
msgstr ""
"  -v, --version               Die Versionsnummer von „make“ ausgeben und "
"Programm beenden\n"

#: main.c:402
msgid "  -w, --print-directory       Print the current directory.\n"
msgstr "  -w, --print-directory       Das aktuelle Verzeichnis ausgeben\n"

#: main.c:404
msgid ""
"  --no-print-directory        Turn off -w, even if it was turned on "
"implicitly.\n"
msgstr ""
"  --no-print-directory        -w abschalten, selbst wenn es implizit "
"eingeschaltet wurde.\n"

#: main.c:406
msgid ""
"  -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n"
"                              Consider FILE to be infinitely new.\n"
msgstr ""
"  -W DATEI, --what-if=DATEI, --new-file=DATEI, --assume-new=DATEI\n"
"                              DATEI als unendlich neu erachten.\n"

#: main.c:409
msgid ""
"  --warn-undefined-variables  Warn when an undefined variable is "
"referenced.\n"
msgstr ""
"  --warn-undefined-variables  Eine Warnung ausgeben, wenn eine undefinierte\n"
"                                     Variable referenziert wird.\n"

#: main.c:683
msgid "empty string invalid as file name"
msgstr "Eine leere Zeichenkette ist als Dateiname ungültig"

#: main.c:766
#, c-format
msgid "unknown debug level specification '%s'"
msgstr "Unbekannte Debug-Level angegeben „%s“"

#: main.c:806
#, c-format
msgid "unknown output-sync type '%s'"
msgstr "unbekannter Typ von Ausgabesynchronisierung „%s“"

#: main.c:861
#, c-format
msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%p)\n"
msgstr ""
"%s: bekam Unterbrechung/Ausnahme signalisiert (Kode = 0x%lx, Adr = 0x%p)\n"

#: main.c:868
#, c-format
msgid ""
"\n"
"Unhandled exception filter called from program %s\n"
"ExceptionCode = %lx\n"
"ExceptionFlags = %lx\n"
"ExceptionAddress = 0x%p\n"
msgstr ""
"\n"
"Das Programm %s rief einen Ausnahmefilter auf, \n"
"der nicht bearbeitet wurde\n"
"ExceptionCode = %lx\n"
"ExceptionFlags = %lx\n"
"ExceptionAddress = 0x%p\n"

#: main.c:876
#, c-format
msgid "Access violation: write operation at address 0x%p\n"
msgstr "Zugriffsverletzung: Schreiboperation an Adresse 0x%p\n"

#: main.c:877
#, c-format
msgid "Access violation: read operation at address 0x%p\n"
msgstr "Zugriffsverletzung: Leseoperation an Adresse 0x%p\n"

#: main.c:953 main.c:968
#, c-format
msgid "find_and_set_shell() setting default_shell = %s\n"
msgstr "find_and_set_shell setzt default_shell = %s\n"

#: main.c:1021
#, c-format
msgid "find_and_set_shell() path search set default_shell = %s\n"
msgstr "find_and_set_shell Suche im Pfad setzte default_shell = %s\n"

#: main.c:1538
#, c-format
msgid "%s is suspending for 30 seconds..."
msgstr "%s setzt für 30 Sekunden aus..."

#: main.c:1540
#, c-format
msgid "done sleep(30). Continuing.\n"
msgstr "„sleep(30)“ ist abgeschlossen. Es geht weiter.\n"

#: main.c:1627
msgid ""
"warning: jobserver unavailable: using -j1.  Add '+' to parent make rule."
msgstr ""
"Warnung: Kein Jobserver verfügbar: -j1 wird gesetzt. Fügen Sie der "
"Ursprungsregel\n"
"„+“ hinzu."

#: main.c:1635
msgid "warning: -jN forced in submake: disabling jobserver mode."
msgstr ""
"Warnung: -jN in „make“-Verarbeitungszweig erzwungen: \n"
"Jobserver-Modus nicht verfügbar."

#: main.c:1805
msgid "Makefile from standard input specified twice."
msgstr "Das Makefile wurde zweimal über die Standardeingabe angegeben."

#: main.c:1843 vmsjobs.c:1252
msgid "fopen (temporary file)"
msgstr "fopen (temporäre Datei)"

#: main.c:1849
msgid "fwrite (temporary file)"
msgstr "fwrite (temporäre Datei)"

#: main.c:2048
msgid "Parallel jobs (-j) are not supported on this platform."
msgstr ""
"Parallele Abarbeitung (-j) \n"
"wird auf dieser Plattform nicht unterstützt."

#: main.c:2049
msgid "Resetting to single job (-j1) mode."
msgstr "Umstellung auf Einzel-Job-Verarbeitung (-j1)."

#: main.c:2088
msgid "Symbolic links not supported: disabling -L."
msgstr ""
"Symbolische Verknfungen werdfen nicht unterstützt: -L wird abgeschaltet."

#: main.c:2170
msgid "Updating makefiles....\n"
msgstr "Aktualisiere „make“-Steuerdateien...\n"

#: main.c:2195
#, 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"

#: main.c:2279
#, c-format
msgid "Failed to remake makefile '%s'."
msgstr "Konnte die „make“-Steuerdatei „%s“ nicht neu erstellen."

#: main.c:2299
#, c-format
msgid "Included makefile '%s' was not found."
msgstr "Die eingebundene „make“-Steuerdatei „%s“ wurde nicht gefunden."

#: main.c:2304
#, c-format
msgid "Makefile '%s' was not found"
msgstr "Die „make“-Steuerdatei „%s“ wurde nicht gefunden"

#: main.c:2372
msgid "Couldn't change back to original directory."
msgstr "Konnte nicht in das ursprüngliche Verzeichnis wechseln."

#: main.c:2380
#, c-format
msgid "Re-executing[%u]:"
msgstr "Erneute Ausführung[%u]:"

#: main.c:2492
msgid "unlink (temporary file): "
msgstr "unlink (temporäre Datei): "

#: main.c:2525
msgid ".DEFAULT_GOAL contains more than one target"
msgstr ".DEFAULT_GOAL beinhaltet mehr als ein Ziel"

#: main.c:2548
msgid "No targets specified and no makefile found"
msgstr "Es wurden keine Ziele angegeben und keine „make“-Steuerdatei gefunden"

#: main.c:2550
msgid "No targets"
msgstr "Keine Ziele"

#: main.c:2555
msgid "Updating goal targets....\n"
msgstr "Aktualisieren der Ziele...\n"

#: main.c:2579
msgid "warning:  Clock skew detected.  Your build may be incomplete."
msgstr ""
"Warnung: Mit der Uhr stimmt etwas nicht. \n"
"         Der Bauauftrag könnte unvollständig sein."

#: main.c:2773
#, c-format
msgid "Usage: %s [options] [target] ...\n"
msgstr "Aufruf: %s [Optionen] [Ziele] ...\n"

#: main.c:2779
#, c-format
msgid ""
"\n"
"This program built for %s\n"
msgstr ""
"\n"
"Diese Programm wurde für %s gebaut\n"

#: main.c:2781
#, c-format
msgid ""
"\n"
"This program built for %s (%s)\n"
msgstr ""
"\n"
"Diese Programm wurde für %s (%s) gebaut\n"

#: main.c:2784
#, c-format
msgid "Report bugs to <bug-make@gnu.org>\n"
msgstr "Fehlermeldungen (auf Englisch) an <bug-make@gnu.org> senden.\n"

#: main.c:2870
#, c-format
msgid "the '%s%s' option requires a non-empty string argument"
msgstr "Die Option „%s%s“ verlangt eine nicht-leere Zeichenkette als Argument"

#: main.c:2934
#, c-format
msgid "the '-%c' option requires a positive integer argument"
msgstr "Die Option „-%c“ verlangt eine positive ganze Zahl als Argument"

#: main.c:3332
#, c-format
msgid "%sBuilt for %s\n"
msgstr "%sGebaut für %s\n"

#: main.c:3334
#, c-format
msgid "%sBuilt for %s (%s)\n"
msgstr "%sGebaut für %s (%s)\n"

#: main.c:3345
#, c-format
msgid ""
"%sLicense GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl."
"html>\n"
"%sThis is free software: you are free to change and redistribute it.\n"
"%sThere is NO WARRANTY, to the extent permitted by law.\n"
msgstr ""
"%sLizenz GPLv3+: GNU GPL Version 3 oder später <http://gnu.org/licenses/gpl."
"html>\n"
"%sDies ist freie Software: Sie können sie nach Belieben ändern und weiter "
"verteilen.\n"
"%sSoweit es die Gesetze erlauben gibt es KEINE GARANTIE.\n"

#: main.c:3366
#, c-format
msgid ""
"\n"
"# Make data base, printed on %s"
msgstr ""
"\n"
"# „Make“-Datenbank; erstellt am: %s"

#: main.c:3376
#, c-format
msgid ""
"\n"
"# Finished Make data base on %s\n"
msgstr ""
"\n"
"# „Make“-Datenbank beendet am: %s\n"

#: misc.c:202
#, c-format
msgid "Unknown error %d"
msgstr "Unbekannter Fehler %d"

#: misc.c:508
#, c-format
msgid "%s: user %lu (real %lu), group %lu (real %lu)\n"
msgstr "%s: Nutzer %lu (tatsächlich %lu), Gruppe %lu (tatsächlich %lu)\n"

#: misc.c:529
msgid "Initialized access"
msgstr "Initialisierter Zugriff"

#: misc.c:608
msgid "User access"
msgstr "Zugriff durch Benutzer"

#: misc.c:656
msgid "Make access"
msgstr "Zugriff durch „make“"

#: misc.c:690
msgid "Child access"
msgstr "Kindprozess"

#: output.c:104
#, c-format
msgid "%s: Entering an unknown directory\n"
msgstr "%s: ein unbekanntes Verzeichnis wird betreten\n"

#: output.c:106
#, c-format
msgid "%s: Leaving an unknown directory\n"
msgstr "%s: ein unbekanntes Verzeichnis wird verlassen\n"

# !!! Attention: concatenated with the previous messages!!!
#: output.c:109
#, c-format
msgid "%s: Entering directory '%s'\n"
msgstr "%s: Verzeichnis „%s“ wird betreten\n"

# !!! Attention: concatenated with the previous messages!!!
#: output.c:111
#, c-format
msgid "%s: Leaving directory '%s'\n"
msgstr "%s: Verzeichnis „%s“ wird verlassen\n"

#: output.c:115
#, c-format
msgid "%s[%u]: Entering an unknown directory\n"
msgstr "%s[%u]: Ein unbekanntes Verzeichnis wird betreten\n"

#: output.c:117
#, c-format
msgid "%s[%u]: Leaving an unknown directory\n"
msgstr "%s[%u]: Ein unbekanntes Verzeichnis wird verlassen\n"

# !!! Attention: concatenated with the previous messages!!!
#: output.c:120
#, c-format
msgid "%s[%u]: Entering directory '%s'\n"
msgstr "%s[%u]: Verzeichnis „%s“ wird betreten\n"

# !!! Attention: concatenated with the previous messages!!!
#: output.c:122
#, c-format
msgid "%s[%u]: Leaving directory '%s'\n"
msgstr "%s[%u]: Verzeichnis „%s“ wird verlassen\n"

#: output.c:495 output.c:497
msgid "write error: stdout"
msgstr "Schreibfehler: Standardausgabe"

#: output.c:677
msgid ".  Stop.\n"
msgstr ".  Schluss.\n"

#: output.c:711
#, c-format
msgid "%s%s: %s"
msgstr "%s%s: %s"

#: output.c:720
#, c-format
msgid "%s: %s"
msgstr "%s: %s"

#: posixos.c:69
msgid "creating jobs pipe"
msgstr "Öffnen der Pipe für die Jobs"

#: posixos.c:72 posixos.c:227
msgid "duping jobs pipe"
msgstr "Öffnen der Pipe für die Jobs"

#: posixos.c:78
msgid "init jobserver pipe"
msgstr "Initialisierung der Pipe für den Jobserver"

#: posixos.c:90
#, c-format
msgid "internal error: invalid --jobserver-auth string '%s'"
msgstr "Interner Fehler: ungültige --jobserver-auth Angabe „%s“"

#: posixos.c:93
#, c-format
msgid "Jobserver client (fds %d,%d)\n"
msgstr "Jobserver-Klient (fds %d,%d)\n"

#: posixos.c:109
msgid "jobserver pipeline"
msgstr "Initialisierung der Pipe für den Jobserver"

#: posixos.c:154
msgid "write jobserver"
msgstr "Job-Server wird geschrieben"

#: posixos.c:268
msgid "pselect jobs pipe"
msgstr "pselect der Jobs-Pipeline"

#: posixos.c:279 posixos.c:391
msgid "read jobs pipe"
msgstr "Lese Pipe für die Jobs"

#: read.c:178
msgid "Reading makefiles...\n"
msgstr "„make“-Steuerdateien werden gelesen...\n"

#: read.c:329
#, c-format
msgid "Reading makefile '%s'"
msgstr "„make“-Steuerdatei „%s“ wird gelesen"

#: read.c:331
#, c-format
msgid " (no default goal)"
msgstr " (kein Standard-Ziel)"

#: read.c:333
#, c-format
msgid " (search path)"
msgstr " (Suchpfad)"

#: read.c:335
#, c-format
msgid " (don't care)"
msgstr " (macht nichts)"

#: read.c:337
#, c-format
msgid " (no ~ expansion)"
msgstr " (keine ~-Auflösung)"

#: read.c:651
#, c-format
msgid "Skipping UTF-8 BOM in makefile '%s'\n"
msgstr "UTF-8 BOM in makefile „%s“ wird übersprungen\n"

#: read.c:654
#, c-format
msgid "Skipping UTF-8 BOM in makefile buffer\n"
msgstr "UTF-8 BOM im makefile-Puffer wird übersprungen\n"

#: read.c:783
msgid "invalid syntax in conditional"
msgstr "Ungültige Syntax in der Bedingung"

#: read.c:959
#, c-format
msgid "%s: failed to load"
msgstr "%s: konnte nicht geladen werden"

#: read.c:985
msgid "recipe commences before first target"
msgstr "Rezept beginnt vor dem ersten Ziel"

#: read.c:1034
msgid "missing rule before recipe"
msgstr "Es fehlt eine Regel vor der Regel"

#: read.c:1124
msgid "missing separator (did you mean TAB instead of 8 spaces?)"
msgstr "fehlender Trenner (Meinten Sie TAB anstelle von 8 Leerzeichen?)"

#: read.c:1126
msgid "missing separator"
msgstr "Fehlender Trenner"

#: read.c:1262
msgid "missing target pattern"
msgstr "Es fehlt ein Ziel-Muster"

#: read.c:1264
msgid "multiple target patterns"
msgstr "Mehrfache Ziel-Muster"

#: read.c:1268
#, c-format
msgid "target pattern contains no '%%'"
msgstr "Ziel-Muster enthält kein „%%“"

#: read.c:1390
msgid "missing 'endif'"
msgstr "Fehlendes „endif“"

#: read.c:1428 read.c:1473 variable.c:1576
msgid "empty variable name"
msgstr "Leerer Variablenname"

#: read.c:1463
msgid "extraneous text after 'define' directive"
msgstr "Überflüssiger Text nach einer „define“-Anweisung"

#: read.c:1488
msgid "missing 'endef', unterminated 'define'"
msgstr "Fehlendes „endef“, nicht abgeschlossenes „define“"

#: read.c:1516
msgid "extraneous text after 'endef' directive"
msgstr "Überflüssiger Text nach einer „endef“-Anweisung"

#: read.c:1588
#, c-format
msgid "extraneous text after '%s' directive"
msgstr "Überflüssiger Text nach einer „%s“-Anweisung"

#: read.c:1589
#, c-format
msgid "extraneous '%s'"
msgstr "Überflüssiges „%s“"

#: read.c:1617
msgid "only one 'else' per conditional"
msgstr "Es ist nur ein „else“ pro Bedingung erlaubt"

#: read.c:1892
msgid "Malformed target-specific variable definition"
msgstr "Falsche Ziel-bezogene Variablendefinition"

#: read.c:1950
msgid "prerequisites cannot be defined in recipes"
msgstr "Voraussetzungen können nicht in Regeln definiert werden"

#: read.c:2009
msgid "mixed implicit and static pattern rules"
msgstr "Implizite und statische Muster-Regeln wurden vermischt"

#: read.c:2032
msgid "mixed implicit and normal rules"
msgstr "Implizite und normale Regeln wurden vermischt"

#: read.c:2085
#, c-format
msgid "target '%s' doesn't match the target pattern"
msgstr "Target „%s“ passt nicht zum Ziel-Muster"

#: read.c:2100 read.c:2146
#, c-format
msgid "target file '%s' has both : and :: entries"
msgstr "Das Ziel „%s“ enthält sowohl „:“- als auch „::“-Einträge"

#: read.c:2106
#, c-format
msgid "target '%s' given more than once in the same rule"
msgstr "Das Ziel „%s“ steht mehrfach in derselben Regel."

#: read.c:2116
#, c-format
msgid "warning: overriding recipe for target '%s'"
msgstr "Warnung: Die Befehle für das Ziel „%s“ werden überschrieben"

#: read.c:2119
#, c-format
msgid "warning: ignoring old recipe for target '%s'"
msgstr "Warnung: Alte Befehle für das Ziel „%s“ werden ignoriert"

#: read.c:2223
msgid "*** mixed implicit and normal rules: deprecated syntax"
msgstr "*** Implizite und normale Regeln wurden vermischt"

#: read.c:2542
msgid "warning: NUL character seen; rest of line ignored"
msgstr "Warnung: NULL-Zeichen gelesen; der Rest der Zeile wird ignoriert"

#: remake.c:226
#, c-format
msgid "Nothing to be done for '%s'."
msgstr "Für das Ziel „%s“ ist nichts zu tun."

#: remake.c:227
#, c-format
msgid "'%s' is up to date."
msgstr "„%s“ ist bereits aktuell."

#: remake.c:323
#, c-format
msgid "Pruning file '%s'.\n"
msgstr "Die Datei „%s“ wird \"gestutzt\" (der Abhängigkeitsgraph).\n"

#: remake.c:406
#, c-format
msgid "%sNo rule to make target '%s', needed by '%s'%s"
msgstr ""
"%sKeine Regel vorhanden, um das Ziel „%s“, \n"
"  benötigt von „%s“, zu erstellen%s"

#: remake.c:416
#, c-format
msgid "%sNo rule to make target '%s'%s"
msgstr "%sKeine Regel, um „%s“ zu erstellen%s"

#: remake.c:442
#, c-format
msgid "Considering target file '%s'.\n"
msgstr "Betrachte Ziel-Datei „%s“.\n"

#: remake.c:449
#, c-format
msgid "Recently tried and failed to update file '%s'.\n"
msgstr ""
"Es wurde kürzlich versucht, die Datei „%s“ zu aktualisieren,\n"
"dies schlug aber fehl.\n"

#: remake.c:461
#, c-format
msgid "File '%s' was considered already.\n"
msgstr "Die Datei „%s“ wurde bereits betrachtet.\n"

#: remake.c:471
#, c-format
msgid "Still updating file '%s'.\n"
msgstr "Die Datei „%s“ wird immer noch aktualisiert.\n"

#: remake.c:474
#, c-format
msgid "Finished updating file '%s'.\n"
msgstr "Aktualisierung der Datei „%s“ beendet.\n"

#: remake.c:503
#, c-format
msgid "File '%s' does not exist.\n"
msgstr "Die Datei „%s“ existiert nicht.\n"

#: remake.c:511
#, c-format
msgid ""
"*** Warning: .LOW_RESOLUTION_TIME file '%s' has a high resolution time stamp"
msgstr ""
"*** Warnung: mit .LOW_RESOLUTION_TIME gekennzeichnete Datei „%s“ hat einen\n"
"             hochaufgelösten Zeitstempel"

#: remake.c:524 remake.c:1056
#, c-format
msgid "Found an implicit rule for '%s'.\n"
msgstr "Eine implizite Regel für „%s“ wurde gefunden.\n"

#: remake.c:526 remake.c:1058
#, c-format
msgid "No implicit rule found for '%s'.\n"
msgstr "Keine implizite Regel für „%s“ gefunden.\n"

#: remake.c:532
#, c-format
msgid "Using default recipe for '%s'.\n"
msgstr "Die Standard-Regel für „%s“ wird verwendet.\n"

#: remake.c:566 remake.c:1105
#, c-format
msgid "Circular %s <- %s dependency dropped."
msgstr "Zirkuläre Abhängigkeit %s <- %s wird nicht verwendet."

#: remake.c:691
#, c-format
msgid "Finished prerequisites of target file '%s'.\n"
msgstr "Fertig mit den Voraussetzungen für die Ziel-Datei „%s“.\n"

#: remake.c:697
#, c-format
msgid "The prerequisites of '%s' are being made.\n"
msgstr "Die Voraussetzungen von „%s“ werden fertiggestellt.\n"

#: remake.c:711
#, c-format
msgid "Giving up on target file '%s'.\n"
msgstr "Die Arbeit an der Target-Datei „%s“ wurde aufgegeben.\n"

#: remake.c:716
#, c-format
msgid "Target '%s' not remade because of errors."
msgstr "Das Ziel „%s“ wurde wegen Fehlern nicht aktualisiert."

#: remake.c:768
#, c-format
msgid "Prerequisite '%s' is order-only for target '%s'.\n"
msgstr "Die Datei „%s“ ist älter als das davon abhängige Ziel „%s“.\n"

#: remake.c:773
#, c-format
msgid "Prerequisite '%s' of target '%s' does not exist.\n"
msgstr ""
"Die Datei „%s“, Voraussetzung für das Ziel „%s“, \n"
"existiert nicht.\n"

#: remake.c:778
#, c-format
msgid "Prerequisite '%s' is newer than target '%s'.\n"
msgstr "Die Datei „%s“ ist jünger als das davon abhängige Ziel „%s“.\n"

#: remake.c:781
#, c-format
msgid "Prerequisite '%s' is older than target '%s'.\n"
msgstr "Die Datei „%s“ ist älter als das davon abhängige Ziel „%s“.\n"

#: remake.c:799
#, c-format
msgid "Target '%s' is double-colon and has no prerequisites.\n"
msgstr ""
"Das Ziel „%s“ hat einen doppelten Doppelpunkt \n"
"und keine Voraussetzungen.\n"

#: remake.c:806
#, c-format
msgid "No recipe for '%s' and no prerequisites actually changed.\n"
msgstr ""
"Kein Kommando für „%s“ und keine Voraussetzung \n"
"wurde tatsächlich verändert.\n"

#: remake.c:811
#, c-format
msgid "Making '%s' due to always-make flag.\n"
msgstr "„%s“ wird aufgrund der Keinnzeichnung als always-make erzeugt.\n"

#: remake.c:819
#, c-format
msgid "No need to remake target '%s'"
msgstr "Es ist nicht notwendig, das Ziel „%s“ neu zu erzeugen"

#: remake.c:821
#, c-format
msgid "; using VPATH name '%s'"
msgstr "; benutze VPATH-Name „%s“"

#: remake.c:841
#, c-format
msgid "Must remake target '%s'.\n"
msgstr "Das Target „%s“ muss neu erzeugt werden.\n"

#: remake.c:847
#, c-format
msgid "  Ignoring VPATH name '%s'.\n"
msgstr "  Der VPATH-Name „%s“ wird ignoriert.\n"

#: remake.c:856
#, c-format
msgid "Recipe of '%s' is being run.\n"
msgstr "Die Regel für „%s“ wird gerade ausgeführt.\n"

#: remake.c:863
#, c-format
msgid "Failed to remake target file '%s'.\n"
msgstr "Fehler beim Aktualisieren der Ziel-Datei „%s“.\n"

#: remake.c:866
#, c-format
msgid "Successfully remade target file '%s'.\n"
msgstr "Die Zieldatei „%s“ wurde erfolgreich aktualisiert.\n"

#: remake.c:869
#, c-format
msgid "Target file '%s' needs to be remade under -q.\n"
msgstr "Zieldatei „%s“ muss bei -q aktualisiert werden.\n"

#: remake.c:1064
#, c-format
msgid "Using default commands for '%s'.\n"
msgstr "Die Standard-Kommandos für „%s“ werden verwendet.\n"

#: remake.c:1430
#, c-format
msgid "Warning: File '%s' has modification time in the future"
msgstr "Warnung: Datei „%s“ hat zukünftige Änderungszeit"

#: remake.c:1444
#, c-format
msgid "Warning: File '%s' has modification time %s s in the future"
msgstr "Warnung: Datei „%s“ hat hat in der Zukunft liegende Änderungszeit %s"

#: remake.c:1647
#, c-format
msgid ".LIBPATTERNS element '%s' is not a pattern"
msgstr ".LIBPATTERNS Element „%s“ ist kein Muster"

#: remote-cstms.c:122
#, c-format
msgid "Customs won't export: %s\n"
msgstr "Customs wird nicht exportieren: %s\n"

#: rule.c:496
msgid ""
"\n"
"# Implicit Rules"
msgstr ""
"\n"
"# Implizite Regeln"

#: rule.c:511
msgid ""
"\n"
"# No implicit rules."
msgstr ""
"\n"
"# Keine impliziten Regeln vorhanden."

#: rule.c:514
#, c-format
msgid ""
"\n"
"# %u implicit rules, %u"
msgstr ""
"\n"
"# %u implizite Regeln, %u"

#: rule.c:523
msgid " terminal."
msgstr " Terminal."

#: rule.c:531
#, c-format
msgid "BUG: num_pattern_rules is wrong!  %u != %u"
msgstr "BUG: „num_pattern_rules“ falsch!  %u != %u"

#: signame.c:84
msgid "unknown signal"
msgstr "Unbekanntes Signal"

#: signame.c:92
msgid "Hangup"
msgstr "Aufgelegt"

#: signame.c:95
msgid "Interrupt"
msgstr "Abgebrochen (Interrupt)"

#: signame.c:98
msgid "Quit"
msgstr "Quit"

#: signame.c:101
msgid "Illegal Instruction"
msgstr "Illegaler Befehl"

#: signame.c:104
msgid "Trace/breakpoint trap"
msgstr "Verfolgen/anhalten abfangen (Trace/breakpoint trap)"

#: signame.c:109
msgid "Aborted"
msgstr "Abgebrochen (Aborted)"

#: signame.c:112
msgid "IOT trap"
msgstr "IOT abfangen (IOT trap)"

#: signame.c:115
msgid "EMT trap"
msgstr "EMT abfangen (EMT trap)"

#: signame.c:118
msgid "Floating point exception"
msgstr "Gleitkommafehler"

#: signame.c:121
msgid "Killed"
msgstr "Abgebrochen (Killed)"

#: signame.c:124
msgid "Bus error"
msgstr "Bus-Fehler"

#: signame.c:127
msgid "Segmentation fault"
msgstr "Adressierungsdefekt"

#: signame.c:130
msgid "Bad system call"
msgstr "Falscher Systemaufruf"

#: signame.c:133
msgid "Broken pipe"
msgstr "Zerstörte Pipe"

#: signame.c:136
msgid "Alarm clock"
msgstr "Wecksignal"

#: signame.c:139
msgid "Terminated"
msgstr "Abgebrochen (Terminated)"

#: signame.c:142
msgid "User defined signal 1"
msgstr "Nutzersignal 1"

#: signame.c:145
msgid "User defined signal 2"
msgstr "Nutzersignal 2"

#: signame.c:150 signame.c:153
msgid "Child exited"
msgstr "Kindprozess beendet"

#: signame.c:156
msgid "Power failure"
msgstr "Stromausfall"

#: signame.c:159
msgid "Stopped"
msgstr "Angehalten"

#: signame.c:162
msgid "Stopped (tty input)"
msgstr "Angehalten (tty input)"

#: signame.c:165
msgid "Stopped (tty output)"
msgstr "Angehalten (tty output)"

#: signame.c:168
msgid "Stopped (signal)"
msgstr "Angehalten (signal)"

#: signame.c:171
msgid "CPU time limit exceeded"
msgstr "CPU-Zeitschranke überschritten"

#: signame.c:174
msgid "File size limit exceeded"
msgstr "Dateigrößenschranke überschritten"

#: signame.c:177
msgid "Virtual timer expired"
msgstr "Virtueller Timer erloschen"

#: signame.c:180
msgid "Profiling timer expired"
msgstr "Profiling Timer erloschen"

#: signame.c:186
msgid "Window changed"
msgstr "Fenster hat sich verändert"

#: signame.c:189
msgid "Continued"
msgstr "Fortgesetzt"

#: signame.c:192
msgid "Urgent I/O condition"
msgstr "Dringende I/O-Bedingung"

#: signame.c:199 signame.c:208
msgid "I/O possible"
msgstr "I/O möglich"

#: signame.c:202
msgid "SIGWIND"
msgstr "SIGWIND"

#: signame.c:205
msgid "SIGPHONE"
msgstr "SIGPHONE"

#: signame.c:211
msgid "Resource lost"
msgstr "Ressource verloren gegangen"

#: signame.c:214
msgid "Danger signal"
msgstr "Gefahrensignal"

#: signame.c:217
msgid "Information request"
msgstr "Informationsanforderung"

#: signame.c:220
msgid "Floating point co-processor not available"
msgstr "Es ist kein Koprozessor für Fließkommaoperationen vorhanden"

#: strcache.c:274
#, c-format
msgid ""
"\n"
"%s No strcache buffers\n"
msgstr ""
"\n"
"%s Keine Puffer für strcache\n"

#: strcache.c:304
#, c-format
msgid ""
"\n"
"%s strcache buffers: %lu (%lu) / strings = %lu / storage = %lu B / avg = %lu "
"B\n"
msgstr ""
"\n"
"%s Puffer für strcache: %lu (%lu) / Zeichenketten = %lu / Speicher = %lu B / "
"ø = %lu B\n"

#: strcache.c:308
#, c-format
msgid ""
"%s current buf: size = %hu B / used = %hu B / count = %hu / avg = %hu B\n"
msgstr ""
"%s aktueller Puffer: Größe = %hu B / benutzt = %hu B / Anzahl = %hu / ø = "
"%hu B\n"

#: strcache.c:319
#, c-format
msgid "%s other used: total = %lu B / count = %lu / avg = %lu B\n"
msgstr "%s andere verwendete: Summe = %lu B / Anzahl = %lu / /ø = %lu B\n"

#: strcache.c:322
#, c-format
msgid ""
"%s other free: total = %lu B / max = %lu B / min = %lu B / avg = %hu B\n"
msgstr ""
"%s andere freie: Summe = %lu B / Max = %lu B / Min = %lu B / ø = %hu B\n"

#: strcache.c:326
#, c-format
msgid ""
"\n"
"%s strcache performance: lookups = %lu / hit rate = %lu%%\n"
msgstr ""
"\n"
"%s Leistung von strcache: Suchen = %lu / Trefferrate = %lu%%\n"

#: strcache.c:328
msgid ""
"# hash-table stats:\n"
"# "
msgstr ""
"# Statistik für Hashtabelle:\n"
"# "

#: variable.c:1629
msgid "automatic"
msgstr "automatisch"

#: variable.c:1632
msgid "default"
msgstr "Standard"

#: variable.c:1635
msgid "environment"
msgstr "Umgebung"

#: variable.c:1638
msgid "makefile"
msgstr "Makefile"

#: variable.c:1641
msgid "environment under -e"
msgstr "Umgebung per -e"

#: variable.c:1644
msgid "command line"
msgstr "Kommandozeile"

#: variable.c:1647
msgid "'override' directive"
msgstr "„override“-Anweisung"

#: variable.c:1658
#, c-format
msgid " (from '%s', line %lu)"
msgstr " (aus „%s“, Zeile %lu)"

#: variable.c:1721
msgid "# variable set hash-table stats:\n"
msgstr ""
"# Hashtabellen-Statistik für Variablen:\n"
"\n"

#: variable.c:1732
msgid ""
"\n"
"# Variables\n"
msgstr ""
"\n"
"# Variablen\n"

#: variable.c:1736
msgid ""
"\n"
"# Pattern-specific Variable Values"
msgstr ""
"\n"
"# Musterspezifische Variablenwerte"

#: variable.c:1750
msgid ""
"\n"
"# No pattern-specific variable values."
msgstr ""
"\n"
"# Keine musterspezifischen Variablenwerte."

#: variable.c:1752
#, c-format
msgid ""
"\n"
"# %u pattern-specific variable values"
msgstr ""
"\n"
"# %u musterspezifische Variablenwerte"

#: variable.h:224
#, c-format
msgid "warning: undefined variable '%.*s'"
msgstr "Warnung: undefinierte Variable „%.*s“"

#: vmsfunctions.c:91
#, c-format
msgid "sys$search() failed with %d\n"
msgstr "„sys$search“ schlug mit %d fehl\n"

#: vmsjobs.c:242
#, c-format
msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n"
msgstr "-Warnung: Vielleicht müssen Sie STRG-Y aus DCL wieder ermöglichen.\n"

#: vmsjobs.c:679
#, c-format
msgid "BUILTIN CD %s\n"
msgstr "BUILTIN CD %s\n"

#: vmsjobs.c:1228
#, c-format
msgid "DCL: %s\n"
msgstr "DCL: %s\n"

#: vmsjobs.c:1288
#, c-format
msgid "Append output to %s\n"
msgstr "Ausgabe nach %s umgeleitet\n"

#: vmsjobs.c:1313
#, c-format
msgid "Append %.*s and cleanup\n"
msgstr "%.*s anhängen und aufräumen\n"

#: vmsjobs.c:1326
#, c-format
msgid "Executing %s instead\n"
msgstr "%s wird stattdessen ausgeführt\n"

#: vpath.c:603
msgid ""
"\n"
"# VPATH Search Paths\n"
msgstr ""
"\n"
"# VPATH-Suchpfade\n"

#: vpath.c:620
msgid "# No 'vpath' search paths."
msgstr "# Keine „vpath“-Suchpfade."

#: vpath.c:622
#, c-format
msgid ""
"\n"
"# %u 'vpath' search paths.\n"
msgstr ""
"\n"
"# %u „vpath“-Suchpfade.\n"

#: vpath.c:625
msgid ""
"\n"
"# No general ('VPATH' variable) search path."
msgstr ""
"\n"
"# Kein allgemeiner Suchpfad (Variable „VPATH“)."

#: vpath.c:631
msgid ""
"\n"
"# General ('VPATH' variable) search path:\n"
"# "
msgstr ""
"\n"
"# Allgemeiner Suchpfad (Variable „VPATH“):\n"
"# "

#: w32/w32os.c:46
#, c-format
msgid "Jobserver slots limited to %d\n"
msgstr "Zeitschlitze der Jobservers auf %d begranzt\n"

#: w32/w32os.c:62
#, c-format
msgid "creating jobserver semaphore: (Error %ld: %s)"
msgstr "Jobserver-Semaphore wird erzeugt: (Fehler %ld: %s)"

#: w32/w32os.c:81
#, c-format
msgid ""
"internal error: unable to open jobserver semaphore '%s': (Error %ld: %s)"
msgstr ""
"interner Fehler: die Semaphore „%s“ des Jobservers kann nicht geöffnet "
"werden:\n"
"                 (Fehler %ld: %s)"

#: w32/w32os.c:84
#, c-format
msgid "Jobserver client (semaphore %s)\n"
msgstr "Jobserver-Klient (Semaphore %s)\n"

#: w32/w32os.c:125
#, c-format
msgid "release jobserver semaphore: (Error %ld: %s)"
msgstr "Freigabe der Jobserver-Semaphore: (Fehler %ld: %s)"

#: w32/w32os.c:192
#, c-format
msgid "semaphore or child process wait: (Error %ld: %s)"
msgstr "warten auf Semaphore oder Kindprozess: (Fehler %ld: %s)"

#~ msgid "%s: recipe for target '%s' failed"
#~ msgstr "%s: die Regel für Ziel „%s“ scheiterte"

#~ msgid "%s[%s] Error 0x%x%s"
#~ msgstr "%s[%s] Fehler 0x%x%s"

#~ msgid "%s[%s] %s%s%s"
#~ msgstr "%s[%s] %s%s%s"

#~ msgid "internal error: multiple --sync-mutex options"
#~ msgstr "Interner Fehler: mehrfache --sync-mutex Optionen"

#~ msgid "internal error: multiple --jobserver-fds options"
#~ msgstr "Interner Fehler: mehrfache --jobserver-fds Optionen"

#~ msgid "dup jobserver"
#~ msgstr "Jobserver verdoppelt"

#~ msgid "virtual memory exhausted"
#~ msgstr "Der virtuelle Speicher ist verbraucht"

#~ msgid "write error"
#~ msgstr "Schreibfehler"

#~ msgid "Warning: Empty redirection\n"
#~ msgstr "Warnung: Umleitung ins Leere!\n"

#~ msgid "internal error: '%s' command_state"
#~ msgstr "Interner Fehler: „%s“ command_state"

#~ msgid "BUILTIN [%s][%s]\n"
#~ msgstr "BUILTIN [%s][%s]\n"

#~ msgid "BUILTIN RM %s\n"
#~ msgstr "BUILTIN RM %s\n"

#~ msgid "Unknown builtin command '%s'\n"
#~ msgstr "Unbekanntes eingebautes Kommando „%s“\n"

#~ msgid "Error, empty command\n"
#~ msgstr "Fehler: Leere Anweisung\n"

#~ msgid "Redirected input from %s\n"
#~ msgstr "Datei %s auf Standardeingabe umgeleitet\n"

#~ msgid "Redirected error to %s\n"
#~ msgstr "Fehlerausgabe nach %s umgeleitet\n"

#~ msgid "Redirected output to %s\n"
#~ msgstr "Ausgabe nach %s umgeleitet\n"

#~ msgid "Error spawning, %d\n"
#~ msgstr "Fehler %d beim Starten eines Kindprozesses\n"

#~ msgid "#  Invalid value in `update_status' member!"
#~ msgstr "#  Ungültiger Wert in „update_status“-Eintrag!"

#~ msgid "*** [%s] Error 0x%x (ignored)"
#~ msgstr "*** [%s] Fehler 0x%x (ignoriert)"

#~ 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."

#~ msgid "Resetting make for single job mode."
#~ msgstr "„make“ wird so umgestellt, dass nur ein Job laufen kann."

#, fuzzy
#~ msgid ""
#~ "%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"
#~ msgstr ""
#~ ", von Richard Stallman und Roland McGrath.\n"
#~ "%sErstellt für %s\n"
#~ "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n"
#~ "%s\tFree Software Foundation, Inc.\n"
#~ "%sDies ist Freie Software; siehe die Programmquellen für "
#~ "Vervielfältigungsbedingungen.\n"
#~ "%sEs gibt KEINE Gewährleistung; nicht einmal für VERMARKTUNG oder "
#~ "NUTZBARKEIT FÜR EINEN\n"
#~ "%sBESONDEREN ZWECK.\n"
#~ "\n"
#~ "%sFehlermeldungen (auf Englisch) an <bug-make@gnu.org>.\n"
#~ "\n"

#~ msgid "extraneous `endef'"
#~ msgstr "Überflüssiges „endef“"

#~ msgid "empty `override' directive"
#~ msgstr "Leere „override“-Anweisung"

#~ msgid "invalid `override' directive"
#~ msgstr "Ungültige „override“-Anweisung"

#~ msgid "-warning, CTRL-Y will leave sub-process(es) around.\n"
#~ msgstr "-Warnung: STRG-Y wird Unterprozesse übriglassen!\n"

#~ msgid ""
#~ "\n"
#~ "# %u files in %u hash buckets.\n"
#~ msgstr ""
#~ "\n"
#~ "# %u Dateien zu %u hash-Werten.\n"

#~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n"
#~ msgstr ""
#~ "# durchschnittlich %.3f Dateien je hash-Wert,\n"
#~ "max. %u Dateien zu einem hash-Wert.\n"

#~ msgid "Syntax error, still inside '\"'\n"
#~ msgstr "Syntaxfehler, immer noch in '\"'\n"

#~ msgid "Got a SIGCHLD; %u unreaped children.\n"
#~ msgstr "Erhielt Signal „SIGCHLD“; %u unbeendete Kindprozesse.\n"

#~ msgid "DIRECTORY"
#~ msgstr "VERZEICHNIS"

#~ msgid "Change to DIRECTORY before doing anything"
#~ msgstr "In das VERZEICHNIS wechseln, bevor etwas anderes ausgeführt wird"

#~ msgid "FLAGS"
#~ msgstr "FLAGS"

#~ msgid "Suspend process to allow a debugger to attach"
#~ msgstr "Prozess aussetzeb, um das Einklinken eines Debuggers zu ermöglichen"

#~ msgid "Environment variables override makefiles"
#~ msgstr "Umgebungsvariablen überschreiben „make“-Steuerdateien"

#~ msgid "FILE"
#~ msgstr "DATEI"

#~ msgid "Read FILE as a makefile"
#~ msgstr "DATEI als „make“-Steuerdatei lesen"

#~ msgid "Search DIRECTORY for included makefiles"
#~ msgstr "Das VERZEICHNIS nach eingebundenen „make“-Steuerdateien durchsuchen"

#~ msgid "Don't start multiple jobs unless load is below N"
#~ msgstr "Nur bei Belastung unterhalb N mehrere Prozesse starten"

#~ msgid "Don't actually run any commands; just print them"
#~ msgstr "Befehle nur anzeigen, nicht ausführen"

#~ msgid "Consider FILE to be very old and don't remake it"
#~ msgstr "DATEI als sehr alt betrachten und sie nicht neu erzeugen"

#~ msgid "Don't echo commands"
#~ msgstr "Die Kommandos nicht ausgeben"

#~ msgid "Turns off -k"
#~ msgstr "-k abschalten"

#~ msgid "Consider FILE to be infinitely new"
#~ msgstr "Die DATEI stets als neu betrachten"

# !!! Attention: concatenated with the following messages!!!
#~ msgid "Entering"
#~ msgstr "Wechsel in das Verzeichnis"

# !!! Attention: concatenated with the following messages!!!
#~ msgid "Leaving"
#~ msgstr "Verlassen des Verzeichnisses"

#~ msgid "no file name for `%sinclude'"
#~ msgstr "Kein Dateiname für „%sinclude“"

#~ msgid "target `%s' leaves prerequisite pattern empty"
#~ msgstr "Target „%s“ lässt Voraussetzungs-Muster leer"

#~ msgid "# No variables."
#~ msgstr "# Keine Variablen vorhanden."

#~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
#~ msgstr "# Durchschnittlich %.1f Variablen pro Wert, max %u je Wert.\n"

#~ 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"

#~ msgid "the `word' function takes a positive index argument"
#~ msgstr "Die „word“-Funktion erwartet als Argument einen positiven Index"
