# 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-06-10 19:03-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"
"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
msgid "# %s (key %s, mtime %I64u): 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
msgid "# %s (key %s, mtime %I64u): "
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 "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 (%u) for function %s"
msgstr "Virheellinen vähimmäisargumenttimäärä (%d) funktiolle %s"

#: function.c:2660
#, fuzzy, c-format
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:2279
#, c-format
msgid "Failed to remake makefile '%s'."
msgstr "Makefile-tiedoston ”%s” uudelleentuottaminen epäonnistui."

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

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

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

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

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

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

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

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

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

#: main.c:2579
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:2773
#, c-format
msgid "Usage: %s [options] [target] ...\n"
msgstr "Käyttö: %s [valitsimet] [kohde] ...\n"

#: main.c:2779
#, 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:2781
#, 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:2784
#, c-format
msgid "Report bugs to <bug-make@gnu.org>\n"
msgstr ""
"Ilmoita ohjelmistovioista (englanniksi) osoitteeseen <bug-make@gnu.org>.\n"

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

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

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

#: main.c:3334
#, c-format
msgid "%sBuilt for %s (%s)\n"
msgstr "%sTämä ohjelma on käännetty järjestelmälle %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 ""

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

#: main.c:3376
#, 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 "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 "jobserver pipeline"
msgstr "alustetaan työpalvelimen putki"

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

#: posixos.c:268
#, fuzzy
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:226
#, c-format
msgid "Nothing to be done for '%s'."
msgstr "Kohteelle ”%s” ei tarvitse tehdä mitään."

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

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

#: remake.c:406
#, 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:416
#, fuzzy, c-format
msgid "%sNo rule to make target '%s'%s"
msgstr "%sKohteen ”%s” tuottamiseen ei ole sääntöä%s"

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

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

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

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

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

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

#: remake.c:511
#, 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:524 remake.c:1056
#, c-format
msgid "Found an implicit rule for '%s'.\n"
msgstr "Kohteelle ”%s” löytyi oletussääntö.\n"

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

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

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

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

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

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

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

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

#: remake.c:773
#, 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:778
#, c-format
msgid "Prerequisite '%s' is newer than target '%s'.\n"
msgstr "Ennakkoehto ”%s” on uudempi kuin kohde ”%s”.\n"

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

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

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

#: remake.c:811
#, 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:819
#, c-format
msgid "No need to remake target '%s'"
msgstr "Ei tarvetta uudelleentuottaa kohdetta ”%s”"

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

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

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

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

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

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

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

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

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

#: remake.c:1444
#, 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:1647
#, 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"
