# 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 3.81-b3\n"
"Report-Msgid-Bugs-To: bug-make@gnu.org\n"
"POT-Creation-Date: 2006-04-01 01:40-0500\n"
"PO-Revision-Date: 2005-07-06 21:36+0300\n"
"Last-Translator: Lauri Nurmi <lanurmi@iki.fi>\n"
"Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

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

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

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

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

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

#: ar.c:185
#, 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:69
#, 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:154
#, c-format
msgid "lbr$ini_control failed with status = %d"
msgstr "lbr$ini_control epäonnistui, tila = %d"

#: arscan.c:165
#, c-format
msgid "unable to open library `%s' to lookup member `%s'"
msgstr "kirjastoa \"%s\" ei voi avata jäsenen \"%s\" etsimiseksi"

#: arscan.c:825
#, 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:826
msgid " (name might be truncated)"
msgstr " (nimi voi olla typistynyt)"

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

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

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

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

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

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

#: commands.c:563
#, c-format
msgid "*** Deleting file `%s'"
msgstr "*** Poistetaan tiedosto \"%s\""

#: commands.c:599
msgid "#  commands to execute"
msgstr "#  käynnisetttävät komennot"

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

#: commands.c:604
#, c-format
msgid " (from `%s', line %lu):\n"
msgstr " (tiedostosta \"%s\", rivi %lu):\n"

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

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

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

#: dir.c:1003
#, 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:1008
#, 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:1035
#, c-format
msgid "# %s (key %s, mtime %d): "
msgstr "# %s (avain %s, maika %d: "

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

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

#: dir.c:1050 dir.c:1071
msgid "No"
msgstr "Ei"

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

#: dir.c:1055 dir.c:1076
msgid "no"
msgstr "ei"

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

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

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

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

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

#: file.c:270
#, c-format
msgid "Commands were specified for file `%s' at %s:%lu,"
msgstr "Tiedostolle \"%s\" määriteltiin komentoja paikassa %s:%lu,"

#: file.c:275
#, c-format
msgid "Commands for file `%s' were found by implicit rule search,"
msgstr "Tiedostolle \"%s\" löytyi komentoja oletussääntöhaussa,"

#: file.c:278
#, 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:281
#, c-format
msgid "Commands for `%s' will be ignored in favor of those for `%s'."
msgstr ""
"Tiedoston \"%s\" komentoja ei huomioida, vaan käytetään komentoja "
"tiedostosta \"%s\"."

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

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

#: file.c:381
#, c-format
msgid "*** Deleting intermediate file `%s'"
msgstr "*** Poistetaan aputiedosto \"%s\""

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#: file.c:963
msgid "#  Invalid value in `update_status' member!"
msgstr "#  Virheellinen arvo \"update_status\"-jäsenessä!"

#: file.c:970
msgid "#  Invalid value in `command_state' member!"
msgstr "#  Virheellinen arvo \"command_state\"-jäsenessä!"

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

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

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

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

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

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

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

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

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

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

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

#: function.c:2101
#, fuzzy, c-format
msgid "insufficient number of arguments (%d) to function `%s'"
msgstr "Liian vähän (%d) argumenttejeja funktiolle \"%s\""

#: function.c:2113
#, fuzzy, c-format
msgid "unimplemented on this platform: function `%s'"
msgstr "Ei toteutettu tällä alustalla: funktio \"%s\""

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

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

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

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

#: getopt.c:709 getopt.c:882
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s: valitsin \"%s\" vaatii argumentin\n"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#: job.c:388
#, c-format
msgid "*** [%s] Error 0x%x (ignored)"
msgstr "*** [%s] Virhe 0x%x (ei huomioida)"

#: job.c:389
#, c-format
msgid "*** [%s] Error 0x%x"
msgstr "*** [%s] Virhe 0x%x"

#: job.c:393
#, c-format
msgid "[%s] Error %d (ignored)"
msgstr "[%s] Virhe %d (ei huomioida)"

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

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

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

#: job.c:518
#, c-format
msgid "Live child 0x%08lx (%s) PID %ld %s\n"
msgstr ""

#: job.c:520 job.c:701 job.c:804 job.c:1457
msgid " (remote)"
msgstr " (etä)"

#: job.c:698
#, c-format
msgid "Reaping losing child 0x%08lx PID %ld %s\n"
msgstr ""

#: job.c:699
#, c-format
msgid "Reaping winning child 0x%08lx PID %ld %s\n"
msgstr ""

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

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

#: job.c:862
msgid "write jobserver"
msgstr "työpalvelimen kirjoitus"

#: job.c:864
#, c-format
msgid "Released token for child 0x%08lx (%s).\n"
msgstr ""

#: job.c:1383
#, 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:1387 job.c:2020
#, c-format
msgid ""
"\n"
"Counted %d args in failed launch\n"
msgstr ""
"\n"
"Laskettiin %d argumenttia epäonnistuneessa käynnistyksessä\n"

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

#: job.c:1709
#, c-format
msgid "Obtained token for child 0x%08lx (%s).\n"
msgstr ""

#: job.c:1718
msgid "read jobs pipe"
msgstr "työputken luku"

#: job.c:1832
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:1834
msgid "cannot enforce load limit: "
msgstr "kuormarajaa ei voi ottaa käyttöön: "

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

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

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

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

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

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

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

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

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

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

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

#: job.c:2902
#, 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"

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

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

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

#: main.c:296
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:299
msgid "  -d                          Print lots of debugging information.\n"
msgstr "  -d                          Näytä runsaasti vianetsintätietoja.\n"

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

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

#: main.c:306
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:309
msgid "  -h, --help                  Print this message and exit.\n"
msgstr "  -h, --help                  Näytä tämä viesti ja poistu.\n"

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

#: main.c:313
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:316
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:318
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:320
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:323
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:325
msgid ""
"  -n, --just-print, --dry-run, --recon\n"
"                              Don't actually run any commands; just print "
"them.\n"
msgstr ""
"  -n, --just-print, --dry-run, --recon\n"
"                              Näytä ajettavat komennot, älä käynnistä "
"niitä.\n"

#: main.c:328
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:331
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:333
msgid ""
"  -q, --question              Run no commands; exit status says if up to "
"date.\n"
msgstr ""
"  -q, --question              Älä aja komentoja; paluuarvo kertoo ajan-\n"
"                                tasaisuuden.\n"

#: main.c:335
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:337
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:339
msgid "  -s, --silent, --quiet       Don't echo commands.\n"
msgstr "  -s, --silent, --quiet       Älä kaiuta komentoja.\n"

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

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

#: main.c:346
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:348
msgid "  -w, --print-directory       Print the current directory.\n"
msgstr "  -w, --print-directory       Näytä nykyinen hakemisto.\n"

#: main.c:350
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:352
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:355
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:549
msgid "empty string invalid as file name"
msgstr "tyhjä merkkijono ei kelpaa tiedostonimeksi"

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

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

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

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

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

#: main.c:762 main.c:773
#, c-format
msgid "find_and_set_shell setting default_shell = %s\n"
msgstr "find_and_set_shell asettaa default_shell = %s\n"

#: main.c:814
#, 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:1236
#, c-format
msgid "%s is suspending for 30 seconds..."
msgstr "%s keskeytyy 30 sekunniksi..."

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

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

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

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

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

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

#: main.c:1656
msgid "internal error: multiple --jobserver-fds options"
msgstr "sisäinen virhe: useitan --jobserver-fds -valitsimia"

#: main.c:1664
#, c-format
msgid "internal error: invalid --jobserver-fds string `%s'"
msgstr "sisäinen virhe: virheellinen --jobserver-fds -merkkijono \"%s\""

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

#: main.c:1684
msgid "dup jobserver"
msgstr "kaksinkertainen työpalvelin"

#: main.c:1687
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:1710
msgid "creating jobs pipe"
msgstr "luodaan työputki"

#: main.c:1725
msgid "init jobserver pipe"
msgstr "alustetaan työpalvelimen putki"

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

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

#: main.c:1845
#, 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:1924
#, c-format
msgid "Failed to remake makefile `%s'."
msgstr "Makefile-tiedoston \"%s\" uudelleentuottaminen epäonnistui."

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

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

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

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

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

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

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

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

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

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

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

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

#: main.c:2518
#, c-format
msgid "the `-%c' option requires a positive integral argument"
msgstr "valitsin \"-%c\" vaatii positiivisen kokonaislukuargumentin"

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

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

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

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

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

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

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

#: main.c:3106
#, c-format
msgid "%s: Entering directory `%s'\n"
msgstr "%s: Siirrytään hakemistoon \"%s\"\n"

#: main.c:3109
#, c-format
msgid "%s: Leaving directory `%s'\n"
msgstr "%s: Poistutaan hakemistosta \"%s\"\n"

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

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

#: main.c:3121
#, c-format
msgid "%s[%u]: Entering directory `%s'\n"
msgstr "%s[%u]: Siirrytään hakemistoon \"%s\"\n"

#: main.c:3124
#, c-format
msgid "%s[%u]: Leaving directory `%s'\n"
msgstr "%s[%u]: Poistutaan hakemistosta \"%s\"\n"

#: misc.c:285
msgid ".  Stop.\n"
msgstr ". Seis.\n"

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

#: misc.c:316
#, c-format
msgid "%s%s: %s"
msgstr "%s%s: %s"

#: misc.c:324
#, c-format
msgid "%s: %s"
msgstr "%s: %s"

#: misc.c:344 misc.c:359 misc.c:376 read.c:3127
msgid "virtual memory exhausted"
msgstr "virtuaalimuisti lopussa"

#: misc.c:646
#, 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:667
msgid "Initialized access"
msgstr "Alkuperäiset käyttöoikeudet"

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

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

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

#: misc.c:892
#, c-format
msgid "write error: %s"
msgstr "kirjoitusvirhe: %s"

#: misc.c:894
msgid "write error"
msgstr "kirjoitusvirhe"

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

#: read.c:315
#, c-format
msgid "Reading makefile `%s'"
msgstr "Luetaan makefile-tiedosto \"%s\""

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

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

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

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

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

#: read.c:633
msgid "extraneous `endef'"
msgstr "ylimääräinen \"endef\""

#: read.c:645 read.c:673 variable.c:1316
msgid "empty variable name"
msgstr "tyhjä muuttujan nimi"

#: read.c:662
msgid "empty `override' directive"
msgstr "tyhjä \"override\"-toimintaohje"

#: read.c:687
msgid "invalid `override' directive"
msgstr "virheellinen \"override\"-toimintaohje"

#: read.c:854
msgid "commands commence before first target"
msgstr "komennot alkavat ennen ensimmäistä kohdetta"

#: read.c:905
msgid "missing rule before commands"
msgstr "puuttuva sääntö ennen komentoja"

#: read.c:992
#, c-format
msgid "missing separator%s"
msgstr "puuttuva erotin%s"

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

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

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

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

#: read.c:1286
msgid "missing `endif'"
msgstr "puuttuva \"endif\""

#: read.c:1377
msgid "Extraneous text after `endef' directive"
msgstr "Ylimääräistä tekstiä \"endef\"-toimintaohjeen jälkeen"

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

#: read.c:1454
#, c-format
msgid "Extraneous text after `%s' directive"
msgstr "Ylimääräistä tekstiä \"%s\"-toimintaohjeen jälkeen"

#: read.c:1463 read.c:1477
#, c-format
msgid "extraneous `%s'"
msgstr "ylimääräinen \"%s\""

#: read.c:1482
msgid "only one `else' per conditional"
msgstr "vain yksi \"else\" ehtolausetta kohden"

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

# skripti?
#: read.c:1886
msgid "prerequisites cannot be defined in command scripts"
msgstr "ennakkoehtoja ei voi määritellä komentoskripteissä"

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

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

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

#: read.c:1973 read.c:2074
#, c-format
msgid "target file `%s' has both : and :: entries"
msgstr "kohdetiedostolla \"%s\" on sekä :- että ::-merkinnät"

#: read.c:1979
#, 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:1988
#, c-format
msgid "warning: overriding commands for target `%s'"
msgstr "varoitus: syrjäytetään kohteen \"%s\" komennot"

#: read.c:1991
#, c-format
msgid "warning: ignoring old commands for target `%s'"
msgstr "varoitus: ei huomioida vanhoja komentoja kohteelle \"%s\""

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

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

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

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

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

#: remake.c:351
#, 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:378
#, c-format
msgid "Considering target file `%s'.\n"
msgstr "Tarkastellaan tiedostoa \"%s\".\n"

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

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

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

#: remake.c:413
#, c-format
msgid "Finished updating file `%s'.\n"
msgstr "Tiedosto \"%s\" päivitetty.\n"

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

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

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

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

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

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

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

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

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

#: remake.c:677
#, c-format
msgid "Prerequisite `%s' is order-only for target `%s'.\n"
msgstr ""

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

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

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

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

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

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

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

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

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

#: remake.c:765
#, c-format
msgid "Commands of `%s' are being run.\n"
msgstr ""

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#: signame.c:151 signame.c:154
msgid "Child exited"
msgstr "Lapsi lopetti"

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

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

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

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

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

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

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

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

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

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

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

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

#: signame.c:200 signame.c:209
msgid "I/O possible"
msgstr "I/O mahdollista"

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

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

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

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

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

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

#: strcache.c:210
#, c-format
msgid ""
"\n"
"%s # of strings in strcache: %d\n"
msgstr ""

#: strcache.c:211
#, c-format
msgid "%s # of strcache buffers: %d\n"
msgstr ""

#: strcache.c:212
#, c-format
msgid "%s strcache size: total = %d / max = %d / min = %d / avg = %d\n"
msgstr ""

#: strcache.c:214
#, c-format
msgid "%s strcache free: total = %d / max = %d / min = %d / avg = %d\n"
msgstr ""

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

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

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

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

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

#: variable.c:1384
msgid "`override' directive"
msgstr "\"override\"-toimintaohje"

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

#: variable.c:1396
#, c-format
msgid " (from `%s', line %lu)"
msgstr " (tiedostosta \"%s\", rivi %lu)"

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

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

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

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

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

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

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

#: vmsjobs.c:71
#, c-format
msgid "Warning: Empty redirection\n"
msgstr "Varoitus: Tyhjä uudelleenohjaus\n"

#: vmsjobs.c:175
#, c-format
msgid "internal error: `%s' command_state"
msgstr "sisäinen virhe: \"%s\" command_state"

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

#: vmsjobs.c:284
#, 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:407
#, c-format
msgid "BUILTIN [%s][%s]\n"
msgstr "SISÄÄNRAKENNETTU [%s][%s]\n"

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

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

#: vmsjobs.c:457
#, c-format
msgid "Unknown builtin command '%s'\n"
msgstr "Tuntematon sisäänrakennettu komento \"%s\"\n"

#: vmsjobs.c:479
#, c-format
msgid "Error, empty command\n"
msgstr "Virhe, tyhjä komento\n"

#: vmsjobs.c:491
#, c-format
msgid "Redirected input from %s\n"
msgstr "Syöte uudelleenohjattu kohteesta %s\n"

#: vmsjobs.c:498
#, c-format
msgid "Redirected error to %s\n"
msgstr "Virhetuloste uudelleenohjattu kohteeseen %s\n"

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

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

#: vmsjobs.c:668
#, c-format
msgid "Error spawning, %d\n"
msgstr "Virhe käynnistyksessä, %d\n"

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

#: vpath.c:588
msgid "# No `vpath' search paths."
msgstr "# Ei \"vpath\"-hakupolkuja."

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

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

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

#~ 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 "Syntax error, still inside '\"'\n"
#~ msgstr "Syntaksivirhe, edelleen \":n sisällä\n"
