# Turkish translations for GNU Make messages.
# Copyright (C) 2002 Free Software Foundation, Inc.
# Nilgün Belma Bugüner <nilgun@superonline.com>, 2001-2002.
#
msgid ""
msgstr ""
"Project-Id-Version: make 3.80\n"
"Report-Msgid-Bugs-To: bug-make@gnu.org\n"
"POT-Creation-Date: 2006-04-01 01:40-0500\n"
"PO-Revision-Date: 2002-10-05 18:13+0300\n"
"Last-Translator: Nilgün Belma Bugüner <nilgun@superonline.com>\n"
"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: KBabel 0.9.6\n"

#: ar.c:53
#, c-format
msgid "attempt to use unsupported feature: `%s'"
msgstr "desteklenmeyen özelliği kullanmaya çalışıyor: `%s'"

#: ar.c:137
msgid "touch archive member is not available on VMS"
msgstr "VMS'de işe yaramayan arşiv üyesine dokunup geçiyor"

#: ar.c:168
#, c-format
msgid "touch: Archive `%s' does not exist"
msgstr "Dokunulup geçildi: Arşiv `%s' yok"

#: ar.c:171
#, c-format
msgid "touch: `%s' is not a valid archive"
msgstr "Dokunulup geçildi: `%s' geçerli bir arşiv değil"

#: ar.c:178
#, c-format
msgid "touch: Member `%s' does not exist in `%s'"
msgstr "Dokunulup geçildi: Üye `%s', `%s' içinde yok"

#: ar.c:185
#, c-format
msgid "touch: Bad return code from ar_member_touch on `%s'"
msgstr "Dokunulup geçildi: `%s' deki ar_member_touch'dan dönen kod hatalı"

#: arscan.c:69
#, c-format
msgid "lbr$set_module failed to extract module info, status = %d"
msgstr "lbr$set_module modül bilgisini çıkarırken başarısız oldu, durum = %d"

#: arscan.c:154
#, c-format
msgid "lbr$ini_control failed with status = %d"
msgstr "lbr$ini_control durum =%d ile başarısız oldu"

#: arscan.c:165
#, c-format
msgid "unable to open library `%s' to lookup member `%s'"
msgstr "`%s' kaynakçası `%s' üyesine bakmak için açılamadı"

#: arscan.c:825
#, c-format
msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n"
msgstr "Üye `%s'%s: %ld bayt  %ld 'de (%ld).\n"

#: arscan.c:826
msgid " (name might be truncated)"
msgstr "(isim kırpılmış olmalı)"

#: arscan.c:828
#, c-format
msgid "  Date %s"
msgstr "  Tarih %s"

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

#: commands.c:422
msgid "*** Break.\n"
msgstr "*** Bırakıldı.\n"

#: commands.c:545
#, c-format
msgid "*** [%s] Archive member `%s' may be bogus; not deleted"
msgstr "*** [%s] Arşiv üyesi `%s' sahte olabilir; silinmedi"

#: commands.c:548
#, c-format
msgid "*** Archive member `%s' may be bogus; not deleted"
msgstr "*** Arşiv üyesi `%s' sahte olabilir; silinmedi"

#: commands.c:561
#, c-format
msgid "*** [%s] Deleting file `%s'"
msgstr "*** [%s] `%s' dosyası siliniyor"

#: commands.c:563
#, c-format
msgid "*** Deleting file `%s'"
msgstr "*** `%s' dosyası siliniyor"

#: commands.c:599
msgid "#  commands to execute"
msgstr "#  çalıştırma komutları"

#: commands.c:602
msgid " (built-in):"
msgstr " (paket içinde):"

#: commands.c:604
#, c-format
msgid " (from `%s', line %lu):\n"
msgstr " (`%s'den, satır %lu):\n"

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

#: dir.c:995
#, c-format
msgid "# %s: could not be stat'd.\n"
msgstr "# %s: durumlanamadı.\n"

#: dir.c:999
#, c-format
msgid "# %s (key %s, mtime %d): could not be opened.\n"
msgstr "# %s (anahtar (key) %s, değişiklik tarihi (mtime) %d): açılamadı.\n"

#: dir.c:1003
#, c-format
msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"
msgstr "# %s (aygıt %d, i-düğüm [%d,%d,%d]): açılamadı.\n"

#: dir.c:1008
#, c-format
msgid "# %s (device %ld, inode %ld): could not be opened.\n"
msgstr "# %s (aygıt %ld, i-düğüm %ld): açılamadı.\n"

#: dir.c:1035
#, c-format
msgid "# %s (key %s, mtime %d): "
msgstr "# %s (anahtar (key) %s, değişiklik tarihi (mtime) %d):"

#: dir.c:1039
#, c-format
msgid "# %s (device %d, inode [%d,%d,%d]): "
msgstr "# %s (aygıt %d, i-düğüm [%d,%d,%d]):"

#: dir.c:1044
#, c-format
msgid "# %s (device %ld, inode %ld): "
msgstr "# %s (aygıt %ld, i-düğüm %ld):"

#: dir.c:1050 dir.c:1071
msgid "No"
msgstr "Hayır"

#: dir.c:1053 dir.c:1074
msgid " files, "
msgstr " dosyaları,"

#: dir.c:1055 dir.c:1076
msgid "no"
msgstr "hayır"

#: dir.c:1058
msgid " impossibilities"
msgstr "olanaksızlıklar"

#: dir.c:1062
msgid " so far."
msgstr " çok uzak."

#: dir.c:1079
#, c-format
msgid " impossibilities in %lu directories.\n"
msgstr " %lu dizinde olanaksızlıklar.\n"

#: expand.c:128
#, c-format
msgid "Recursive variable `%s' references itself (eventually)"
msgstr "Çevrimsel değişken `%s' tekrar kendine bağıntılı (sonuçta)"

#: expand.c:266
msgid "unterminated variable reference"
msgstr "sonlandırılmamış değişken bağıntısı"

#: file.c:270
#, c-format
msgid "Commands were specified for file `%s' at %s:%lu,"
msgstr "`%s' dosyası için komutlar %s:%lu de belirtildi,"

#: file.c:275
#, c-format
msgid "Commands for file `%s' were found by implicit rule search,"
msgstr "`%s' dosyası için komutlar örtük kural aramasında bulundu,"

#: file.c:278
#, c-format
msgid "but `%s' is now considered the same file as `%s'."
msgstr "fakat `%s' şimdi `%s' dosyası ile aynı dosya olarak düşünülmeli."

#: file.c:281
#, c-format
msgid "Commands for `%s' will be ignored in favor of those for `%s'."
msgstr "`%s' dosyası için komutlar `%s' lehine yoksayılmış olacak."

#: file.c:301
#, c-format
msgid "can't rename single-colon `%s' to double-colon `%s'"
msgstr "tek-sütun `%s', çift-sütun `%s' olarak yeniden adlandırılamaz"

#: file.c:306
#, c-format
msgid "can't rename double-colon `%s' to single-colon `%s'"
msgstr "çift-sütun `%s', tek-sütun `%s' olarak yeniden adlandırılamaz"

#: file.c:381
#, c-format
msgid "*** Deleting intermediate file `%s'"
msgstr "*** Aracı dosya `%s' siliniyor"

#: file.c:385
msgid "Removing intermediate files...\n"
msgstr "Aracı dosyalar siliniyor...\n"

#: file.c:781
#, c-format
msgid "%s: Timestamp out of range; substituting %s"
msgstr "%s: Tarih damgası kapsamdışı; yerine %s kullanılıyor"

#: file.c:782
msgid "Current time"
msgstr "Şu an"

#: file.c:881
msgid "# Not a target:"
msgstr "# Bir hedef değil:"

#: file.c:903
msgid "#  Precious file (prerequisite of .PRECIOUS)."
msgstr "#  Kıymetli dosya (.PRECIOUS  önceden gerekliliği)."

#: file.c:905
msgid "#  Phony target (prerequisite of .PHONY)."
msgstr "#  Sahte hedef (.PHONY önceden gerekliliği)."

#: file.c:907
msgid "#  Command-line target."
msgstr "#  Komut-satırı hedefi."

#: file.c:909
#, fuzzy
msgid "#  A default, MAKEFILES, or -include/sinclude makefile."
msgstr ""
"#  Bir öntanımlı ya da MAKEFILES çevre değişkeni ile atanmış bir make dosyası"

#: file.c:911
msgid "#  Implicit rule search has been done."
msgstr "#  Örtük kural araştırması yapılmıştı."

#: file.c:912
msgid "#  Implicit rule search has not been done."
msgstr "#  Örtük kural araştırması yapılmamıştı."

#: file.c:914
#, c-format
msgid "#  Implicit/static pattern stem: `%s'\n"
msgstr "#  Örtük/değişmeyen kalıp kökü: `%s'\n"

#: file.c:916
msgid "#  File is an intermediate prerequisite."
msgstr ""
"#  Orta seviyede önceden gerekli bir dosya (öncelikle gerekli dosyalara "
"aracılık eden dosya)"

#: file.c:919
msgid "#  Also makes:"
msgstr "#  Oluştursa da:"

#: file.c:925
msgid "#  Modification time never checked."
msgstr "#  Değişiklik zamanı hiç kontrol edilmedi."

#: file.c:927
msgid "#  File does not exist."
msgstr "#  Dosya yok."

#: file.c:929
msgid "#  File is very old."
msgstr "#  Dosya çok eski."

#: file.c:934
#, c-format
msgid "#  Last modified %s\n"
msgstr "#  Son değişiklik tarihi %s\n"

#: file.c:937
msgid "#  File has been updated."
msgstr "#  Dosya güncelleştirilmişti."

#: file.c:937
msgid "#  File has not been updated."
msgstr "#  Dosya güncelleştirilmemişti."

#: file.c:941
msgid "#  Commands currently running (THIS IS A BUG)."
msgstr "#  Komutlar şu an işlemlerini sürdürüyor (BU BİR YAZILIM HATASI)."

#: file.c:944
msgid "#  Dependencies commands running (THIS IS A BUG)."
msgstr ""
"#  Bağımlılıkların komutları işlemlerini sürdürüyor (BU BİR YAZILIM HATASI)."

#: file.c:953
msgid "#  Successfully updated."
msgstr "#   Tamamen güncellendi."

#: file.c:957
msgid "#  Needs to be updated (-q is set)."
msgstr "#   Güncellenmiş olması gerekir (-q verildi)."

#: file.c:960
msgid "#  Failed to be updated."
msgstr "#  Güncellenmiş olamadı."

#: file.c:963
msgid "#  Invalid value in `update_status' member!"
msgstr "#  `update_status' üyesinde geçersiz değer!"

#: file.c:970
msgid "#  Invalid value in `command_state' member!"
msgstr "#  `command_state' üyesinde geçersiz değer!"

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

#: file.c:993
msgid ""
"\n"
"# files hash-table stats:\n"
"# "
msgstr ""
"\n"
"# dosyaların hash tablosu durumları:\n"
"# "

#: function.c:759
msgid "non-numeric first argument to `word' function"
msgstr "`word' işlevinde sayısal olmayan ilk argüman"

#: function.c:764
msgid "first argument to `word' function must be greater than 0"
msgstr "`word' işlevinin ilk argümanı sıfırdan büyük olmalı"

#: function.c:785
msgid "non-numeric first argument to `wordlist' function"
msgstr "`wordlist' işlevinde sayısal olmayan ilk argüman"

#: function.c:787
msgid "non-numeric second argument to `wordlist' function"
msgstr "`wordlist' işlevinde sayısal olmayan ikinci argüman"

#: function.c:1453
#, fuzzy, c-format
msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n"
msgstr "create_child_process: DuplicateHandle(In) başarısız (e=%d)\n"

#: function.c:1464
#, fuzzy, c-format
msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n"
msgstr "create_child_process: DuplicateHandle(Err) başarısız (e=%d)\n"

#: function.c:1469
#, fuzzy, c-format
msgid "CreatePipe() failed (e=%ld)\n"
msgstr "CreatePipe() başarısız (e=%d)\n"

#: function.c:1474
msgid "windows32_openpipe (): process_init_fd() failed\n"
msgstr "windows32_openpipe (): process_init_fd() başarısız\n"

#: function.c:1725
#, c-format
msgid "Cleaning up temporary batch file %s\n"
msgstr "Geçici komut-listesi (batch) dosyası %s temizleniyor\n"

#: function.c:2101
#, fuzzy, c-format
msgid "insufficient number of arguments (%d) to function `%s'"
msgstr "Argüman sayısı (%d) `%s' işlevinde yetersiz"

#: function.c:2113
#, fuzzy, c-format
msgid "unimplemented on this platform: function `%s'"
msgstr "Bu platformda gerçekleştirilmemiş: işlev `%s'"

#: function.c:2163
#, c-format
msgid "unterminated call to function `%s': missing `%c'"
msgstr "`%s' işlemine çağrı sonlandırılmamış: `%c' kayıp"

#: getopt.c:663
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr "%s: `%s' seçeneği belirsiz\n"

#: getopt.c:687
#, c-format
msgid "%s: option `--%s' doesn't allow an argument\n"
msgstr "%s: `--%s' seçeneği argümansız kullanılır\n"

#: getopt.c:692
#, c-format
msgid "%s: option `%c%s' doesn't allow an argument\n"
msgstr "%s: seçenek `%c%s' argümansız kullanılır\n"

#: getopt.c:709 getopt.c:882
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s: `%s' seçeneği bir argümanla kullanılır\n"

#: getopt.c:738
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr "%s: `--%s' seçeneği bilinmiyor\n"

#: getopt.c:742
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr "%s: `%c%s' seçeneği bilinmiyor\n"

#: getopt.c:768
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: kuraldışı seçenek -- %c\n"

#: getopt.c:771
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: geçersiz seçenek -- %c\n"

#: getopt.c:801 getopt.c:931
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: seçenek bir argümanla kullanılır -- %c\n"

#: getopt.c:848
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr "%s: `-W %s' seçeneği belirsiz\n"

#: getopt.c:866
#, c-format
msgid "%s: option `-W %s' doesn't allow an argument\n"
msgstr "%s: `-W %s' seçeneği argümansız kullanılır\n"

#: hash.c:51
#, c-format
msgid "can't allocate %ld bytes for hash table: memory exhausted"
msgstr "hash tablosu için %ld bayt ayrılamıyor: bellek tükendi"

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

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

#: hash.c:285
#, c-format
msgid "Collisions=%ld/%ld=%.0f%%"
msgstr "Çakışmalar=%ld/%ld=%.0f%%"

#: implicit.c:41
#, c-format
msgid "Looking for an implicit rule for `%s'.\n"
msgstr "`%s' için bir örtük kural arıyor.\n"

#: implicit.c:57
#, c-format
msgid "Looking for archive-member implicit rule for `%s'.\n"
msgstr "`%s' için arşiv-üyesi örtük kural arıyor.\n"

#: implicit.c:319
msgid "Avoiding implicit rule recursion.\n"
msgstr "Örtük kural çevrimi görmezden geliniyor.\n"

#: implicit.c:476
#, c-format
msgid "Trying pattern rule with stem `%.*s'.\n"
msgstr "`%.*s' köküyle kalıp kuralı deneniyor.\n"

#: implicit.c:667
#, c-format
msgid "Rejecting impossible implicit prerequisite `%s'.\n"
msgstr "Örtük önceden gereklilik `%s' olanaksız olduğundan reddediliyor.\n"

#: implicit.c:668
#, c-format
msgid "Rejecting impossible rule prerequisite `%s'.\n"
msgstr "Kural önceden gerekliliği `%s' olanaksız olduğundan reddediliyor.\n"

#: implicit.c:678
#, c-format
msgid "Trying implicit prerequisite `%s'.\n"
msgstr "Örtük önceden gereklilik `%s' deneniyor.\n"

#: implicit.c:679
#, c-format
msgid "Trying rule prerequisite `%s'.\n"
msgstr "Kural önceden gerekliliği `%s' deneniyor.\n"

#: implicit.c:710
#, c-format
msgid "Found prerequisite `%s' as VPATH `%s'\n"
msgstr "Önceden gereklilik `%s' VPATH `%s' olarak bulundu.\n"

#: implicit.c:730
#, c-format
msgid "Looking for a rule with intermediate file `%s'.\n"
msgstr "Aracı dosya `%s' ile bir kural arıyor.\n"

#: job.c:321
#, fuzzy
msgid "Cannot create a temporary file\n"
msgstr "fwrite (geçici dosya)"

#: job.c:388
#, c-format
msgid "*** [%s] Error 0x%x (ignored)"
msgstr "*** [%s] Hata 0x%x (yoksayıldı)"

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

#: job.c:393
#, c-format
msgid "[%s] Error %d (ignored)"
msgstr "[%s] Hata %d (yoksayıldı)"

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

#: job.c:399
msgid " (core dumped)"
msgstr " (bellek kopyası - core dosyası - diske yazıldı)"

#: job.c:488
msgid "*** Waiting for unfinished jobs...."
msgstr "*** Bitmemiş işler için bekliyor...."

#: job.c:518
#, c-format
msgid "Live child 0x%08lx (%s) PID %ld %s\n"
msgstr "Ast dosya işini sürdürüyor: 0x%08lx (%s) PID %ld %s\n"

#: job.c:520 job.c:701 job.c:804 job.c:1457
msgid " (remote)"
msgstr " (karşıdan)"

#: job.c:698
#, c-format
msgid "Reaping losing child 0x%08lx PID %ld %s\n"
msgstr "Kaybeden ast dosya sağlanıyor: 0x%08lx PID %ld %s\n"

#: job.c:699
#, c-format
msgid "Reaping winning child 0x%08lx PID %ld %s\n"
msgstr "Kazanan ast dosya sağlanıyor: 0x%08lx PID %ld %s\n"

#: job.c:704
#, c-format
msgid "Cleaning up temp batch file %s\n"
msgstr "Geçici komut-listesi dosyası %s temizleniyor\n"

#: job.c:802
#, c-format
msgid "Removing child 0x%08lx PID %ld%s from chain.\n"
msgstr "Ast 0x%08lx PID %ld%s zincirden kaldırılıyor\n"

#: job.c:862
msgid "write jobserver"
msgstr "iş-sunucusu yazıyor"

#: job.c:864
#, c-format
msgid "Released token for child 0x%08lx (%s).\n"
msgstr "Ast 0x%08lx (%s) için simge (token) kullanıma sunuldu.\n"

#: job.c:1383
#, fuzzy, c-format
msgid "process_easy() failed to launch process (e=%ld)\n"
msgstr ""
"Başarısız olan süreç oluşturma işlemine process_easy() sebep oldu (e=%d)\n"

#: job.c:1387 job.c:2020
#, c-format
msgid ""
"\n"
"Counted %d args in failed launch\n"
msgstr ""
"\n"
"Sayılan %d argüman ile başarısız oldu\n"

#: job.c:1455
#, c-format
msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n"
msgstr "Ast 0x%08lx (%s) PID %ld%s zincire konuluyor.\n"

#: job.c:1709
#, c-format
msgid "Obtained token for child 0x%08lx (%s).\n"
msgstr "Ast 0x%08lx (%s) için simge (token) sağlandı.\n"

#: job.c:1718
msgid "read jobs pipe"
msgstr "görev listesi okunuyor"

#: job.c:1832
msgid "cannot enforce load limits on this operating system"
msgstr "işletim sisteminde yük sınırlarına ulaşılamadı "

#: job.c:1834
msgid "cannot enforce load limit: "
msgstr "ulaşılamayan yük sınırı: "

#: job.c:1907
msgid "no more file handles: could not duplicate stdin\n"
msgstr ""

#: job.c:1909
msgid "no more file handles: could not duplicate stdout\n"
msgstr ""

#: job.c:1937
msgid "Could not restore stdin\n"
msgstr ""

#: job.c:1945
msgid "Could not restore stdout\n"
msgstr ""

#: job.c:2016
#, fuzzy, c-format
msgid "process_easy() failed failed to launch process (e=%ld)\n"
msgstr ""
"Başarısız olan süreç oluşturma işlemine process_easy() sebep oldu (e=%d)\n"

#: job.c:2046
#, fuzzy, c-format
msgid "make reaped child pid %ld, still waiting for pid %ld\n"
msgstr "make pid %d ast süreci kaldırdı ama hala pid %d için bekliyor\n"

#: job.c:2085
#, c-format
msgid "%s: Command not found"
msgstr "%s: Komut bulunamadı"

#: job.c:2145
#, c-format
msgid "%s: Shell program not found"
msgstr "%s: Kabuk uygulaması bulunamadı"

#: job.c:2154
msgid "spawnvpe: environment space might be exhausted"
msgstr ""

#: job.c:2363
#, fuzzy, c-format
msgid "$SHELL changed (was `%s', now `%s')\n"
msgstr "$SHELL değişti (`%s' idi, şimdi `%s')"

#: job.c:2789
#, c-format
msgid "Creating temporary batch file %s\n"
msgstr "%s geçici komut-liste dosyasını oluşturuyor\n"

#: job.c:2902
#, c-format
msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n"
msgstr "%s (satır %d) kabuk bağlamı hatalı (!unixy && !batch_mode_shell)\n"

#: main.c:291
msgid "Options:\n"
msgstr "Seçenekler:\n"

#: main.c:292
msgid "  -b, -m                      Ignored for compatibility.\n"
msgstr "  -b, -m                      Uyumluluk için yoksayıldı.\n"

#: main.c:294
msgid "  -B, --always-make           Unconditionally make all targets.\n"
msgstr ""
"  -B, --always-make           Tüm hedefler koşulsuz olarak oluşturulur.\n"

#: main.c:296
msgid ""
"  -C DIRECTORY, --directory=DIRECTORY\n"
"                              Change to DIRECTORY before doing anything.\n"
msgstr "  -C DİZİN, --directory=DIZIN Birşey yapmadan önce DİZİNe geçilir.\n"

#: main.c:299
msgid "  -d                          Print lots of debugging information.\n"
msgstr "  -b, -m                      Bir sürü hata ayıklama bilgisi basar.\n"

#: main.c:301
msgid ""
"  --debug[=FLAGS]             Print various types of debugging information.\n"
msgstr ""
"  --debug[=SEÇENEKLER]        Çeşitli türde hata ayıklama bilgileri basar.\n"

#: main.c:303
msgid ""
"  -e, --environment-overrides\n"
"                              Environment variables override makefiles.\n"
msgstr ""
"  -e, --environment-overrides Ortam değişkenleri makefile'ları değiştirir.\n"

#: main.c:306
msgid ""
"  -f FILE, --file=FILE, --makefile=FILE\n"
"                              Read FILE as a makefile.\n"
msgstr ""
"  -f DOSYA, --file=DOSYA, --makefile=DOSYA\n"
"                              DOSYAyı bir makefile olarak okur.\n"

#: main.c:309
msgid "  -h, --help                  Print this message and exit.\n"
msgstr "  -h, --help                  Bu iletiyi basar ve çıkar.\n"

#: main.c:311
msgid "  -i, --ignore-errors         Ignore errors from commands.\n"
msgstr "  -i, --ignore-errors         Komutların ürettiği hataları yoksayar.\n"

#: main.c:313
msgid ""
"  -I DIRECTORY, --include-dir=DIRECTORY\n"
"                              Search DIRECTORY for included makefiles.\n"
msgstr ""
"  -I DİZİN, --include-dir=DİZİN\n"
"                              Eklenecek makefile'ları DİZİNde arar.\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]          Bir defada N işe izin verir; argumansız iş\n"
"                              sayısı sınırsızdır.\n"

#: main.c:318
msgid ""
"  -k, --keep-going            Keep going when some targets can't be made.\n"
msgstr ""
"  -k, --keep-going            Bazı hedefler yapılmadığında devam eder.\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"
"                              Yük N'den az olmadıkça çoklu işler "
"başlatılmaz.\n"

#: main.c:323
msgid ""
"  -L, --check-symlink-times   Use the latest mtime between symlinks and "
"target.\n"
msgstr ""

#: 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"
"                              Gerçekte komutlar çalıştırılmaz, gösterilir.\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 DOSYA, --old-file=DOSYA, --assume-old=DOSYA\n"
"                              DOSYAnın çok eski olduğu varsayılır ve\n"
"                              yeniden işlem yapılmaz.\n"

#: main.c:331
msgid "  -p, --print-data-base       Print make's internal database.\n"
msgstr "  -p, --print-data-base       make'in içsel veritabanını basar.\n"

#: main.c:333
msgid ""
"  -q, --question              Run no commands; exit status says if up to "
"date.\n"
msgstr ""
"  -q, --question              Komut çalıştırmaz; güncelse çıkışta belirtir\n"

#: main.c:335
msgid "  -r, --no-builtin-rules      Disable the built-in implicit rules.\n"
msgstr ""
"  -r, --no-builtin-rules      Oluşumiçi örtük kuralları etkisizleştirir.\n"

#: main.c:337
msgid "  -R, --no-builtin-variables  Disable the built-in variable settings.\n"
msgstr ""
"  -R, --no-builtin-variables  Oluşumiçi değişken ayarlarını etkisizleştirir\n"

#: main.c:339
msgid "  -s, --silent, --quiet       Don't echo commands.\n"
msgstr "  -s, --silent, --quiet     Komutlar işlenirken gösterilmez.\n"

#: main.c:341
msgid ""
"  -S, --no-keep-going, --stop\n"
"                              Turns off -k.\n"
msgstr ""
"  -S, --no-keep-going, --stop Bazı hedefler yapılmadığında devam etmez.\n"

#: main.c:344
msgid "  -t, --touch                 Touch targets instead of remaking them.\n"
msgstr ""
"  -t, --touch                 Yeniden derlemek yerine hedeflere bakıp "
"geçer.\n"

#: main.c:346
msgid ""
"  -v, --version               Print the version number of make and exit.\n"
msgstr "  -v, --version               make sürüm numarasını basar ve çıkar.\n"

#: main.c:348
msgid "  -w, --print-directory       Print the current directory.\n"
msgstr "  -w, --print-directory       Kullanılan dizini basar.\n"

#: main.c:350
msgid ""
"  --no-print-directory        Turn off -w, even if it was turned on "
"implicitly.\n"
msgstr ""
"  --no-print-directory        Dolaylı olarak açılmış olsa bile -w 'yi "
"kapatır\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 DOSYA, --what-if=DOSYA, --new-file=DOSYA, --assume-new=DOSYA\n"
"                              DOSYA sonsuz yeni varsayılır.\n"

#: main.c:355
msgid ""
"  --warn-undefined-variables  Warn when an undefined variable is "
"referenced.\n"
msgstr ""
"  --warn-undefined-variables  Atanmamış bir değişkene bağıntı yapıldığında\n"
"                              uyarır.\n"

#: main.c:549
msgid "empty string invalid as file name"
msgstr "dosyaismi olarak boş dizge geçersiz"

#: main.c:630
#, c-format
msgid "unknown debug level specification `%s'"
msgstr "Hata ayıklama düzeyi özelliği `%s' bilinmiyor"

#: main.c:670
#, fuzzy, c-format
msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n"
msgstr "%s: Kesinti/Olağandışı durum saptandı (kod = 0x%x, adres = 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"
"program %s tarafından elde edilmemiş olağandışı-durum süzgeci çağrıldı\n"
"OlağandışılıkKodu = %x\n"
"OlağandışılıkBayrakları = %x\n"
"OlağandışılıkAdresi = %x\n"

#: main.c:685
#, fuzzy, c-format
msgid "Access violation: write operation at address %lx\n"
msgstr "Erişim uyumsuzluğu: %x adresine yazma işlemi\n"

#: main.c:686
#, fuzzy, c-format
msgid "Access violation: read operation at address %lx\n"
msgstr "Erişim uyumsuzluğu: %x adresinden okuma işlemi\n"

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

#: main.c:814
#, c-format
msgid "find_and_set_shell path search set default_shell = %s\n"
msgstr ""
"find_and_set_shell yol aramasını default_shell = %s olarak belirliyor\n"

#: main.c:1236
#, c-format
msgid "%s is suspending for 30 seconds..."
msgstr "%s 30 saniyeliğine askıya alınıyor..."

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

#: main.c:1466
msgid "Makefile from standard input specified twice."
msgstr "Makefile standart girdiden iki kez belirtildi."

#: main.c:1505 vmsjobs.c:486
msgid "fopen (temporary file)"
msgstr "fopen (geçici dosya)"

#: main.c:1511
msgid "fwrite (temporary file)"
msgstr "fwrite (geçici dosya)"

#: main.c:1640
msgid "Parallel jobs (-j) are not supported on this platform."
msgstr "Bu platformda paralel işler (-j) desteklenmiyor."

#: main.c:1641
msgid "Resetting to single job (-j1) mode."
msgstr "Tek iş kipi (-j1) için make'i başlatma konumuna alıyor"

#: main.c:1656
msgid "internal error: multiple --jobserver-fds options"
msgstr "içsel hata: çok sayıda --jobserver-fds seçeneği"

#: main.c:1664
#, c-format
msgid "internal error: invalid --jobserver-fds string `%s'"
msgstr "içsel hata: --jobserver-fds dizgesi `%s' geçersiz"

#: main.c:1674
msgid "warning: -jN forced in submake: disabling jobserver mode."
msgstr "uyarı: alt derlemede -jN zorlandı: iş sunucusu kipi kapatılıyor."

#: main.c:1684
msgid "dup jobserver"
msgstr "çift iş sunucusu"

#: main.c:1687
msgid ""
"warning: jobserver unavailable: using -j1.  Add `+' to parent make rule."
msgstr ""
"uyarı: iş sunucusu kullanımdışı: -j1 kullanılıyor. Üst make kuralına `+' "
"ekle."

#: main.c:1710
msgid "creating jobs pipe"
msgstr "işleri yaratıyor"

#: main.c:1725
msgid "init jobserver pipe"
msgstr "işleri hazırlıyor"

#: main.c:1744
msgid "Symbolic links not supported: disabling -L."
msgstr ""

#: main.c:1820
msgid "Updating makefiles....\n"
msgstr "makefile'ları güncelliyor...\n"

#: main.c:1845
#, c-format
msgid "Makefile `%s' might loop; not remaking it.\n"
msgstr "`%s' make dosyası çevrime girdi; yeniden derlenemez.\n"

#: main.c:1924
#, c-format
msgid "Failed to remake makefile `%s'."
msgstr "`%s' make dosyası yeniden derlenemiyor."

#: main.c:1941
#, c-format
msgid "Included makefile `%s' was not found."
msgstr "İçerilen make dosyası `%s' bulunamadı."

#: main.c:1946
#, c-format
msgid "Makefile `%s' was not found"
msgstr "`%s' make dosyası bulunamadı"

#: main.c:2016
msgid "Couldn't change back to original directory."
msgstr "Geriye, özgün dizine geçilemiyor."

#: main.c:2024
#, fuzzy, c-format
msgid "Re-executing[%u]:"
msgstr "Yeniden çalıştırılıyor:"

#: main.c:2140
msgid "unlink (temporary file): "
msgstr "unlink (geçici dosya): "

#: main.c:2169
msgid ".DEFAULT_GOAL contains more than one target"
msgstr ""

#: main.c:2189
msgid "No targets specified and no makefile found"
msgstr "Hedefler belirtilmediğinden make dosyası yok"

#: main.c:2191
msgid "No targets"
msgstr "Hedef yok"

#: main.c:2196
msgid "Updating goal targets....\n"
msgstr "Amaçlanan hedefler güncelleniyor...\n"

#: main.c:2222
msgid "warning:  Clock skew detected.  Your build may be incomplete."
msgstr "uyarı:  Clock skew saptandı. Derleme tamamlanamayabilir."

#: main.c:2383
#, c-format
msgid "Usage: %s [options] [target] ...\n"
msgstr "Kullanım: %s [seçenekler] [hedef] ...\n"

#: main.c:2389
#, c-format
msgid ""
"\n"
"This program built for %s\n"
msgstr ""
"\n"
"Bu program %s için kurgulanmış\n"

#: main.c:2391
#, c-format
msgid ""
"\n"
"This program built for %s (%s)\n"
msgstr ""
"\n"
"Bu program %s için kurgulanmış (%s)\n"

#: main.c:2394
#, c-format
msgid "Report bugs to <bug-make@gnu.org>\n"
msgstr ""
"Yazılım hatalarını <bug-make@gnu.org> adresine,\n"
"çeviri hatalarını <gnu-tr-u12a@lists.sourceforge.net> adresine bildiriniz.\n"

#: main.c:2466
#, fuzzy, c-format
msgid "the `-%c' option requires a non-empty string argument"
msgstr "`-%c' seçeneği bir pozitif tümleyici bağımsız değişkenle kullanılır"

#: main.c:2518
#, c-format
msgid "the `-%c' option requires a positive integral argument"
msgstr "`-%c' seçeneği bir pozitif tümleyici bağımsız değişkenle kullanılır"

#: 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 ""
"%sBu bir serbest yazılımdır; kopyalama koşulları için kaynak koduna "
"bakınız.\n"
"%sHiçbir garantisi yoktur; hatta SATILABİLİRLİĞİ veya ŞAHSİ KULLANIMINIZA\n"
"%sUYGUNLUĞU için bile garanti verilmez.\n"

#: main.c:2948
#, fuzzy, c-format
msgid ""
"\n"
"%sThis program built for %s\n"
msgstr ""
"\n"
"Bu program %s için kurgulanmış\n"

#: main.c:2950
#, fuzzy, c-format
msgid ""
"\n"
"%sThis program built for %s (%s)\n"
msgstr ""
"\n"
"Bu program %s için kurgulanmış (%s)\n"

#: main.c:2968
#, c-format
msgid ""
"\n"
"# Make data base, printed on %s"
msgstr ""
"\n"
"# Make veri tabanı, %s üzerine basıldı"

#: main.c:2978
#, c-format
msgid ""
"\n"
"# Finished Make data base on %s\n"
msgstr ""
"\n"
"# %s üzerindeki Make veri tabanı tamamlandı\n"

#: main.c:3101
#, fuzzy, c-format
msgid "%s: Entering an unknown directory\n"
msgstr "%s: bilinmeyen bir dizine giriliyor"

#: main.c:3103
#, fuzzy, c-format
msgid "%s: Leaving an unknown directory\n"
msgstr "%s: bilinmeyen dizinden çıkılıyor"

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

#: main.c:3109
#, c-format
msgid "%s: Leaving directory `%s'\n"
msgstr "%s: `%s' dizininden çıkılıyor\n"

#: main.c:3114
#, fuzzy, c-format
msgid "%s[%u]: Entering an unknown directory\n"
msgstr "%s[%u]: Bilinmeyen bir dizine giriliyor"

#: main.c:3117
#, fuzzy, c-format
msgid "%s[%u]: Leaving an unknown directory\n"
msgstr "%s[%u]: Bilinmeyen dizinden çıkılıyor"

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

#: main.c:3124
#, c-format
msgid "%s[%u]: Leaving directory `%s'\n"
msgstr "%s[%u]: `%s' dizininden çıkılıyor\n"

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

#: misc.c:306
#, c-format
msgid "Unknown error %d"
msgstr "Bilinmeyen hata %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 "sanal bellek tükendi"

#: misc.c:646
#, c-format
msgid "%s: user %lu (real %lu), group %lu (real %lu)\n"
msgstr "%s: kullanıcı %lu (gerçekte %lu), grup %lu (gerçekte %lu)\n"

#: misc.c:667
msgid "Initialized access"
msgstr "İlklendirilmiş erişim"

#: misc.c:746
msgid "User access"
msgstr "Kullanıcı erişimi"

#: misc.c:794
msgid "Make access"
msgstr "Make erişimi"

#: misc.c:828
msgid "Child access"
msgstr "Asta erişim"

#: misc.c:892
#, fuzzy, c-format
msgid "write error: %s"
msgstr "%s e yönlendirilmiş hata\n"

#: misc.c:894
#, fuzzy
msgid "write error"
msgstr "iş-sunucusu yazıyor"

#: read.c:160
msgid "Reading makefiles...\n"
msgstr "Makefile'lar okunuyor...\n"

#: read.c:315
#, c-format
msgid "Reading makefile `%s'"
msgstr "`%s' make dosyası okunuyor"

#: read.c:317
#, c-format
msgid " (no default goal)"
msgstr " (öntanımlı amaç yok)"

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

#: read.c:321
#, c-format
msgid " (don't care)"
msgstr " (umurunda değil)"

#: read.c:323
#, c-format
msgid " (no ~ expansion)"
msgstr "( ~ uzantısı yok)"

#: read.c:623
msgid "invalid syntax in conditional"
msgstr "şartlı ifade de yazılış hatası"

#: read.c:633
msgid "extraneous `endef'"
msgstr "yersiz `endef'"

#: read.c:645 read.c:673 variable.c:1316
msgid "empty variable name"
msgstr "boş değişken ismi"

#: read.c:662
msgid "empty `override' directive"
msgstr "boş `override' yönergesi"

#: read.c:687
msgid "invalid `override' directive"
msgstr "`override' yönergesi geçersiz"

#: read.c:854
msgid "commands commence before first target"
msgstr "komutlar ilk hedeften önce başlıyor"

#: read.c:905
msgid "missing rule before commands"
msgstr "komutlardan önceki kural kayıp"

#: read.c:992
#, c-format
msgid "missing separator%s"
msgstr "kayıp ayraç%s"

#: read.c:994
msgid " (did you mean TAB instead of 8 spaces?)"
msgstr "(8 boşluğu TAB'mı zannettiniz?)"

#: read.c:1152
msgid "missing target pattern"
msgstr "hedef kalıp kayıp"

#: read.c:1154
msgid "multiple target patterns"
msgstr "çok sayıda hedef kalıp"

#: read.c:1158
#, c-format
msgid "target pattern contains no `%%'"
msgstr "hedef kalıp `%%' içermiyor"

#: read.c:1286
msgid "missing `endif'"
msgstr "`endif' kayıp"

#: read.c:1377
msgid "Extraneous text after `endef' directive"
msgstr "`endef' yönergesinden sonraki metin yersiz"

#: read.c:1411
msgid "missing `endef', unterminated `define'"
msgstr "`endef' kayıp, `define' sonlandırılmamış"

#: read.c:1454
#, c-format
msgid "Extraneous text after `%s' directive"
msgstr "`%s' yönergesinden sonraki metin yersiz"

#: read.c:1463 read.c:1477
#, c-format
msgid "extraneous `%s'"
msgstr "`%s' yersiz"

#: read.c:1482
msgid "only one `else' per conditional"
msgstr "her şartlı ifade de sadece bir `else'"

#: read.c:1824
#, fuzzy
msgid "Malformed target-specific variable definition"
msgstr "per-target değişken ataması bozuk"

#: read.c:1886
msgid "prerequisites cannot be defined in command scripts"
msgstr ""

#: read.c:1921
msgid "mixed implicit and static pattern rules"
msgstr "örtük ve durağan kalıp kuralları karışmış"

#: read.c:1924
msgid "mixed implicit and normal rules"
msgstr "örtük ve normal kurallar karışmış"

#: read.c:1954
#, c-format
msgid "target `%s' doesn't match the target pattern"
msgstr "hedef `%s' hedef kalıpla eşleşmiyor"

#: read.c:1973 read.c:2074
#, c-format
msgid "target file `%s' has both : and :: entries"
msgstr "hedef dosya `%s'hem : hem de :: girdilerine sahip"

#: read.c:1979
#, c-format
msgid "target `%s' given more than once in the same rule."
msgstr "hedef `%s' aynı kuralda birden fazla belirtilmiş."

#: read.c:1988
#, c-format
msgid "warning: overriding commands for target `%s'"
msgstr "uyarı: hedef `%s' için komutlar geçersiz kılınıyor"

#: read.c:1991
#, c-format
msgid "warning: ignoring old commands for target `%s'"
msgstr "uyarı: hedef `%s' için eski komutlar yoksayılıyor"

#: read.c:2575
msgid "warning: NUL character seen; rest of line ignored"
msgstr "uyarı: NUL karakteri görüldü; satırın geri kalanı yoksayılıyor"

#: remake.c:229
#, c-format
msgid "Nothing to be done for `%s'."
msgstr "`%s' için hiçbir şey yapılmadı."

#: remake.c:230
#, c-format
msgid "`%s' is up to date."
msgstr "`%s' güncel"

#: remake.c:297
#, c-format
msgid "Pruning file `%s'.\n"
msgstr "Budanmış dosya `%s'.\n"

#: remake.c:349
#, c-format
msgid "%sNo rule to make target `%s'%s"
msgstr "%sHedef `%s' i derlemek için  hiçbir kural yok%s"

#: remake.c:351
#, c-format
msgid "%sNo rule to make target `%s', needed by `%s'%s"
msgstr ""
"%sHedef `%s' i derlemek için  hiçbir kural yok, `%s' tarafından gereksinim "
"duyuluyor%s"

#: remake.c:378
#, c-format
msgid "Considering target file `%s'.\n"
msgstr "hedef dosya `%s' hesaba katılıyor.\n"

#: remake.c:385
#, c-format
msgid "Recently tried and failed to update file `%s'.\n"
msgstr "En son `%s'dosyasının güncellenmesi denendi ve başarısız oldu.\n"

#: remake.c:400
#, c-format
msgid "File `%s' was considered already.\n"
msgstr "`%s' dosyası zaten hesaba katıldı.\n"

#: remake.c:410
#, c-format
msgid "Still updating file `%s'.\n"
msgstr "`%s' dosyası hala güncelleniyor.\n"

#: remake.c:413
#, c-format
msgid "Finished updating file `%s'.\n"
msgstr "`%s' dosyasının güncellenmesi tamamlandı.\n"

#: remake.c:434
#, c-format
msgid "File `%s' does not exist.\n"
msgstr "`%s' dosyası yok.\n"

#: remake.c:441
#, c-format
msgid ""
"*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp"
msgstr ""
"*** Uyarı: .LOW_RESOLUTION_TIME dosyası `%s' yüksek çözünürlüklü bir zaman "
"damgası içeriyor"

#: remake.c:454 remake.c:962
#, c-format
msgid "Found an implicit rule for `%s'.\n"
msgstr "`%s' için bir örtük kural bulundu.\n"

#: remake.c:456 remake.c:964
#, c-format
msgid "No implicit rule found for `%s'.\n"
msgstr "`%s' için bir örtük kural yok.\n"

#: remake.c:462 remake.c:970
#, c-format
msgid "Using default commands for `%s'.\n"
msgstr "`%s' için öntanımlı komutlar kullanılıyor.\n"

#: remake.c:484 remake.c:996
#, c-format
msgid "Circular %s <- %s dependency dropped."
msgstr "Çevrimsel %s <- %s bağımlılığı iptal edildi."

#: remake.c:601
#, c-format
msgid "Finished prerequisites of target file `%s'.\n"
msgstr "`%s' hedef dosyasının önceden gereklilikleri tamamlandı.\n"

#: remake.c:607
#, c-format
msgid "The prerequisites of `%s' are being made.\n"
msgstr "`%s' için önceden gereklilikler derlenmeye devam ediyor.\n"

#: remake.c:620
#, c-format
msgid "Giving up on target file `%s'.\n"
msgstr "`%s' hedef dosyasında umut kesiliyor.\n"

#: remake.c:625
#, c-format
msgid "Target `%s' not remade because of errors."
msgstr "Hedef `%s' hatalardan dolayı yeniden derlenemez."

#: remake.c:677
#, c-format
msgid "Prerequisite `%s' is order-only for target `%s'.\n"
msgstr "Önceden gerekli `%s' hedef `%s' için şart.\n"

#: remake.c:682
#, c-format
msgid "Prerequisite `%s' of target `%s' does not exist.\n"
msgstr "Hedef `%s' in önceden gereklisi `%s' mevcut değil.\n"

#: remake.c:687
#, c-format
msgid "Prerequisite `%s' is newer than target `%s'.\n"
msgstr "Önceden gerekli `%s' hedef `%s' den daha yeni.\n"

#: remake.c:690
#, c-format
msgid "Prerequisite `%s' is older than target `%s'.\n"
msgstr "Önceden gerekli `%s' hedef `%s' den daha eski.\n"

#: remake.c:708
#, c-format
msgid "Target `%s' is double-colon and has no prerequisites.\n"
msgstr "Hedef `%s' çift-sütunlu ve önceden gereklilikler gerektirmiyor.\n"

#: remake.c:715
#, c-format
msgid "No commands for `%s' and no prerequisites actually changed.\n"
msgstr "`%s' için komutlar ve  önceden gerekliliklerde bir değişiklik yok.\n"

#: remake.c:720
#, c-format
msgid "Making `%s' due to always-make flag.\n"
msgstr "Daima derle seçeneğinden dolayı `%s' derleniyor.\n"

#: remake.c:728
#, c-format
msgid "No need to remake target `%s'"
msgstr "Hedef `%s' nin yeniden derlenmesine gerek yok"

#: remake.c:730
#, c-format
msgid "; using VPATH name `%s'"
msgstr "; VPATH ismi `%s' kullanılıyor"

#: remake.c:750
#, c-format
msgid "Must remake target `%s'.\n"
msgstr "Hedef `%s' yeniden derlenmeli.\n"

#: remake.c:756
#, c-format
msgid "  Ignoring VPATH name `%s'.\n"
msgstr " VPATH ismi `%s' yoksayılıyor.\n"

#: remake.c:765
#, c-format
msgid "Commands of `%s' are being run.\n"
msgstr "`%s' nin komutları çalışmaya devam ediyor.\n"

#: remake.c:772
#, c-format
msgid "Failed to remake target file `%s'.\n"
msgstr "Hedef dosya `%s' yeniden derlenirken hata oluştu.\n"

#: remake.c:775
#, c-format
msgid "Successfully remade target file `%s'.\n"
msgstr "Hedef dosya `%s' yeniden derlenmesi başarıyla tamamlandı.\n"

#: remake.c:778
#, c-format
msgid "Target file `%s' needs remade under -q.\n"
msgstr "`%s' hedef dosyasının -q ile yeniden derlenmesi gerekir.\n"

#: remake.c:1306
#, c-format
msgid "Warning: File `%s' has modification time in the future"
msgstr "Uyarı: `%s' dosyası gelecekteki bir değişiklik tarihini içeriyor"

#: remake.c:1313
#, c-format
msgid "Warning: File `%s' has modification time %.2g s in the future"
msgstr "Uyarı: `%s' dosyasının  değişiklik tarihi %.2g s kadar gelecekte"

#: remake.c:1511
#, c-format
msgid ".LIBPATTERNS element `%s' is not a pattern"
msgstr ".LIBPATTERNS elemanı `%s' bir kalıp değil"

#: remote-cstms.c:125
#, c-format
msgid "Customs won't export: %s\n"
msgstr "Özelleştirilmiş olanlar dışarı aktarılmayacak: %s\n"

#: rule.c:548
msgid ""
"\n"
"# Implicit Rules"
msgstr ""
"\n"
"# Örtük Kurallar"

#: rule.c:563
msgid ""
"\n"
"# No implicit rules."
msgstr ""
"\n"
"# Örtük kural yok."

#: rule.c:566
#, c-format
msgid ""
"\n"
"# %u implicit rules, %u"
msgstr ""
"\n"
"# %u örtük kural, %u"

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

#: rule.c:583
#, c-format
msgid "BUG: num_pattern_rules wrong!  %u != %u"
msgstr "YAZILIM HATASI: num_pattern_rules yanlış!  %u != %u"

#: signame.c:85
msgid "unknown signal"
msgstr "bilinmeyen sinyal"

#: signame.c:93
msgid "Hangup"
msgstr "Tıkanma"

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

#: signame.c:99
msgid "Quit"
msgstr "Çık"

#: signame.c:102
msgid "Illegal Instruction"
msgstr "Yönergeler uygun değil"

#: signame.c:105
msgid "Trace/breakpoint trap"
msgstr "İzleme/kesmenoktası yakalayıcı"

#: signame.c:110
msgid "Aborted"
msgstr "İptal edildi"

#: signame.c:113
msgid "IOT trap"
msgstr "IOT tuzağı"

#: signame.c:116
msgid "EMT trap"
msgstr "EMT tuzağı"

#: signame.c:119
msgid "Floating point exception"
msgstr "Gerçek sayı olağandışı durumu"

#: signame.c:122
msgid "Killed"
msgstr "Süreç durduruldu"

#: signame.c:125
msgid "Bus error"
msgstr "Veri yolu hatası"

#: signame.c:128
msgid "Segmentation fault"
msgstr "Parçalama arızası"

#: signame.c:131
msgid "Bad system call"
msgstr "Sistem çağrısı hatalı"

#: signame.c:134
msgid "Broken pipe"
msgstr "Veri alınamıyor"

#: signame.c:137
msgid "Alarm clock"
msgstr "Alarm saati"

#: signame.c:140
msgid "Terminated"
msgstr "Sonlandırıldı"

#: signame.c:143
msgid "User defined signal 1"
msgstr "Kullanıcı tanımlı sinyal 1"

#: signame.c:146
msgid "User defined signal 2"
msgstr "Kullanıcı tanımlı sinyal 2"

#: signame.c:151 signame.c:154
msgid "Child exited"
msgstr "Ast bıraktı"

#: signame.c:157
msgid "Power failure"
msgstr "Güç kesilmesi"

#: signame.c:160
msgid "Stopped"
msgstr "Durduruldu"

#: signame.c:163
msgid "Stopped (tty input)"
msgstr "Durduruldu (konsol girdisi)"

#: signame.c:166
msgid "Stopped (tty output)"
msgstr "Durduruldu (konsol çıktısı)"

#: signame.c:169
msgid "Stopped (signal)"
msgstr "Durduruldu (sinyal)"

#: signame.c:172
msgid "CPU time limit exceeded"
msgstr "CPU zaman sınırı aşıldı"

#: signame.c:175
msgid "File size limit exceeded"
msgstr "Dosya uzunluğu sınırı aşıldı"

#: signame.c:178
msgid "Virtual timer expired"
msgstr "Sanal süreölçer kullanım süresi doldu"

#: signame.c:181
msgid "Profiling timer expired"
msgstr "Tanıtım süreölçer kullanım süresi doldu"

#: signame.c:187
msgid "Window changed"
msgstr "Pencere boyutları değiştirildi"

#: signame.c:190
msgid "Continued"
msgstr "Devam ediliyor"

#: signame.c:193
msgid "Urgent I/O condition"
msgstr "Acil G/Ç koşulu"

#: signame.c:200 signame.c:209
msgid "I/O possible"
msgstr "G/Ç mümkün"

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

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

#: signame.c:212
msgid "Resource lost"
msgstr "Kaynak kaybı"

#: signame.c:215
msgid "Danger signal"
msgstr "Tehlike sinyali"

#: signame.c:218
msgid "Information request"
msgstr "Bilgi isteği"

#: signame.c:221
msgid "Floating point co-processor not available"
msgstr "Aritmetik işlemci kullanılabilir değil"

#: 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 "öntanımlı"

#: variable.c:1372
msgid "environment"
msgstr "çevre"

#: variable.c:1375
msgid "makefile"
msgstr "derleme dosyası"

#: variable.c:1378
msgid "environment under -e"
msgstr "çevre -e altında"

#: variable.c:1381
msgid "command line"
msgstr "komut satırı"

#: variable.c:1384
msgid "`override' directive"
msgstr "`override' yönergesi"

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

#: variable.c:1396
#, c-format
msgid " (from `%s', line %lu)"
msgstr " (`%s'den, satır %lu)"

#: variable.c:1438
msgid "# variable set hash-table stats:\n"
msgstr "# değişken kümesi hash tablosunun durumu:\n"

#: variable.c:1449
msgid ""
"\n"
"# Variables\n"
msgstr ""
"\n"
"# Değişkenler\n"

#: variable.c:1453
#, fuzzy
msgid ""
"\n"
"# Pattern-specific Variable Values"
msgstr ""
"\n"
"# Örneğe duyarlı değişken değeri"

#: variable.c:1467
msgid ""
"\n"
"# No pattern-specific variable values."
msgstr ""
"\n"
"# Örneğe duyarlı değişken değeri yok."

#: variable.c:1469
#, c-format
msgid ""
"\n"
"# %u pattern-specific variable values"
msgstr ""
"\n"
"# %u örneğe duyarlı değişken değeri"

#: variable.h:189
#, c-format
msgid "warning: undefined variable `%.*s'"
msgstr "uyarı: `%.*s' değişkeni atanmamış"

#: vmsfunctions.c:94
#, c-format
msgid "sys$search failed with %d\n"
msgstr "sys$search %d ile başarısız\n"

#: vmsjobs.c:71
#, c-format
msgid "Warning: Empty redirection\n"
msgstr "Uyarı: Boş yönlendirme\n"

#: vmsjobs.c:175
#, c-format
msgid "internal error: `%s' command_state"
msgstr "içsel hata: `%s' command_state"

#: vmsjobs.c:268
#, c-format
msgid "-warning, CTRL-Y will leave sub-process(es) around.\n"
msgstr "-uyarı, CTRL-Y etraftaki alt-süreç(ler)i bıraktıracak.\n"

#: vmsjobs.c:284
#, c-format
msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n"
msgstr ""
"-uyarı, DCL den yönetimi almak için CTRL-Y'yi yeniden "
"etkinleştirebilirsiniz.\n"

#: vmsjobs.c:407
#, c-format
msgid "BUILTIN [%s][%s]\n"
msgstr "OLUŞUMİÇİ [%s][%s]\n"

#: vmsjobs.c:418
#, c-format
msgid "BUILTIN CD %s\n"
msgstr "OLUŞUMİÇİ CD %s\n"

#: vmsjobs.c:436
#, c-format
msgid "BUILTIN RM %s\n"
msgstr "OLUŞUMİÇİ RM %s\n"

#: vmsjobs.c:457
#, c-format
msgid "Unknown builtin command '%s'\n"
msgstr "Oluşumiçi komut '%s' bilinmiyor\n"

#: vmsjobs.c:479
#, c-format
msgid "Error, empty command\n"
msgstr "Hata, boş komut\n"

#: vmsjobs.c:491
#, c-format
msgid "Redirected input from %s\n"
msgstr "%s den yönlendirilmiş girdi\n"

#: vmsjobs.c:498
#, c-format
msgid "Redirected error to %s\n"
msgstr "%s e yönlendirilmiş hata\n"

#: vmsjobs.c:505
#, c-format
msgid "Redirected output to %s\n"
msgstr "%s e yönlendirilmiş çıktı\n"

#: vmsjobs.c:568
#, c-format
msgid "Executing %s instead\n"
msgstr "%s yerine çalıştırılıyor\n"

#: vmsjobs.c:668
#, c-format
msgid "Error spawning, %d\n"
msgstr "doğum hatası, %d\n"

#: vpath.c:571
msgid ""
"\n"
"# VPATH Search Paths\n"
msgstr ""
"\n"
"# VPATH Arama yolu\n"

#: vpath.c:588
msgid "# No `vpath' search paths."
msgstr "# `vpath' arama yolları yok"

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

#: vpath.c:593
msgid ""
"\n"
"# No general (`VPATH' variable) search path."
msgstr ""
"\n"
"# Genel arama yolu (`VPATH' çevre değişkeni) yok."

#: vpath.c:599
msgid ""
"\n"
"# General (`VPATH' variable) search path:\n"
"# "
msgstr ""
"\n"
"# Genel (`VPATH' çevre değişkeni) arama yolu:\n"
"# "

#~ msgid "Syntax error, still inside '\"'\n"
#~ msgstr "Dosyada hala yazılış hatası var: '\"'\n"

#~ msgid "Got a SIGCHLD; %u unreaped children.\n"
#~ msgstr "SIGCHLD sinyali alındı; %u sağlanmamış ast dosya.\n"

#~ msgid "Do not specify -j or --jobs if sh.exe is not available."
#~ msgstr "sh.exe yoksa -j veya --jobs belirtilemez."

#~ msgid "Resetting make for single job mode."
#~ msgstr "Tek iş kipi için make'i başlatma konumuna alıyor"

#~ msgid "no file name for `%sinclude'"
#~ msgstr "`%sinclude' için dosyaismi yok"

#~ msgid "target `%s' leaves prerequisite pattern empty"
#~ msgstr "hedef `%s' önceden gereklilik kalıbını boş bırakıyor"

#~ msgid ""
#~ "\n"
#~ "# No files."
#~ msgstr ""
#~ "\n"
#~ "# Dosyalar yok."

#~ msgid ""
#~ "\n"
#~ "# %u files in %u hash buckets.\n"
#~ msgstr ""
#~ "\n"
#~ "# %u dosya %u hash kümesinde.\n"

#~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n"
#~ msgstr "# her tabloda ortalama %.3f dosya, bir tabloda en çok %u dosya.\n"

#~ msgid "DIRECTORY"
#~ msgstr "DİZİN"

#~ msgid "Change to DIRECTORY before doing anything"
#~ msgstr "Hiç bir şey yapmadan DİZİNe geçer"

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

#~ msgid "Suspend process to allow a debugger to attach"
#~ msgstr "Bir hata ayıklayıcı eklemeye izin vermek için süreci askıya alır"

#~ msgid "Environment variables override makefiles"
#~ msgstr "Çevre değişkenleri makefile'ları geçersiz kılıyor"

#~ msgid "FILE"
#~ msgstr "DOSYA"

#~ msgid "Read FILE as a makefile"
#~ msgstr "DOSYAyı bir makefile olarak okur"

#~ msgid "Search DIRECTORY for included makefiles"
#~ msgstr "İçerilmiş makefile'lar için DİZİNi araştırır"

#~ msgid "Don't start multiple jobs unless load is below N"
#~ msgstr "Yük N'in altında olmadıkça işler başlatılmaz"

#~ msgid "Don't actually run any commands; just print them"
#~ msgstr "Genellikle hiçbir komut çalıştırılmaz; onları basar"

#~ msgid "Consider FILE to be very old and don't remake it"
#~ msgstr "DOSYAnın çok eski olduğunu hesaba katarak yeniden derlemez."

#~ msgid "Don't echo commands"
#~ msgstr "Komutları ekolamaz"

#~ msgid "Turns off -k"
#~ msgstr "-k 'yı kapatır"

#~ msgid "Consider FILE to be infinitely new"
#~ msgstr "DOSYAnın ne kadar yeni olduğundaki belirsizliği hesaba katar."

#~ msgid "Entering"
#~ msgstr "  Dizine girdi:"

#~ msgid "Leaving"
#~ msgstr "Dizini bıraktı:"

#~ msgid "# No variables."
#~ msgstr "# Değişkenker yok"

#~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n"
#~ msgstr "# her tabloda %.1f değişken ortalaması, bir tabloda en çok %u\n"

#~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n"
#~ msgstr "# her tabloda %d.%d değişken ortalaması, bir tabloda en çok %u\n"
