# Finnish messages for make.
# Copyright (C) 2005 Free Software Foundation, Inc.
# This file is distributed under the same license as the make package.
# Lauri Nurmi <lanurmi@iki.fi>, 2005.
#
msgid ""
msgstr ""
"Project-Id-Version: make 4.2\n"
"Report-Msgid-Bugs-To: bug-make@gnu.org\n"
"POT-Creation-Date: 2016-05-22 09:27-0400\n"
"PO-Revision-Date: 2016-05-26 20:40+0300\n"
"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
"Language: fi\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 1.8.7\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#: ar.c:46
#, c-format
msgid "attempt to use unsupported feature: '%s'"
msgstr "yritettiin käyttää ominaisuutta, jolle ei ole tukea: ”%s”"

#: ar.c:123
msgid "touch archive member is not available on VMS"
msgstr "arkistojäsenten kosketus ei ole mahdollista VMS:ssä"

#: ar.c:147
#, c-format
msgid "touch: Archive '%s' does not exist"
msgstr "touch: Arkistoa ”%s” ei ole olemassa"

#: ar.c:150
#, c-format
msgid "touch: '%s' is not a valid archive"
msgstr "touch: ”%s” ei ole kelvollinen arkisto"

#: ar.c:157
#, c-format
msgid "touch: Member '%s' does not exist in '%s'"
msgstr "touch: Arkistossa ”%1$s” ei ole jäsentä ”%2$s”"

#: ar.c:164
#, c-format
msgid "touch: Bad return code from ar_member_touch on '%s'"
msgstr "touch: ar_member_touch antoi virheellisen paluuarvon kohteesta ”%s”"

#: arscan.c:130
#, c-format
msgid "lbr$set_module() failed to extract module info, status = %d"
msgstr "lbr$set_module() epäonnistui moduulitietojen noutamisessa, tila = %d"

#: arscan.c:236
#, c-format
msgid "lbr$ini_control() failed with status = %d"
msgstr "lbr$ini_control() epäonnistui, tila = %d"

#: arscan.c:261
#, fuzzy, c-format
msgid "unable to open library '%s' to lookup member status %d"
msgstr "kirjastoa ”%s” ei voi avata jäsenen ”%s” etsimiseksi"

#: arscan.c:965
#, c-format
msgid "Member '%s'%s: %ld bytes at %ld (%ld).\n"
msgstr "Jäsen ”%s”%s: %ld tavua kohdassa %ld (%ld).\n"

#: arscan.c:966
msgid " (name might be truncated)"
msgstr " (nimi voi olla typistynyt)"

#: arscan.c:968
#, c-format
msgid "  Date %s"
msgstr "  Päiväys %s"

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

#: commands.c:402
#, c-format
msgid "Recipe has too many lines (%ud)"
msgstr ""

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

#: commands.c:627
#, c-format
msgid "*** [%s] Archive member '%s' may be bogus; not deleted"
msgstr "*** [%s] Arkistojäsen ”%s” voi olla viallinen – ei poisteta"

#: commands.c:631
#, c-format
msgid "*** Archive member '%s' may be bogus; not deleted"
msgstr "*** Arkistojäsen ”%s” voi olla viallinen – ei poisteta"

#: commands.c:645
#, c-format
msgid "*** [%s] Deleting file '%s'"
msgstr "*** [%s] Poistetaan tiedosto ”%s”"

#: commands.c:647
#, c-format
msgid "*** Deleting file '%s'"
msgstr "*** Poistetaan tiedosto ”%s”"

#: commands.c:683
#, fuzzy
msgid "#  recipe to execute"
msgstr "#  käynnisetttävät komennot"

#: commands.c:686
msgid " (built-in):"
msgstr " (sisäänrakennettu):"

#: commands.c:688
#, c-format
msgid " (from '%s', line %lu):\n"
msgstr " (tiedosto ”%s”, rivi %lu):\n"

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

#: dir.c:1081
#, c-format
msgid "# %s: could not be stat'd.\n"
msgstr "# %s: tilaa ei voitu lukea.\n"

#: dir.c:1085
#, fuzzy, c-format
#| msgid "# %s (key %s, mtime %d): could not be opened.\n"
msgid "# %s (key %s, mtime %ull): could not be opened.\n"
msgstr "# %s (avain %s, maika %d): ei voitu avata.\n"

#: dir.c:1090
#, c-format
msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
msgstr "# %s (laite %d, i-solmu [%d,%d,%d]): ei voitu avata.\n"

#: dir.c:1095
#, c-format
msgid "# %s (device %ld, inode %ld): could not be opened.\n"
msgstr "# %s (laite %ld, i-solmu %ld): ei voitu avata.\n"

#: dir.c:1122
#, fuzzy, c-format
#| msgid "# %s (key %s, mtime %d): "
msgid "# %s (key %s, mtime %ull): "
msgstr "# %s (avain %s, maika %d: "

#: dir.c:1127
#, c-format
msgid "# %s (device %d, inode [%d,%d,%d]): "
msgstr "# %s (laite %d, i-solmu [%d,%d,%d]): "

#: dir.c:1132
#, c-format
msgid "# %s (device %ld, inode %ld): "
msgstr "# %s (laite %ld, i-solmu %ld): "

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

# Juuri näin, muodostetaan käännöslause yksittäisistä sanoista...
#: dir.c:1141 dir.c:1162
msgid " files, "
msgstr " tiedostoa, "

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

#: dir.c:1146
msgid " impossibilities"
msgstr " mahdottomuutta"

#: dir.c:1150
msgid " so far."
msgstr " tähän mennessä."

#: dir.c:1167
#, c-format
msgid " impossibilities in %lu directories.\n"
msgstr " mahdottomuutta %lu hakemistossa.\n"

#: expand.c:125
#, c-format
msgid "Recursive variable '%s' references itself (eventually)"
msgstr "Rekursiivinen muuttuja ”%s” viittaa (lopulta) itseensä"

#: expand.c:271
msgid "unterminated variable reference"
msgstr "päättämätön muuttujaviittaus"

#: file.c:278
#, fuzzy, c-format
msgid "Recipe was specified for file '%s' at %s:%lu,"
msgstr "Tiedostolle ”%s” määriteltiin komentoja paikassa %s:%lu,"

#: file.c:283
#, fuzzy, c-format
msgid "Recipe for file '%s' was found by implicit rule search,"
msgstr "Tiedostolle ”%s” löytyi komentoja oletussääntöhaussa,"

#: file.c:287
#, c-format
msgid "but '%s' is now considered the same file as '%s'."
msgstr "mutta ”%s”:n katsotaan nyt olevan sama tiedosto kuin ”%s”."

#: file.c:290
#, fuzzy, c-format
msgid "Recipe for '%s' will be ignored in favor of the one for '%s'."
msgstr "Tiedoston ”%s” komentoja ei huomioida, vaan käytetään komentoja tiedostosta ”%s”."

#: file.c:310
#, c-format
msgid "can't rename single-colon '%s' to double-colon '%s'"
msgstr ""

#: file.c:316
#, c-format
msgid "can't rename double-colon '%s' to single-colon '%s'"
msgstr ""

#: file.c:408
#, c-format
msgid "*** Deleting intermediate file '%s'"
msgstr "*** Poistetaan aputiedosto ”%s”"

#: file.c:412
msgid "Removing intermediate files...\n"
msgstr "Poistetaan aputiedostot...\n"

#: file.c:818
msgid "Current time"
msgstr "Tämänhetkinen aika"

#: file.c:822
#, c-format
msgid "%s: Timestamp out of range; substituting %s"
msgstr "%s: Aikaleima ei ole sallitulla välillä, korvataan %s"

#: file.c:962
msgid "# Not a target:"
msgstr "# Ei kohde:"

#: file.c:967
msgid "#  Precious file (prerequisite of .PRECIOUS)."
msgstr "#  Arvokas tiedosto (ennakkoehto .PRECIOUS:ille)."

#: file.c:969
msgid "#  Phony target (prerequisite of .PHONY)."
msgstr "#  Valekohde (ennakkoehto .PHONY:lle)."

#: file.c:971
msgid "#  Command line target."
msgstr "#  Komentorivikohde."

#: file.c:973
msgid "#  A default, MAKEFILES, or -include/sinclude makefile."
msgstr "#  Oletus-, MAKEFILES- tai -include/sinclude -makefile-tiedosto."

#: file.c:975
msgid "#  Builtin rule"
msgstr "#  Sisäänrakennettu sääntö"

#: file.c:977
msgid "#  Implicit rule search has been done."
msgstr "#  Oletussääntöhaku on suoritettu."

#: file.c:978
msgid "#  Implicit rule search has not been done."
msgstr "#  Oletussääntöhakua ei ole suoritettu."

#: file.c:980
#, c-format
msgid "#  Implicit/static pattern stem: '%s'\n"
msgstr ""

#: file.c:982
msgid "#  File is an intermediate prerequisite."
msgstr "#  Tiedosto on välitason ennakkoehto."

#: file.c:986
msgid "#  Also makes:"
msgstr "#  Tuotetaan myös:"

#: file.c:992
msgid "#  Modification time never checked."
msgstr "#  Muutosaikaa ei koskaan tarkastettu."

#: file.c:994
msgid "#  File does not exist."
msgstr "#  Tiedosto ei ole olemassa."

#: file.c:996
msgid "#  File is very old."
msgstr "#  Tiedosto on hyvin vanha."

#: file.c:1001
#, c-format
msgid "#  Last modified %s\n"
msgstr "#  Viimeksi muutettu %s\n"

#: file.c:1004
msgid "#  File has been updated."
msgstr "#  Tiedosto on päivitetty."

#: file.c:1004
msgid "#  File has not been updated."
msgstr "#  Tiedostoa ei ole päivitetty."

#: file.c:1008
#, fuzzy
msgid "#  Recipe currently running (THIS IS A BUG)."
msgstr "#  Ajossa olevat komennot (TÄMÄ ON OHJELMISTOVIKA)."

#: file.c:1011
#, fuzzy
msgid "#  Dependencies recipe running (THIS IS A BUG)."
msgstr "#  Ajossa olevat riippuvuuskomennot (TÄMÄ ON OHJELMISTOVIKA)."

#: file.c:1020
msgid "#  Successfully updated."
msgstr "#  Päivitetty onnistuneesti."

#: file.c:1024
msgid "#  Needs to be updated (-q is set)."
msgstr "#  Vaatii päivitystä (-q on asetettu)."

#: file.c:1027
msgid "#  Failed to be updated."
msgstr "#  Päivitys epäonnistui."

#: file.c:1032
#, fuzzy
msgid "#  Invalid value in 'command_state' member!"
msgstr "#  Virheellinen arvo ”command_state”-jäsenessä!"

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

#: file.c:1055
msgid ""
"\n"
"# files hash-table stats:\n"
"# "
msgstr ""
"\n"
"# tilasto tiedostojen hajautustaulusta:\n"
"# "

#: file.c:1065
#, c-format
msgid "%s: Field '%s' not cached: %s"
msgstr ""

#: function.c:790
msgid "non-numeric first argument to 'word' function"
msgstr "ei-numeerinen ensimmäinen argumentti ”word”-funktiolle"

#: function.c:795
msgid "first argument to 'word' function must be greater than 0"
msgstr "”word”-funktion ensimmäisen argumentin on oltava suurempi kuin 0"

#: function.c:815
msgid "non-numeric first argument to 'wordlist' function"
msgstr "ei-numeerinen ensimmäinen argumentti ”wordlist”-funktiolle"

#: function.c:817
msgid "non-numeric second argument to 'wordlist' function"
msgstr "ei-numeerinen toinen argumentti ”wordlist”-funktiolle"

#: function.c:1525
#, fuzzy, c-format
msgid "windows32_openpipe: DuplicateHandle(In) failed (e=%ld)\n"
msgstr "create_child_process: DuplicateHandle(In) epäonnistui (v=%d)\n"

#: function.c:1549
#, fuzzy, c-format
msgid "windows32_openpipe: DuplicateHandle(Err) failed (e=%ld)\n"
msgstr "create_child_process: DuplicateHandle(Err) epäonnistui (v=%d)\n"

#: function.c:1556
#, c-format
msgid "CreatePipe() failed (e=%ld)\n"
msgstr "CreatePipe() epäonnistui (v=%ld)\n"

#: function.c:1564
#, fuzzy
msgid "windows32_openpipe(): process_init_fd() failed\n"
msgstr "windows32_openpipe (): process_init_fd() epäonnistui\n"

#: function.c:1858
#, c-format
msgid "Cleaning up temporary batch file %s\n"
msgstr "Siivotaan väliaikainen komentotiedosto %s\n"

#: function.c:2215 function.c:2240
msgid "file: missing filename"
msgstr "tiedosto: tiedostonimi puuttuu"

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

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

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

#: function.c:2243
msgid "file: too many arguments"
msgstr "tiedosto: liian monta argumenttia"

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

#: function.c:2275
#, fuzzy, c-format
#| msgid "Invalid file operation: %s"
msgid "file: invalid file operation: %s"
msgstr "Virheellinen tiedostotoiminto: %s"

#: function.c:2390
#, c-format
msgid "insufficient number of arguments (%d) to function '%s'"
msgstr "liian vähän (%d) argumentteja funktiolle ”%s”"

#: function.c:2402
#, c-format
msgid "unimplemented on this platform: function '%s'"
msgstr "ei toteutettu tällä alustalla: funktio ”%s”"

#: function.c:2466
#, c-format
msgid "unterminated call to function '%s': missing '%c'"
msgstr "päättämätön kutsu funktioon ”%s”: puuttuva ”%c”"

#: function.c:2650
msgid "Empty function name"
msgstr "Tyhjä funktionimi"

#: function.c:2652
#, c-format
msgid "Invalid function name: %s"
msgstr "Virheellinen funktionimi: %s"

#: function.c:2654
#, c-format
msgid "Function name too long: %s"
msgstr "Funktionimi on liian pitkä: %s"

#: function.c:2657
#, fuzzy, c-format
#| msgid "Invalid minimum argument count (%d) for function %s"
msgid "Invalid minimum argument count (%u) for function %s"
msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"

#: function.c:2660
#, fuzzy, c-format
#| msgid "Invalid maximum argument count (%d) for function %s"
msgid "Invalid maximum argument count (%u) for function %s"
msgstr "Virheellinen enimmäisargumenttimäärä (%d) funktiolle %s"

#: getopt.c:659
#, c-format
msgid "%s: option '%s' is ambiguous\n"
msgstr "%s: valitsin ”%s” on moniselitteinen\n"

#: getopt.c:683
#, c-format
msgid "%s: option '--%s' doesn't allow an argument\n"
msgstr "%s: valitsin ”--%s” ei salli argumenttia\n"

#: getopt.c:688
#, c-format
msgid "%s: option '%c%s' doesn't allow an argument\n"
msgstr "%s: valitsin ”%c%s” ei salli argumenttia\n"

#: getopt.c:705 getopt.c:878
#, c-format
msgid "%s: option '%s' requires an argument\n"
msgstr "%s: valitsin ”%s” vaatii argumentin\n"

#: getopt.c:734
#, c-format
msgid "%s: unrecognized option '--%s'\n"
msgstr "%s: tunnistamaton valitsin ”--%s”\n"

#: getopt.c:738
#, c-format
msgid "%s: unrecognized option '%c%s'\n"
msgstr "%s: tunnistamaton valitsin ”%c%s”\n"

#: getopt.c:764
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: virheellinen valitsin -- %c\n"

#: getopt.c:767
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: virheellinen valitsin -- %c\n"

#: getopt.c:797 getopt.c:927
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: valitsin vaatii argumentin -- %c\n"

#: getopt.c:844
#, c-format
msgid "%s: option '-W %s' is ambiguous\n"
msgstr "%s: valitsin ”-W %s” on moniselitteinen\n"

#: getopt.c:862
#, c-format
msgid "%s: option '-W %s' doesn't allow an argument\n"
msgstr "%s: valitsin ”-W %s” ei salli argumenttia\n"

#: guile.c:58
#, c-format
msgid "guile: Expanding '%s'\n"
msgstr "guile: Lavennetaan ”%s”\n"

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

#: hash.c:49
#, fuzzy, c-format
msgid "can't allocate %lu bytes for hash table: memory exhausted"
msgstr "ei voida varata %ld tavua hajautustaululle: muisti lopussa"

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

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

#: hash.c:283
#, c-format
msgid "Collisions=%ld/%ld=%.0f%%"
msgstr "Törmäykset=%ld/%ld=%.0f%%"

#: implicit.c:38
#, c-format
msgid "Looking for an implicit rule for '%s'.\n"
msgstr "Etsitään oletussääntöä kohteelle ”%s”.\n"

#: implicit.c:54
#, c-format
msgid "Looking for archive-member implicit rule for '%s'.\n"
msgstr "Etsitään arkistojäsenen oletussääntöä kohteelle ”%s”.\n"

#: implicit.c:311
msgid "Avoiding implicit rule recursion.\n"
msgstr "Vältetään oletussääntörekursio.\n"

#: implicit.c:486
#, c-format
msgid "Stem too long: '%.*s'.\n"
msgstr "Liian pitkä runko: ”%.*s”.\n"

#: implicit.c:491
#, c-format
msgid "Trying pattern rule with stem '%.*s'.\n"
msgstr "Kokeillaan hahmosääntöä rungolla ”%.*s”.\n"

#: implicit.c:697
#, c-format
msgid "Rejecting impossible rule prerequisite '%s'.\n"
msgstr "Hylätään mahdoton säännön ennakkoehto ”%s”.\n"

#: implicit.c:698
#, c-format
msgid "Rejecting impossible implicit prerequisite '%s'.\n"
msgstr "Hylätään mahdoton oletusennakkoehto ”%s”.\n"

#: implicit.c:711
#, c-format
msgid "Trying rule prerequisite '%s'.\n"
msgstr "Yritetään käyttää säännön ennakkoehtoa ”%s”.\n"

#: implicit.c:712
#, c-format
msgid "Trying implicit prerequisite '%s'.\n"
msgstr "Yritetään käyttää oletusennakkoehtoa ”%s”.\n"

#: implicit.c:751
#, c-format
msgid "Found prerequisite '%s' as VPATH '%s'\n"
msgstr "Löydettiin ennakkoehto ”%s”, joka on VPATH ”%s”\n"

#: implicit.c:765
#, c-format
msgid "Looking for a rule with intermediate file '%s'.\n"
msgstr "Etsitään sääntöä aputiedostolla ”%s”.\n"

#: job.c:363
msgid "Cannot create a temporary file\n"
msgstr "Väliaikaistiedoston luominen ei onnistu\n"

#: job.c:485
msgid " (core dumped)"
msgstr " (muisti vedostettu)"

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

#: job.c:494 job.c:1828
msgid "<builtin>"
msgstr "<sisäänrakennettu>"

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

#: job.c:599
msgid "*** Waiting for unfinished jobs...."
msgstr "*** Odotetaan keskeneräisiä töitä...."

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

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

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

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

#: job.c:839
#, c-format
msgid "Cleaning up temp batch file %s\n"
msgstr "Siivotaan väliaikainen komentotiedosto %s\n"

#: job.c:845
#, fuzzy, c-format
msgid "Cleaning up temp batch file %s failed (%d)\n"
msgstr "Siivotaan väliaikainen komentotiedosto %s\n"

#: job.c:951
#, fuzzy, c-format
msgid "Removing child %p PID %s%s from chain.\n"
msgstr "Poistetaan ketjusta lapsiprosessi 0x%08lx PID %ld%s.\n"

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

#: job.c:1508 job.c:2201
#, fuzzy, c-format
msgid "process_easy() failed to launch process (e=%ld)\n"
msgstr "process_easy() epäonnistui prosessin käynnistämisessä (v=%d)\n"

#: job.c:1512 job.c:2205
#, c-format
msgid ""
"\n"
"Counted %d args in failed launch\n"
msgstr ""
"\n"
"Laskettiin %d argumenttia epäonnistuneessa käynnistyksessä\n"

#: job.c:1581
#, fuzzy, c-format
msgid "Putting child %p (%s) PID %s%s on the chain.\n"
msgstr "Lisätään ketjuun lapsiprosessi 0x%08lx (%s) PID %ld%s.\n"

#: job.c:1811
#, c-format
msgid "Obtained token for child %p (%s).\n"
msgstr ""

#: job.c:1838
#, c-format
msgid "%s: target '%s' does not exist"
msgstr "%s: kohde ”%s” ei ole olemassa"

#: job.c:1841
#, fuzzy, c-format
msgid "%s: update target '%s' due to: %s"
msgstr "%1$s”%3$s”-kohteen tarvitseman kohteen ”%2$s” tuottamiseen ei ole sääntöä%4$s"

#: job.c:1956
msgid "cannot enforce load limits on this operating system"
msgstr "kuormarajoja ei voi ottaa käyttöön tässä käyttöjärjestelmässä"

#: job.c:1958
msgid "cannot enforce load limit: "
msgstr "kuormarajaa ei voi ottaa käyttöön: "

#: job.c:2048
msgid "no more file handles: could not duplicate stdin\n"
msgstr "tiedostokahvoja ei ole enempää: vakiosyötteen kahdentaminen ei onnistunut\n"

#: job.c:2060
msgid "no more file handles: could not duplicate stdout\n"
msgstr "tiedostokahvoja ei ole enempää: vakiotulosteen kahdentaminen epäonnistui\n"

#: job.c:2074
msgid "no more file handles: could not duplicate stderr\n"
msgstr "tiedostokahvoja ei ole enempää: vakiovirhetulosteen kahdentaminen ei onnistunut\n"

#: job.c:2089
msgid "Could not restore stdin\n"
msgstr "Vakiosyötettä ei voitu palauttaa\n"

#: job.c:2097
msgid "Could not restore stdout\n"
msgstr "Vakiotulostetta ei voitu palauttaa\n"

#: job.c:2105
msgid "Could not restore stderr\n"
msgstr "Vakiovirhetulostetta ei voitu palauttaa\n"

#: job.c:2234
#, c-format
msgid "make reaped child pid %s, still waiting for pid %s\n"
msgstr ""

#: job.c:2275
#, c-format
msgid "%s: %s: Command not found\n"
msgstr "%s: %s: Komentoa ei löytynyt\n"

#: job.c:2277
#, c-format
msgid "%s[%u]: %s: Command not found\n"
msgstr "%s[%u]: %s: Komentoa ei löytynyt\n"

#: job.c:2337
#, c-format
msgid "%s: Shell program not found"
msgstr "%s: Kuoriohjelmaa ei löytynyt"

#: job.c:2346
msgid "spawnvpe: environment space might be exhausted"
msgstr "spawnvpe: ympäristötila saattaa olla lopussa"

#: job.c:2584
#, c-format
msgid "$SHELL changed (was '%s', now '%s')\n"
msgstr "$SHELL muuttunut (oli ”%s”, nyt ”%s”)\n"

#: job.c:3022 job.c:3207
#, c-format
msgid "Creating temporary batch file %s\n"
msgstr "Luodaan väliaikainen komentotiedosto %s\n"

#: job.c:3030
msgid ""
"Batch file contents:\n"
"\t@echo off\n"
msgstr ""
"Komentojonotiedoston sisältö:\n"
"\t@echo off\n"

#: job.c:3219
#, c-format
msgid ""
"Batch file contents:%s\n"
"\t%s\n"
msgstr ""
"Komentojonotiedoston sisältö:%s\n"
"\t%s\n"

#: job.c:3327
#, c-format
msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n"
msgstr "%s (rivi %d) Väärä kuoriympäristö (!unixy && !batch_mode_shell)\n"

#: job.h:43
msgid "-O[TYPE] (--output-sync[=TYPE]) is not configured for this build."
msgstr ""

#: load.c:60
#, c-format
msgid "Failed to open global symbol table: %s"
msgstr ""

#: load.c:97
#, c-format
msgid "Loaded object %s is not declared to be GPL compatible"
msgstr ""

#: load.c:104
#, c-format
msgid "Failed to load symbol %s from %s: %s"
msgstr ""

#: load.c:149
#, c-format
msgid "Empty symbol name for load: %s"
msgstr ""

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

#: load.c:256
#, fuzzy
msgid "The 'load' operation is not supported on this platform."
msgstr "Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla."

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

#: main.c:339
msgid "  -b, -m                      Ignored for compatibility.\n"
msgstr "  -b, -m                      Yhteensopivuuden vuoksi jätetään huomiotta.\n"

#: main.c:341
msgid "  -B, --always-make           Unconditionally make all targets.\n"
msgstr "  -B, --always-make           Tuota kaikki kohteet ehdoitta.\n"

#: main.c:343
msgid ""
"  -C DIRECTORY, --directory=DIRECTORY\n"
"                              Change to DIRECTORY before doing anything.\n"
msgstr ""
"  -C HAKEMISTO, --directory=HAKEMISTO\n"
"                              Siirry HAKEMISTOon ennen jatkamista.\n"

#: main.c:346
msgid "  -d                          Print lots of debugging information.\n"
msgstr "  -d                          Näytä runsaasti vianetsintätietoja.\n"

#: main.c:348
msgid "  --debug[=FLAGS]             Print various types of debugging information.\n"
msgstr "  --debug[=LIPUT]             Näytä monenlaisia vianetsintätietoja.\n"

#: main.c:350
msgid ""
"  -e, --environment-overrides\n"
"                              Environment variables override makefiles.\n"
msgstr ""
"  -e, --environment-overrides\n"
"                              Ympäristömuuttujat kumoavat makefile-tiedostot.\n"

#: main.c:353
msgid "  --eval=STRING               Evaluate STRING as a makefile statement.\n"
msgstr ""

#: main.c:355
msgid ""
"  -f FILE, --file=FILE, --makefile=FILE\n"
"                              Read FILE as a makefile.\n"
msgstr ""
"  -f TIEDOSTO, --file=TIEDOSTO, --makefile=TIEDOSTO\n"
"                              Käytä TIEDOSTOa makefile-tiedostona.\n"

#: main.c:358
msgid "  -h, --help                  Print this message and exit.\n"
msgstr "  -h, --help                  Näytä tämä viesti ja poistu.\n"

#: main.c:360
#, fuzzy
msgid "  -i, --ignore-errors         Ignore errors from recipes.\n"
msgstr "  -i, --ignore-errors         Älä huomioi suoritettujen komentojen virheitä.\n"

#: main.c:362
msgid ""
"  -I DIRECTORY, --include-dir=DIRECTORY\n"
"                              Search DIRECTORY for included makefiles.\n"
msgstr ""
"  -I HAKEMISTO, --include-dir=HAKEMISTO\n"
"                              Etsi sisällytettäviä makefile:ja HAKEMISTOsta.\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]          Salli N yhtäaikaista työtä; ilman N:ää ääretön.\n"

#: main.c:367
msgid "  -k, --keep-going            Keep going when some targets can't be made.\n"
msgstr ""
"  -k, --keep-going            Jatka vaikka joidenkin kohteiden tuottaminen\n"
"                                epäonnistuisi.\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"
"                              Älä aloita useita töitä ellei kuormitus alle N.\n"

#: main.c:372
msgid "  -L, --check-symlink-times   Use the latest mtime between symlinks and target.\n"
msgstr ""
"  -L, --check-symlink-times   Käytä uusinta mtime-aikaa symlinkkien ja\n"
"                                kohteen välillä.\n"

#: main.c:374
#, fuzzy
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"
"                              Näytä ajettavat komennot, älä käynnistä niitä.\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 TIEDOSTO, --old-file=TIEDOSTO, --assume-old=TIEDOSTO\n"
"                              Käsittele TIEDOSTO vanhana, älä tuota sitä.\n"

#: main.c:380
msgid ""
"  -O[TYPE], --output-sync[=TYPE]\n"
"                              Synchronize output of parallel jobs by TYPE.\n"
msgstr ""

#: main.c:383
msgid "  -p, --print-data-base       Print make's internal database.\n"
msgstr "  -p, --print-data-base       Näytä make:in sisäinen tietokanta.\n"

#: main.c:385
#, fuzzy
msgid "  -q, --question              Run no recipe; exit status says if up to date.\n"
msgstr ""
"  -q, --question              Älä aja komentoja; paluuarvo kertoo ajan-\n"
"                                tasaisuuden.\n"

#: main.c:387
msgid "  -r, --no-builtin-rules      Disable the built-in implicit rules.\n"
msgstr "  -r, --no-builtin-rules      Poista käytöstä sisäiset oletussäännöt.\n"

#: main.c:389
msgid "  -R, --no-builtin-variables  Disable the built-in variable settings.\n"
msgstr "  -R, --no-builtin-variables  Poista käytöstä sisäiset muuttuja-asetukset.\n"

#: main.c:391
#, fuzzy
msgid "  -s, --silent, --quiet       Don't echo recipes.\n"
msgstr "  -s, --silent, --quiet       Älä kaiuta komentoja.\n"

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

#: main.c:396
msgid "  -t, --touch                 Touch targets instead of remaking them.\n"
msgstr "  -t, --touch                 Kosketa kohteita tuottamisen sijaan.\n"

#: main.c:398
#, fuzzy
msgid "  --trace                     Print tracing information.\n"
msgstr "  -d                          Näytä runsaasti vianetsintätietoja.\n"

#: main.c:400
msgid "  -v, --version               Print the version number of make and exit.\n"
msgstr "  -v, --version               Näytä make:in versionumero ja poistu.\n"

#: main.c:402
msgid "  -w, --print-directory       Print the current directory.\n"
msgstr "  -w, --print-directory       Näytä nykyinen hakemisto.\n"

#: main.c:404
msgid "  --no-print-directory        Turn off -w, even if it was turned on implicitly.\n"
msgstr "  --no-print-directory        Kumoa -w, vaikka se olisi käytössä oletuksena.\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 TIEDOSTO, --what-if=TIEDOSTO, --new-file=TIEDOSTO, --assume-new=TIEDOSTO\n"
"                              Käsittele TIEDOSTO aina uutena.\n"

#: main.c:409
msgid "  --warn-undefined-variables  Warn when an undefined variable is referenced.\n"
msgstr ""
"  --warn-undefined-variables  Varoita viittauksista määrittelemättömiin\n"
"                                muuttujiin.\n"

#: main.c:683
msgid "empty string invalid as file name"
msgstr "tyhjä merkkijono ei kelpaa tiedostonimeksi"

#: main.c:766
#, c-format
msgid "unknown debug level specification '%s'"
msgstr "tuntematon vianetsintätason määritys ”%s”"

#: main.c:806
#, c-format
msgid "unknown output-sync type '%s'"
msgstr ""

#: main.c:861
#, c-format
msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%p)\n"
msgstr "%s: Keskeytys/poikkeus siepattu (koodi = 0x%lx, osoite = 0x%p)\n"

#: main.c:868
#, fuzzy, c-format
msgid ""
"\n"
"Unhandled exception filter called from program %s\n"
"ExceptionCode = %lx\n"
"ExceptionFlags = %lx\n"
"ExceptionAddress = 0x%p\n"
msgstr ""
"\n"
"Ohjelmasta %s kutsuttiin käsittelemätöntä poikkeussuodinta\n"
"Poikkeuskoodi = %x\n"
"Poikkeusliput = %x\n"
"Poikkeusosoite = %x\n"

#: main.c:876
#, c-format
msgid "Access violation: write operation at address 0x%p\n"
msgstr "Suojausvirhe: kirjoitusoperaatio osoitteeseen 0x%p\n"

#: main.c:877
#, c-format
msgid "Access violation: read operation at address 0x%p\n"
msgstr "Suojausvirhe: lukuoperaatio osoitteeseen 0x%p\n"

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

#: main.c:1021
#, fuzzy, c-format
msgid "find_and_set_shell() path search set default_shell = %s\n"
msgstr "find_and_set_shell: polkuhaku asetti default_shell = %s\n"

#: main.c:1538
#, c-format
msgid "%s is suspending for 30 seconds..."
msgstr "%s keskeytyy 30 sekunniksi..."

#: main.c:1540
#, c-format
msgid "done sleep(30). Continuing.\n"
msgstr "sleep(30) valmis. Jatketaan.\n"

#: main.c:1627
#, fuzzy
msgid "warning: jobserver unavailable: using -j1.  Add '+' to parent make rule."
msgstr "varoitus: työpalvelin ei käytettävissä: käytetään -j1. Lisää ”+” ylemmän tason make-sääntöön."

#: main.c:1635
msgid "warning: -jN forced in submake: disabling jobserver mode."
msgstr "varoitus: -jN pakotettu ali-make:ssa: poistetaan työpalvelin käytöstä."

#: main.c:1805
msgid "Makefile from standard input specified twice."
msgstr "Makefile-tiedosto vakiosyötteestä määritelty kahdesti."

#: main.c:1843 vmsjobs.c:1252
msgid "fopen (temporary file)"
msgstr "fopen (väliaikaistiedosto)"

#: main.c:1849
msgid "fwrite (temporary file)"
msgstr "fwrite (väliaikaistiedosto)"

#: main.c:2048
msgid "Parallel jobs (-j) are not supported on this platform."
msgstr "Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla."

#: main.c:2049
msgid "Resetting to single job (-j1) mode."
msgstr "Palataan yhden työn (-j1) tilaan."

#: main.c:2088
msgid "Symbolic links not supported: disabling -L."
msgstr "Ei tukea symbolisille linkeille: poistetaan -L käytöstä."

#: main.c:2170
msgid "Updating makefiles....\n"
msgstr "Päivitetään makefile-tiedostoja....\n"

#: main.c:2195
#, c-format
msgid "Makefile '%s' might loop; not remaking it.\n"
msgstr "Ei uudelleentuoteta makefile-tiedostoa ”%s” – vältetään mahdollinen ikuinen silmukka.\n"

#: main.c:2283
#, c-format
msgid "Failed to remake makefile '%s'."
msgstr "Makefile-tiedoston ”%s” uudelleentuottaminen epäonnistui."

#: main.c:2303
#, c-format
msgid "Included makefile '%s' was not found."
msgstr "Sisällytettyä makefile-tiedostoa ”%s” ei löytynyt."

#: main.c:2308
#, c-format
msgid "Makefile '%s' was not found"
msgstr "Makefile-tiedostoa ”%s” ei löytynyt"

#: main.c:2376
msgid "Couldn't change back to original directory."
msgstr "Ei voitu siirtyä takaisin alkuperäiseen hakemistoon."

#: main.c:2384
#, c-format
msgid "Re-executing[%u]:"
msgstr "Uudelleenkäynnistetään[%u]:"

#: main.c:2491
msgid "unlink (temporary file): "
msgstr "unlink (väliaikaistiedosto): "

#: main.c:2524
msgid ".DEFAULT_GOAL contains more than one target"
msgstr ".DEFAULT_GOAL sisältää yli yhden kohteen"

#: main.c:2547
msgid "No targets specified and no makefile found"
msgstr "Kohteita ei ole annettu, eikä makefileä löytynyt"

#: main.c:2549
msgid "No targets"
msgstr "Ei kohteita"

#: main.c:2554
msgid "Updating goal targets....\n"
msgstr ""

#: main.c:2578
msgid "warning:  Clock skew detected.  Your build may be incomplete."
msgstr "varoitus: Havaittu väärä kellonaika. Käännösversio saattaa olla epätäydellinen."

#: main.c:2772
#, c-format
msgid "Usage: %s [options] [target] ...\n"
msgstr "Käyttö: %s [valitsimet] [kohde] ...\n"

#: main.c:2778
#, c-format
msgid ""
"\n"
"This program built for %s\n"
msgstr ""
"\n"
"Tämä ohjelma on käännetty järjestelmälle %s.\n"

#: main.c:2780
#, c-format
msgid ""
"\n"
"This program built for %s (%s)\n"
msgstr ""
"\n"
"Tämä ohjelma on käännetty järjestelmälle %s (%s).\n"

#: main.c:2783
#, c-format
msgid "Report bugs to <bug-make@gnu.org>\n"
msgstr "Ilmoita ohjelmistovioista (englanniksi) osoitteeseen <bug-make@gnu.org>.\n"

#: main.c:2869
#, c-format
msgid "the '%s%s' option requires a non-empty string argument"
msgstr "valitsin ”%s%s” vaatii ei-tyhjän merkkijonoargumentin"

#: main.c:2933
#, c-format
msgid "the '-%c' option requires a positive integer argument"
msgstr "valitsin ”-%c” vaatii positiivisen kokonaislukuargumentin"

#: main.c:3331
#, c-format
msgid "%sBuilt for %s\n"
msgstr "%sTämä ohjelma on käännetty järjestelmälle %s\n"

#: main.c:3333
#, c-format
msgid "%sBuilt for %s (%s)\n"
msgstr "%sTämä ohjelma on käännetty järjestelmälle %s (%s)\n"

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

#: main.c:3365
#, c-format
msgid ""
"\n"
"# Make data base, printed on %s"
msgstr ""
"\n"
"# Make-tietokanta, tulostettu %s"

#: main.c:3375
#, c-format
msgid ""
"\n"
"# Finished Make data base on %s\n"
msgstr ""
"\n"
"# Make-tietokanta saatu valmiiksi %s\n"

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

#: misc.c:508
#, c-format
msgid "%s: user %lu (real %lu), group %lu (real %lu)\n"
msgstr "%s: käyttäjä %lu (todellinen %lu), ryhmä %lu (todellinen %lu)\n"

#: misc.c:529
msgid "Initialized access"
msgstr "Alkuperäiset käyttöoikeudet"

#: misc.c:608
msgid "User access"
msgstr "Käyttäjän käyttöoikeudet"

#: misc.c:656
msgid "Make access"
msgstr "Make-prosessin käyttöoikeudet"

#: misc.c:690
msgid "Child access"
msgstr "Lapsiprosessin käyttöoikeudet"

#: output.c:104
#, c-format
msgid "%s: Entering an unknown directory\n"
msgstr "%s: Siirrytään tuntemattomaan hakemistoon\n"

#: output.c:106
#, c-format
msgid "%s: Leaving an unknown directory\n"
msgstr "%s: Poistutaan tuntemattomasta hakemistosta\n"

#: output.c:109
#, c-format
msgid "%s: Entering directory '%s'\n"
msgstr "%s: Siirrytään hakemistoon ”%s”\n"

#: output.c:111
#, c-format
msgid "%s: Leaving directory '%s'\n"
msgstr "%s: Poistutaan hakemistosta ”%s”\n"

#: output.c:115
#, c-format
msgid "%s[%u]: Entering an unknown directory\n"
msgstr "%s[%u]: Siirrytään tuntemattomaan hakemistoon\n"

#: output.c:117
#, c-format
msgid "%s[%u]: Leaving an unknown directory\n"
msgstr "%s[%u]: Poistutaan tuntemattomasta hakemistosta\n"

#: output.c:120
#, c-format
msgid "%s[%u]: Entering directory '%s'\n"
msgstr "%s[%u]: Siirrytään hakemistoon ”%s”\n"

#: output.c:122
#, c-format
msgid "%s[%u]: Leaving directory '%s'\n"
msgstr "%s[%u]: Poistutaan hakemistosta ”%s”\n"

#: output.c:495 output.c:497
msgid "write error: stdout"
msgstr "kirjoitusvirhe: vakiotuloste"

#: output.c:677
msgid ".  Stop.\n"
msgstr ". Seis.\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 "luodaan työputki"

#: posixos.c:72 posixos.c:227
#, fuzzy
#| msgid "creating jobs pipe"
msgid "duping jobs pipe"
msgstr "luodaan työputki"

#: posixos.c:78
msgid "init jobserver pipe"
msgstr "alustetaan työpalvelimen putki"

#: posixos.c:90
#, fuzzy, c-format
msgid "internal error: invalid --jobserver-auth string '%s'"
msgstr "sisäinen virhe: virheellinen --jobserver-fds -merkkijono ”%s”"

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

#: posixos.c:109
#, fuzzy
#| msgid "init jobserver pipe"
msgid "jobserver pipeline"
msgstr "alustetaan työpalvelimen putki"

#: posixos.c:154
msgid "write jobserver"
msgstr "työpalvelimen kirjoitus"

#: posixos.c:268
#, fuzzy
#| msgid "read jobs pipe"
msgid "pselect jobs pipe"
msgstr "työputken luku"

#: posixos.c:279 posixos.c:391
msgid "read jobs pipe"
msgstr "työputken luku"

#: read.c:178
msgid "Reading makefiles...\n"
msgstr "Luetaan makefile-tiedostoja...\n"

#: read.c:329
#, c-format
msgid "Reading makefile '%s'"
msgstr "Luetaan makefile-tiedosto ”%s”"

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

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

#: read.c:335
#, c-format
msgid " (don't care)"
msgstr " (ei välitetä)"

#: read.c:337
#, c-format
msgid " (no ~ expansion)"
msgstr " (ei ~-laajennusta)"

#: read.c:651
#, c-format
msgid "Skipping UTF-8 BOM in makefile '%s'\n"
msgstr "Ohitetaan UTF-8-BOM makefile-tiedostossa ”%s”\n"

#: read.c:654
#, c-format
msgid "Skipping UTF-8 BOM in makefile buffer\n"
msgstr "Ohitetaan UTF-8-BOM makefile-puskurissa\n"

#: read.c:783
msgid "invalid syntax in conditional"
msgstr "virheellinen syntaksi ehtolauseessa"

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

#: read.c:985
#, fuzzy
msgid "recipe commences before first target"
msgstr "komennot alkavat ennen ensimmäistä kohdetta"

#: read.c:1034
#, fuzzy
msgid "missing rule before recipe"
msgstr "puuttuva sääntö ennen komentoja"

#: read.c:1124
#, fuzzy
msgid "missing separator (did you mean TAB instead of 8 spaces?)"
msgstr " (ehkä tarkoitit sarkainta eikä kahdeksaa välilyöntiä?)"

#: read.c:1126
msgid "missing separator"
msgstr "puuttuva erotin"

#: read.c:1262
msgid "missing target pattern"
msgstr "puuttuva kohdehahmo"

#: read.c:1264
msgid "multiple target patterns"
msgstr "useita kohdehahmoja"

#: read.c:1268
#, c-format
msgid "target pattern contains no '%%'"
msgstr "kohdehahmo ei sisällä ”%%”-merkkiä"

#: read.c:1390
msgid "missing 'endif'"
msgstr "puuttuva ”endif”"

#: read.c:1428 read.c:1473 variable.c:1576
msgid "empty variable name"
msgstr "tyhjä muuttujan nimi"

#: read.c:1463
msgid "extraneous text after 'define' directive"
msgstr "ylimääräistä tekstiä ”endef”-toimintaohjeen jälkeen"

#: read.c:1488
msgid "missing 'endef', unterminated 'define'"
msgstr "puuttuva ”endef”, päättämätön ”define”"

#: read.c:1516
msgid "extraneous text after 'endef' directive"
msgstr "ylimääräistä tekstiä ”endef”-toimintaohjeen jälkeen"

#: read.c:1588
#, c-format
msgid "extraneous text after '%s' directive"
msgstr "ylimääräistä tekstiä ”%s”-toimintaohjeen jälkeen"

#: read.c:1589
#, c-format
msgid "extraneous '%s'"
msgstr "ylimääräinen ”%s”"

#: read.c:1617
msgid "only one 'else' per conditional"
msgstr "vain yksi ”else” ehtolausetta kohden"

#: read.c:1892
msgid "Malformed target-specific variable definition"
msgstr "Väärin muotoiltu kohdekohtainen muuttujamäärittely"

# skripti?
#: read.c:1950
#, fuzzy
msgid "prerequisites cannot be defined in recipes"
msgstr "ennakkoehtoja ei voi määritellä komentoskripteissä"

#: read.c:2009
msgid "mixed implicit and static pattern rules"
msgstr ""

#: read.c:2032
msgid "mixed implicit and normal rules"
msgstr ""

#: read.c:2085
#, c-format
msgid "target '%s' doesn't match the target pattern"
msgstr "kohde ”%s” ei täsmää kohdehahmon kanssa"

#: read.c:2100 read.c:2146
#, c-format
msgid "target file '%s' has both : and :: entries"
msgstr "kohdetiedostolla ”%s” on sekä :- että ::-merkinnät"

#: read.c:2106
#, c-format
msgid "target '%s' given more than once in the same rule"
msgstr "kohde ”%s” annettu yli yhden kerran samassa säännössä"

#: read.c:2116
#, fuzzy, c-format
msgid "warning: overriding recipe for target '%s'"
msgstr "varoitus: syrjäytetään kohteen ”%s” komennot"

#: read.c:2119
#, fuzzy, c-format
msgid "warning: ignoring old recipe for target '%s'"
msgstr "varoitus: ei huomioida vanhoja komentoja kohteelle ”%s”"

#: read.c:2223
msgid "*** mixed implicit and normal rules: deprecated syntax"
msgstr ""

#: read.c:2542
msgid "warning: NUL character seen; rest of line ignored"
msgstr "varoitus: havaittu NUL-merkki, rivin loppuosaa ei huomioida"

#: remake.c:225
#, c-format
msgid "Nothing to be done for '%s'."
msgstr "Kohteelle ”%s” ei tarvitse tehdä mitään."

#: remake.c:226
#, c-format
msgid "'%s' is up to date."
msgstr "”%s” on ajan tasalla."

#: remake.c:322
#, c-format
msgid "Pruning file '%s'.\n"
msgstr "Karsitaan tiedosto ”%s”.\n"

#: remake.c:405
#, fuzzy, c-format
msgid "%sNo rule to make target '%s', needed by '%s'%s"
msgstr "%1$s”%3$s”-kohteen tarvitseman kohteen ”%2$s” tuottamiseen ei ole sääntöä%4$s"

#: remake.c:415
#, fuzzy, c-format
msgid "%sNo rule to make target '%s'%s"
msgstr "%sKohteen ”%s” tuottamiseen ei ole sääntöä%s"

#: remake.c:441
#, c-format
msgid "Considering target file '%s'.\n"
msgstr "Tarkastellaan kohdetiedostoa ”%s”.\n"

#: remake.c:448
#, c-format
msgid "Recently tried and failed to update file '%s'.\n"
msgstr "Tiedoston ”%s” päivitysyritys epäonnistui äskettäin.\n"

#: remake.c:460
#, c-format
msgid "File '%s' was considered already.\n"
msgstr "Tiedostoa ”%s” on jo tarkasteltu.\n"

#: remake.c:470
#, c-format
msgid "Still updating file '%s'.\n"
msgstr "Päivitetään edelleen tiedostoa ”%s”.\n"

#: remake.c:473
#, c-format
msgid "Finished updating file '%s'.\n"
msgstr "Tiedoston ”%s” päivitys valmistui.\n"

#: remake.c:502
#, c-format
msgid "File '%s' does not exist.\n"
msgstr "Tiedosto ”%s” ei ole olemassa.\n"

#: remake.c:510
#, c-format
msgid "*** Warning: .LOW_RESOLUTION_TIME file '%s' has a high resolution time stamp"
msgstr "*** Varoitus: .LOW_RESOLUTION_TIME-tiedostolla ”%s” on korkearesoluutioinen aikaleima"

#: remake.c:523 remake.c:1055
#, c-format
msgid "Found an implicit rule for '%s'.\n"
msgstr "Kohteelle ”%s” löytyi oletussääntö.\n"

#: remake.c:525 remake.c:1057
#, c-format
msgid "No implicit rule found for '%s'.\n"
msgstr "Kohteelle ”%s” ei löytynyt oletussääntöä.\n"

#: remake.c:531
#, fuzzy, c-format
msgid "Using default recipe for '%s'.\n"
msgstr "Käytetään oletuskomentoja kohteelle ”%s”.\n"

#: remake.c:565 remake.c:1104
#, c-format
msgid "Circular %s <- %s dependency dropped."
msgstr "Kehäriippuvuus %s <- %s hylätty."

#: remake.c:690
#, c-format
msgid "Finished prerequisites of target file '%s'.\n"
msgstr "Kohdetiedoston ”%s” ennakkoehdot täytetty.\n"

#: remake.c:696
#, c-format
msgid "The prerequisites of '%s' are being made.\n"
msgstr "Kohteen ”%s” ennakkoehtoja täytetään.\n"

#: remake.c:710
#, c-format
msgid "Giving up on target file '%s'.\n"
msgstr "Luovutaan kohdetiedostosta ”%s”.\n"

#: remake.c:715
#, c-format
msgid "Target '%s' not remade because of errors."
msgstr "Kohdetta ”%s” ei tuotettu uudelleen virheiden vuoksi."

#: remake.c:767
#, fuzzy, c-format
msgid "Prerequisite '%s' is order-only for target '%s'.\n"
msgstr "Ennakkoehto ”%s” on vanhempi kuin kohde ”%s”.\n"

#: remake.c:772
#, c-format
msgid "Prerequisite '%s' of target '%s' does not exist.\n"
msgstr "Kohteen ”%2$s” ennakkoehto ”%1$s” ei ole olemassa.\n"

#: remake.c:777
#, c-format
msgid "Prerequisite '%s' is newer than target '%s'.\n"
msgstr "Ennakkoehto ”%s” on uudempi kuin kohde ”%s”.\n"

#: remake.c:780
#, c-format
msgid "Prerequisite '%s' is older than target '%s'.\n"
msgstr "Ennakkoehto ”%s” on vanhempi kuin kohde ”%s”.\n"

#: remake.c:798
#, c-format
msgid "Target '%s' is double-colon and has no prerequisites.\n"
msgstr ""

#: remake.c:805
#, c-format
msgid "No recipe for '%s' and no prerequisites actually changed.\n"
msgstr ""

#: remake.c:810
#, c-format
msgid "Making '%s' due to always-make flag.\n"
msgstr "Tuotetaan ”%s”, koska always-make-lippu on käytössä.\n"

#: remake.c:818
#, c-format
msgid "No need to remake target '%s'"
msgstr "Ei tarvetta uudelleentuottaa kohdetta ”%s”"

#: remake.c:820
#, c-format
msgid "; using VPATH name '%s'"
msgstr "; käytetään VPATH-nimeä ”%s”"

#: remake.c:840
#, c-format
msgid "Must remake target '%s'.\n"
msgstr "Kohde ”%s” on tuotettava uudelleen.\n"

#: remake.c:846
#, c-format
msgid "  Ignoring VPATH name '%s'.\n"
msgstr "  Ei huomioida VPATH-nimeä ”%s”.\n"

#: remake.c:855
#, c-format
msgid "Recipe of '%s' is being run.\n"
msgstr ""

#: remake.c:862
#, c-format
msgid "Failed to remake target file '%s'.\n"
msgstr "Kohdetiedoston ”%s” uudelleentuottaminen epäonnistui.\n"

#: remake.c:865
#, c-format
msgid "Successfully remade target file '%s'.\n"
msgstr "Kohdetiedosto ”%s” uudelleentuotettiin onnistuneesti.\n"

#: remake.c:868
#, c-format
msgid "Target file '%s' needs to be remade under -q.\n"
msgstr ""

#: remake.c:1063
#, c-format
msgid "Using default commands for '%s'.\n"
msgstr "Käytetään oletuskomentoja kohteelle ”%s”.\n"

#: remake.c:1429
#, c-format
msgid "Warning: File '%s' has modification time in the future"
msgstr "Varoitus: Tiedoston ”%s” muutosaika on tulevaisuudessa"

#: remake.c:1443
#, c-format
msgid "Warning: File '%s' has modification time %s s in the future"
msgstr "Varoitus: Tiedoston ”%s” muutosaika on %s sekuntia tulevaisuudessa"

#: remake.c:1646
#, c-format
msgid ".LIBPATTERNS element '%s' is not a pattern"
msgstr ".LIBPATTERNS-elementti ”%s” ei ole hahmo"

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

#: rule.c:496
msgid ""
"\n"
"# Implicit Rules"
msgstr ""
"\n"
"# Oletussäännöt"

#: rule.c:511
msgid ""
"\n"
"# No implicit rules."
msgstr ""
"\n"
"# Ei oletussääntöjä."

#: rule.c:514
#, c-format
msgid ""
"\n"
"# %u implicit rules, %u"
msgstr ""
"\n"
"# %u oletussääntöä, %u"

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

#: rule.c:531
#, c-format
msgid "BUG: num_pattern_rules is wrong!  %u != %u"
msgstr "VIKA: num_pattern_rules on väärä! %u != %u"

#: signame.c:84
msgid "unknown signal"
msgstr "tuntematon signaali"

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

#: signame.c:95
msgid "Interrupt"
msgstr "Keskeytys"

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

#: signame.c:101
msgid "Illegal Instruction"
msgstr "Virheellinen käsky"

#: signame.c:104
msgid "Trace/breakpoint trap"
msgstr "Jäljitys/katkaisupisteansa"

#: signame.c:109
msgid "Aborted"
msgstr "Keskeytetty"

#: signame.c:112
msgid "IOT trap"
msgstr "IOT-ansa"

#: signame.c:115
msgid "EMT trap"
msgstr "EMT-ansa"

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

#: signame.c:121
msgid "Killed"
msgstr "Tapettu"

#: signame.c:124
msgid "Bus error"
msgstr "Väylävirhe"

#: signame.c:127
msgid "Segmentation fault"
msgstr "Muistialueen ylitys"

#: signame.c:130
msgid "Bad system call"
msgstr "Virheellinen järjestelmäkutsu"

#: signame.c:133
msgid "Broken pipe"
msgstr "Katkennut putki"

#: signame.c:136
msgid "Alarm clock"
msgstr "Herätyskello"

#: signame.c:139
msgid "Terminated"
msgstr "Päätetty"

#: signame.c:142
msgid "User defined signal 1"
msgstr "Käyttäjän määrittelemä signaali 1"

#: signame.c:145
msgid "User defined signal 2"
msgstr "Käyttäjän määrittelemä signaali 2"

#: signame.c:150 signame.c:153
msgid "Child exited"
msgstr "Lapsi lopetti"

#: signame.c:156
msgid "Power failure"
msgstr "Sähkökatko"

#: signame.c:159
msgid "Stopped"
msgstr "Pysäytetty"

#: signame.c:162
msgid "Stopped (tty input)"
msgstr "Pysäytetty (päätteen syöte)"

#: signame.c:165
msgid "Stopped (tty output)"
msgstr "Pysäytetty (päätteen tuloste)"

#: signame.c:168
msgid "Stopped (signal)"
msgstr "Pysäytetty (signaali)"

#: signame.c:171
msgid "CPU time limit exceeded"
msgstr "Suoritinaikaraja ylittynyt"

#: signame.c:174
msgid "File size limit exceeded"
msgstr "Tiedoston kokoraja ylitetty"

#: signame.c:177
msgid "Virtual timer expired"
msgstr "Virtuaaliajastin vanhentunut"

#: signame.c:180
msgid "Profiling timer expired"
msgstr "Profilointiajastin vanhentunut"

#: signame.c:186
msgid "Window changed"
msgstr "Ikkuna vaihtunut"

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

#: signame.c:192
msgid "Urgent I/O condition"
msgstr "Kiireellinen I/O-tilanne"

#: signame.c:199 signame.c:208
msgid "I/O possible"
msgstr "I/O mahdollista"

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

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

#: signame.c:211
msgid "Resource lost"
msgstr "Resurssi menetetty"

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

#: signame.c:217
msgid "Information request"
msgstr "Tietopyyntö"

#: signame.c:220
msgid "Floating point co-processor not available"
msgstr "Käytettävissä ei ole liukulukusuoritinta"

#: strcache.c:274
#, c-format
msgid ""
"\n"
"%s No strcache buffers\n"
msgstr ""

#: strcache.c:304
#, c-format
msgid ""
"\n"
"%s strcache buffers: %lu (%lu) / strings = %lu / storage = %lu B / avg = %lu B\n"
msgstr ""

#: strcache.c:308
#, c-format
msgid "%s current buf: size = %hu B / used = %hu B / count = %hu / avg = %hu B\n"
msgstr ""

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

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

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

#: strcache.c:328
msgid ""
"# hash-table stats:\n"
"# "
msgstr ""
"# tilasto tiedostojen hajautustaulusta:\n"
"# "

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

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

#: variable.c:1635
msgid "environment"
msgstr "ympäristö"

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

#: variable.c:1641
msgid "environment under -e"
msgstr "-e:n alainen ympäristö"

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

#: variable.c:1647
msgid "'override' directive"
msgstr "”override”-toimintaohje"

#: variable.c:1658
#, c-format
msgid " (from '%s', line %lu)"
msgstr " (tiedosto ”%s”, rivi %lu)"

#: variable.c:1721
msgid "# variable set hash-table stats:\n"
msgstr "# muuttujajoukon hajautustaulutilastot:\n"

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

#: variable.c:1736
msgid ""
"\n"
"# Pattern-specific Variable Values"
msgstr ""
"\n"
"# Hahmokohtaisia muuttujien arvoja"

#: variable.c:1750
msgid ""
"\n"
"# No pattern-specific variable values."
msgstr ""
"\n"
"# Ei hahmokohtaisia muuttuja-arvoja."

#: variable.c:1752
#, c-format
msgid ""
"\n"
"# %u pattern-specific variable values"
msgstr ""
"\n"
"# %u hahmokohtaista muuttuja-arvoa"

#: variable.h:224
#, c-format
msgid "warning: undefined variable '%.*s'"
msgstr "varoitus: määrittelemätön muuttuja ”%.*s”"

#: vmsfunctions.c:91
#, fuzzy, c-format
msgid "sys$search() failed with %d\n"
msgstr "sys$search epäonnistui, arvo %d\n"

#: vmsjobs.c:242
#, c-format
msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n"
msgstr "-varoitus, Ctrl-Y-käsittely on ehkä otettava uudelleen käyttöön DCL:stä.\n"

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

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

#: vmsjobs.c:1288
#, fuzzy, c-format
msgid "Append output to %s\n"
msgstr "Tuloste uudelleenohjattu kohteeseen %s\n"

#: vmsjobs.c:1313
#, c-format
msgid "Append %.*s and cleanup\n"
msgstr ""

#: vmsjobs.c:1326
#, c-format
msgid "Executing %s instead\n"
msgstr "Käynnistetään sen sijaan %s\n"

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

#: vpath.c:620
msgid "# No 'vpath' search paths."
msgstr "# Ei ”vpath”-hakupolkuja."

#: vpath.c:622
#, c-format
msgid ""
"\n"
"# %u 'vpath' search paths.\n"
msgstr ""
"\n"
"# %u ”vpath”-hakupolkua.\n"

#: vpath.c:625
msgid ""
"\n"
"# No general ('VPATH' variable) search path."
msgstr ""
"\n"
"# Ei yleistä (”VPATH”-muuttuja) hakupolkua."

#: vpath.c:631
msgid ""
"\n"
"# General ('VPATH' variable) search path:\n"
"# "
msgstr ""
"\n"
"# Yleinen (”VPATH”-muuttuja) hakupolku:\n"
"# "

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

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

#: w32/w32os.c:81
#, c-format
msgid "internal error: unable to open jobserver semaphore '%s': (Error %ld: %s)"
msgstr ""

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

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

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

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

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

#~ msgid "dup jobserver"
#~ msgstr "kaksinkertainen työpalvelin"

#~ msgid "Warning: Empty redirection\n"
#~ msgstr "Varoitus: Tyhjä uudelleenohjaus\n"

#~ msgid "internal error: '%s' command_state"
#~ msgstr "sisäinen virhe: ”%s” command_state"

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

#, fuzzy
#~ msgid "BUILTIN ECHO %s->%s\n"
#~ msgstr "SISÄÄNRAKENNETTU CD %s\n"

#~ msgid "Unknown builtin command '%s'\n"
#~ msgstr "Tuntematon sisäänrakennettu komento ”%s”\n"

#~ msgid "Error, empty command\n"
#~ msgstr "Virhe, tyhjä komento\n"

#~ msgid "Redirected input from %s\n"
#~ msgstr "Syöte uudelleenohjattu kohteesta %s\n"

#~ msgid "Redirected error to %s\n"
#~ msgstr "Virhetuloste uudelleenohjattu kohteeseen %s\n"

#~ msgid "Redirected output to %s\n"
#~ msgstr "Tuloste uudelleenohjattu kohteeseen %s\n"

#~ msgid "Error spawning, %d\n"
#~ msgstr "Virhe käynnistyksessä, %d\n"

#~ msgid "#  Invalid value in `update_status' member!"
#~ msgstr "#  Virheellinen arvo ”update_status”-jäsenessä!"

#~ msgid "*** [%s] Error 0x%x (ignored)"
#~ msgstr "*** [%s] Virhe 0x%x (ei huomioida)"

#~ msgid "Do not specify -j or --jobs if sh.exe is not available."
#~ msgstr "Älä anna -j tai --jobs -valitsinta jos sh.exe ei ole käytettävissä."

#~ msgid "Resetting make for single job mode."
#~ msgstr "Palautetaan make yhden työn tilaan."

#~ msgid "internal error: multiple --jobserver-fds options"
#~ msgstr "sisäinen virhe: useitan --jobserver-fds -valitsimia"

#~ 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 ""
#~ "%sTämä on vapaa ohjelmisto; katso kopiointiehdot lähdekoodista.\n"
#~ "%sTakuuta EI ole, ei edes KAUPALLISESTI HYVÄKSYTTÄVÄSTÄ LAADUSTA tai\n"
#~ "%sSOPIVUUDESTA TIETTYYN TARKOITUKSEEN.\n"

#~ msgid "virtual memory exhausted"
#~ msgstr "virtuaalimuisti lopussa"

#~ msgid "write error"
#~ msgstr "kirjoitusvirhe"

#~ msgid "extraneous `endef'"
#~ msgstr "ylimääräinen ”endef”"

#~ msgid "empty `override' directive"
#~ msgstr "tyhjä ”override”-toimintaohje"

#~ msgid "invalid `override' directive"
#~ msgstr "virheellinen ”override”-toimintaohje"

#~ msgid "-warning, CTRL-Y will leave sub-process(es) around.\n"
#~ msgstr "-varoitus, Ctrl-Y jättää aliprosessi(n/t) käyntiin.\n"

#~ msgid "BUILTIN RM %s\n"
#~ msgstr "SISÄÄNRAKENNETTU RM %s\n"

#~ msgid "Syntax error, still inside '”'\n"
#~ msgstr "Syntaksivirhe, edelleen ”:n sisällä\n"
